Merge pull request #12898 from RandomShaper/improve-anim-loop

Change AnimationPlayer looping logic
This commit is contained in:
Rémi Verschelde 2017-11-14 12:29:02 +01:00 committed by GitHub
commit bd775aa0bd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -545,7 +545,14 @@ void AnimationPlayer::_animation_process_data(PlaybackData &cd, float p_delta, f
} else {
next_pos = Math::fposmod(next_pos, len);
float looped_next_pos = Math::fposmod(next_pos, len);
if (looped_next_pos == 0 && next_pos != 0) {
// Loop multiples of the length to it, rather than 0
// so state at time=length is previewable in the editor
next_pos = len;
} else {
next_pos = looped_next_pos;
}
}
cd.pos = next_pos;