ソースを参照

Merge pull request #69474 from TokageItLab/fix-animation-cache-signal

Fix animation signal `caches_cleared` firing timing
Rémi Verschelde 2 年 前
コミット
e9b67569f7

+ 2 - 1
scene/animation/animation_player.cpp

@@ -1800,7 +1800,6 @@ double AnimationPlayer::get_current_animation_length() const {
 
 void AnimationPlayer::_animation_changed() {
 	clear_caches();
-	emit_signal(SNAME("caches_cleared"));
 	if (is_playing()) {
 		playback.seeked = true; //need to restart stuff, like audio
 	}
@@ -1839,6 +1838,8 @@ void AnimationPlayer::clear_caches() {
 	cache_update_size = 0;
 	cache_update_prop_size = 0;
 	cache_update_bezier_size = 0;
+
+	emit_signal(SNAME("caches_cleared"));
 }
 
 void AnimationPlayer::set_active(bool p_active) {

+ 0 - 1
scene/animation/animation_tree.cpp

@@ -859,7 +859,6 @@ void AnimationTree::_clear_caches() {
 		memdelete(K.value);
 	}
 	playing_caches.clear();
-
 	track_cache.clear();
 	cache_valid = false;
 }