What kind of animation interpolation curve is this

bezier-curveinterpolationpolynomials

I am working on reverse engineering the animation system of a video game. I initially assumed it used a Bezier curve to interpolate between keyframes, but I've since worked out the curve it actually uses is given by
$$
(2t+1)(t-1)^2\cdot{P_1}+t(t-1)^2\cdot{P_2}+(t-1)t^2\cdot{P_3}+(3-2t)t^2\cdot{P_4}
$$

where $P_1$ and $P_4$ are the starting and ending keyframe values, respectively, and $P_2$ and $P_3$ are control points. This feels awfully close to a cubic Bezier curve, but as I understand it, that would be given by
$$
(1-t)^3\cdot{P_1}+t(1-t)^2\cdot{P_2}+(1-t)t^2\cdot{P_3}+t^3\cdot{P_4}
$$

Does the first curve have a name? Is it related to Bezier curves in any way? Is it a Bezier curve in disguise and I just can't see it?

Best Answer

This is an interpolation that specifies the endpoints and the derivatives at the endpoints. P1 and P4 are the initial and final values, while P2 and P3 are the derivatives.

Also, which video game? As it happens, I also came across this interpolation while reverse engineering the animation system of a video game.

Related Question