31 #include "../../Core/Math/cl_math.h"
37 template<
typename Type>
60 index = binary_search(timestamp);
66 return clamp((timestamp - start) / (end - start), 0.0f, 1.0f);
72 size_t binary_search(
float timestamp)
const
78 size_t imid = imin + (imax - imin) / 2;
95 float t = find_animation_indices(timestamp, index, index2);
102 size_t index, index2;
103 float t = find_animation_indices(timestamp, index, index2);
104 return values[index];
float find_animation_indices(float timestamp, size_t &index, size_t &index2) const
Definition: model_data_animation_timeline.h:51
A min(A a, B b)
Definition: cl_math.h:51
Type get_value(float timestamp) const
Definition: model_data_animation_timeline.h:44
std::vector< float > timestamps
Definition: model_data_animation_timeline.h:41
static Quaternionx< float > lerp(const Quaternionx< float > &quaternion_initial, const Quaternionx< float > &quaternion_final, floatlerp_time)
Linear Quaternion Interpolation.
Quaternion - Float.
Definition: quaternion.h:188
A list of time stamps and the values to be used for each.
Definition: model_data_animation_timeline.h:38
4D matrix
Definition: mat2.h:52
A mix(A a, B b, C mix)
Definition: cl_math.h:97
std::vector< Type > values
Definition: model_data_animation_timeline.h:42
C clamp(A val, B minval, C maxval)
Definition: cl_math.h:91