Page MenuHome

Fix T67274: Graph Editor Normalization broken by Keyframe that uses Easing or Dynamic interpolation
ClosedPublic

Authored by Sebastian Parborg (zeddb) on Jul 29 2019, 5:15 PM.

Details

Summary

We didn't include and of the newer interpolation types in the normalization function.
Besides taking into account these newer types, we now also only evaluate the curves when needed.
If the values between the control points won't exceed the control point values, we only use the start/end values for our normalization

Diff Detail

Event Timeline

Brecht Van Lommel (brecht) requested changes to this revision.Jul 30 2019, 1:32 AM

Seems fine overall.

source/blender/editors/animation/anim_draw.c
444

I think this should be bezt->vec[1][0] - prev_bezt->vec[1][0] rather than length? Since it's used only for stepping through the time.

This revision now requires changes to proceed.Jul 30 2019, 1:32 AM
source/blender/editors/animation/anim_draw.c
444

I was thinking that it would be good to have this if we are on a very steep incline. Now it is not perfect, but it should make the max/min a bit more stable if you are in "elastic mode" with a steep incline.

But I will of course change it to only work in 1D space if you like.

Updated the length calc to be correct (sorry)!

Brecht Van Lommel (brecht) requested changes to this revision.Jul 30 2019, 10:48 AM
Brecht Van Lommel (brecht) added inline comments.
source/blender/editors/animation/anim_draw.c
444

Missing ()

This revision now requires changes to proceed.Jul 30 2019, 10:48 AM
This revision is now accepted and ready to land.Jul 30 2019, 12:20 PM
Sebastian Parborg (zeddb) marked an inline comment as done.Jul 30 2019, 12:20 PM
Sebastian Parborg (zeddb) added inline comments.
source/blender/editors/animation/anim_draw.c
444

Gah, I just copy pasted what you wrote and didn't think it through :/
Thanks for catching this.