diff options
author | omnisci3nce <omniscient.oce@gmail.com> | 2024-07-12 12:47:07 +1000 |
---|---|---|
committer | omnisci3nce <omniscient.oce@gmail.com> | 2024-07-12 12:47:07 +1000 |
commit | f74cf52946f4e569a26bc81105537b40be95c2c7 (patch) | |
tree | 1d000367350d0e28eb7cfbc800286a0ed30a4e6c /src/animation.c | |
parent | fedba7ff68924ff50022405fc9103a5acf7013fe (diff) |
wip: big makeover
Diffstat (limited to 'src/animation.c')
-rw-r--r-- | src/animation.c | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/src/animation.c b/src/animation.c index 7a79529..1c5d893 100644 --- a/src/animation.c +++ b/src/animation.c @@ -2,37 +2,37 @@ #include "log.h" #include "maths.h" -keyframe animation_sample(animation_sampler *sampler, f32 t) { - size_t previous_index = 0; - f32 previous_time = 0.0; - // look forwards - // DEBUG("%d\n", sampler->animation.values.kind); - TRACE("Total timestamps %d", sampler->animation.n_timestamps); - for (u32 i = 0; i < sampler->animation.n_timestamps; i++) { - f32 current_time = sampler->animation.timestamps[i]; - if (current_time > t) { - break; - } - previous_time = sampler->animation.timestamps[i]; - previous_index = i; - } +// keyframe animation_sample(animation_sampler *sampler, f32 t) { +// size_t previous_index = 0; +// f32 previous_time = 0.0; +// // look forwards +// // DEBUG("%d\n", sampler->animation.values.kind); +// TRACE("Total timestamps %d", sampler->animation.n_timestamps); +// for (u32 i = 0; i < sampler->animation.n_timestamps; i++) { +// f32 current_time = sampler->animation.timestamps[i]; +// if (current_time > t) { +// break; +// } +// previous_time = sampler->animation.timestamps[i]; +// previous_index = i; +// } - size_t next_index = (previous_index + 1) % sampler->animation.n_timestamps; - f32 next_time = sampler->animation.timestamps[next_index]; - printf("%d %f %d %f\n", previous_index, previous_time, next_index, next_time); +// size_t next_index = (previous_index + 1) % sampler->animation.n_timestamps; +// f32 next_time = sampler->animation.timestamps[next_index]; +// printf("%d %f %d %f\n", previous_index, previous_time, next_index, next_time); - keyframe prev_value = sampler->animation.values.values[previous_index]; - keyframe next_value = sampler->animation.values.values[next_index]; +// keyframe prev_value = sampler->animation.values.values[previous_index]; +// keyframe next_value = sampler->animation.values.values[next_index]; - printf("%d %d\n", previous_index, next_index); +// printf("%d %d\n", previous_index, next_index); - f32 time_diff = - sampler->animation.timestamps[next_index] - sampler->animation.timestamps[previous_index]; - f32 percent = (t - previous_time) / time_diff; +// f32 time_diff = +// sampler->animation.timestamps[next_index] - sampler->animation.timestamps[previous_index]; +// f32 percent = (t - previous_time) / time_diff; - quat interpolated_rot = - quat_slerp(sampler->animation.values.values[previous_index].rotation, - sampler->animation.values.values[next_index].rotation, percent); +// quat interpolated_rot = +// quat_slerp(sampler->animation.values.values[previous_index].rotation, +// sampler->animation.values.values[next_index].rotation, percent); - return (keyframe){ .rotation = interpolated_rot }; -}
\ No newline at end of file +// return (keyframe){ .rotation = interpolated_rot }; +// } |