Weird keyframe interpolation.

Quite a lot of times when I animate, these weird keyframe interpolations happen. It might be because of quaternions likes to take the shortest rotation. Usually adding breakdown keyframes fixes these issues but not all the times so I began to wonder how do animators fight against these issues.

I have no idea if this particular problem is quaternion interpolation but I really need some help with these. I’m using heavily modified Rigify pitchipoy as my rig.

You can see the motion path in that video where you can see the problematic frames. Without adding any breakdown keyframes I can modify frames 15 and 20 to make transition look what I like but when I manage to get that one transition somewhat looking correct then next or previous transition gets all broken and I try to fix that and again some adjacent transition brokes. I highly doubt this is correct way to do this so what I’m doing wrong? And adding breakdown keyframe will still keep this issue.

Rotation mode is set to quaternion on that hand and all quaternion keyframe interpolations are set to linear.


I would have suggested using the euler filter, or checking the rotation order of the hand, but if it uses quaternions… I have no idea what could be causing this. That flipping movement really looks like an interpolation problem… that could be caused by a constraint on the hand, maybe ? Something like a “follow body” constraint ? Is there anything like this ?

This might be totally off-base. But have you checked the graph editor for anything suspicious?

I’ve had similar issues before myself. Although I didn’t know what had caused them in the first place, there was obvious
errors on the curves for the offending bones. Sharp motion like that was easy to spot.

Thanks for your replies,

Hadriscus: I have to check if there is some weird constraint which might cause this issue.

Macser: Nothing weird on graph editor, just linear lines going from keyframe to keyframe. Then it must be somekind of constraint issue, I have to check my rig again.