summaryrefslogtreecommitdiffstats
path: root/scene
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-09-25 12:39:18 +0200
committerRémi Verschelde <rverschelde@gmail.com>2024-09-25 12:39:18 +0200
commit65c94ec8731914fbadafc9ba2535dd83a00cca14 (patch)
tree4658d38d424fe278db61a469f2cc520fe067d81c /scene
parent95e7e653f2ff31245b6c1e52416579a5f9afc4b9 (diff)
parentdd9525be040518bfbc401f5cb9c3a9fd2f34c442 (diff)
downloadredot-engine-65c94ec8731914fbadafc9ba2535dd83a00cca14.tar.gz
Merge pull request #97290 from fire/fix-animation-compression
Fix animation compression going the wrong way
Diffstat (limited to 'scene')
-rw-r--r--scene/resources/animation.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/scene/resources/animation.cpp b/scene/resources/animation.cpp
index a2ed6af23c..eff0e883de 100644
--- a/scene/resources/animation.cpp
+++ b/scene/resources/animation.cpp
@@ -4804,9 +4804,9 @@ void Animation::compress(uint32_t p_page_size, uint32_t p_fps, float p_split_tol
continue; // This track is exhausted (all keys were added already), don't consider.
}
}
-
- uint32_t key_frame = double(track_get_key_time(uncomp_track, time_tracks[i].key_index)) / frame_len;
-
+ double key_time = track_get_key_time(uncomp_track, time_tracks[i].key_index);
+ double result = key_time / frame_len;
+ uint32_t key_frame = Math::fast_ftoi(result);
if (time_tracks[i].needs_start_frame && key_frame > base_page_frame) {
start_frame = true;
best_frame = base_page_frame;