public static Vector3 GetAngularVelocity(Quaternion start, Quaternion end, float dt)
{
//Compute the relative orientation R' between R and the target relative orientation.
Quaternion errorOrientation;
Quaternion.Conjugate(ref start, out errorOrientation);
Quaternion.Multiply(ref end, ref errorOrientation, out errorOrientation);
Vector3 axis;
float angle;
//Turn this into an axis-angle representation.
Toolbox.GetAxisAngleFromQuaternion(ref errorOrientation, out axis, out angle);
Vector3.Multiply(ref axis, angle / dt, out axis);
return axis;
}