Nonlinear animation transitions

So as you can see, by just stopping and playing animations with the default (.100000001 seconds) fade time, Roblox uses this NASTY LINEAR transition (NOT EVEN second degree smooth!!)
Are there any ways to transition between animations with other easing styles? What about through custom easing style equations? Perhaps something hacky with animation weights?

I want to stick to the Roblox animation system as opposed to making my own custom system though because the game will probably already be laggy enough xd

Thanks

1 Like

Within an animation, you have the option of different easing curves on each keyframe (the PoseEasingStyle enum) of which Cubic is generally the most useful. The cubic in-out curve is a cubic approximation of a cosine, typically using 3x^2 - 2x^3. Using the fadeTime of Play() or AdjustWeight() is unfortunately always linear, so it’s better to do the easing yourself as part of the start of the animation. The built-in lerp is really only good for quick cross-fading between already-similar loops, like a walk cycle and run cycle, not for hard starts and stops where you’ll notice the inertia-less behavior of it.

5 Likes