Unravel Engine C++ Reference
Loading...
Searching...
No Matches
seq_math.h File Reference
#include "seq_common.h"
#include "seq_ease.h"
#include <algorithm>
#include "seq_math.hpp"

Go to the source code of this file.

Namespaces

namespace  seq
 Provides a sequence-based action management system for controlling and scheduling actions.
 

Functions

template<typename T >
auto seq::lerp (const T &start, const T &end, float progress, const ease_t &ease_func=ease::linear) -> T
 Linearly interpolates between two values based on progress.
 
template<typename InType , typename OutType >
auto seq::range_map (const InType &in, const decltype(in)&in_start, const decltype(in)&in_end, const OutType &out_start, const decltype(out_start)&out_end, const ease_t &ease_func=ease::linear) -> OutType
 Maps a value from one range to another range, with optional easing.
 
template<typename T >
auto seq::clamp (const T &value, const T &min, const T &max) -> T
 Clamps a value to lie between a minimum and maximum.
 
auto seq::square (float x, int n) -> float
 Computes the square of a number raised to a power.
 
auto seq::flip (float x) -> float
 Flips a normalized value (1.0 becomes 0.0, 0.0 becomes 1.0).
 
auto seq::mix (float a, float b, float weight, float t) -> float
 Mixes two values based on a weighted progress factor.
 
auto seq::crossfade (float a, float b, float t) -> float
 Creates a crossfade effect between two values based on progress.
 
auto seq::scale (float a, float t) -> float
 Scales a value by a factor.
 
auto seq::reverse_scale (float a, float t) -> float
 Scales a value in reverse by a factor.
 
auto seq::arch (float t) -> float
 Computes an arch effect (parabolic curve) based on progress.