-
-
Notifications
You must be signed in to change notification settings - Fork 21.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix seeking Animation immediately after playback for Discrete track #92861
Fix seeking Animation immediately after playback for Discrete track #92861
Conversation
It does not fix #92840 |
Oh, it may not be essentially a Discrete issue. I recall a problem being reported somewhere earlier where the beginning of the animation was processed when playing backwards from a position beyond the length of the animation. At least for the Discrete playback issue, this PR will fix that. |
52987a2
to
d6c0b57
Compare
@KoBeWi Okay, I see the problem, #92840 is not only in backward, but also in normal playback, where the RESET track is being played instead of the first frame if there is no key there. This is the intended behavior for deterministic, but if deterministic is disabled, the intended behavior should be to do nothing. I added a fix for that. When Deterministic is enabled, RESET may not occur depending on the way the backward playback, but this is a problem that depends on the behavior of the Discrete key by seeking and the deletion of the cache by stopping, well, the complex combination of the Discrete key and Deterministic is considered to be a rare case so I assume it is okay for now. |
Ok now it's fixed. I forgot to mention that my original issue occurred without RESET animation, but it doesn't seem to make difference. |
d6c0b57
to
fd69877
Compare
I also added a fix for the regression of the backwards seek (mainly for editor), which seems to have been occurred in dev5. I feel that the other track types should be fixed as well, but if we do that, we need to handle all the events between seeks as mentioned in #92805 (comment). Although for Discrete, this is not necessary since it will be overriding only one property. |
fd69877
to
9e6afe8
Compare
9e6afe8
to
59916f7
Compare
65dc678
to
6c09dda
Compare
6c09dda
to
bea47d8
Compare
Thanks! |
Reorganized #92126. Also, I believe the #92840 problem is mainly related to the editor. The seek(0) by stop() was processed incorrectly and the negative value for reverse playback was not propagated to the AnimationMixer on the first frame immediately after playback.