Quaternions

Quaternion Rotation Output from RBF Solvers
Feb 21, 2020 Maya Rigging Python C++ Maya API RBF Quaternions
In my previous post, I described how driving an RBF solver with quaternion values for rotational inputs is more reliable than driving with euler inputs. In this post, I will describe a method to output rotational values from an RBF solver. As described in my last post, euler rotations suffer from gimbal lock and multiple solutions to the same rotation. If we were to solve directly to these euler angles, we would see a lot of undesirable flipping depending on the sample inputs.

Quaternion Rotation Input to RBF Solvers
Feb 3, 2020 Maya Rigging Python C++ Maya API RBF Quaternions
In my previous post, I described how to create an RBF solver using regularized linear regression. While the solver works well for most independent input values, it does not work so well if we want to drive it with euler rotations. Euler rotations are susceptible to gimbal lock and can have multiple solutions for the same rotation. These two joints look like they have the same rotation. But looking at their animation curves tells a different story: