-
-
Notifications
You must be signed in to change notification settings - Fork 21.2k
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 Deterministic blending with Dominant/Recessive doesn't have initial value even if there is no Discrete track #92126
Conversation
8401fac
to
31669b4
Compare
7edbb55
to
17a20e8
Compare
I was organizing the documentation on Discrete mode, and since the #89389 was invading the role of the Deterministic option and generating confusion, I have reorganized the behavior.
|
e211abf
to
a827eb2
Compare
Adding the I remember conversing with reduz a bit about this at the beginning of 4.0, but the problem with #92127 in the first place is that the reset animation does not play when the blend amount is 0. The workaround is to either apply the reset animation even if the blend amount is 0, or to use a flag to apply the reset animation only once. This PR will use the former for However, that init flag may not be very stable, since it changes depending on the timing of cache deletion in the absence of Continuous tracks. If real stability is needed, the timing of applying the Discrete value itself would need to be changed, but at this stage that change is too large. |
a827eb2
to
1b3d8be
Compare
1b3d8be
to
3fde32a
Compare
Now I make Recessive the default due to reevaluating the overall behavior. In the past, we changed it once in #88492 because there was a problem with the Reset track taking precedence, but this should not be a problem now, and Recessive should be a better default because it does not have the flicker that can occur with Dominant, and it gives the same results as 3.x. In there are two animations: continuous_and_discrete.mp4Force Continuous: force_continuous.mp4Dominant: dominant.mp4Recessive: recessive.mp4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're not able to do a good review. We trust Tokage.
I would like to include this in beta1 as this changes the default value, also consider the consistency with the blog post godotengine/godot-website#851. |
Thanks! |
Follow up #89389. Fixes #92127.
I listed the behaviors, some of which were problematic:
Indeed, the Reset track can be Discrete, but if there is no Discrete track in the other animations, it should be considered Continuous. This causes problems in Deterministic blending, where the results may be inconsistent as #92127.
With this PR, the Dominant/Recessive mode will first check for the presence of a Reset track, and if there is none, it will check for the presence of blended Discrete track. So the list will be: