Quaternion.
Quaternion is a 4 dimensional vector that is used to represent a rotation. It mainly exists to perform SLERP (spherical-linear interpolation) between two rotations. Multiplying quaternions also cheaply reproduces rotation sequences. However quaternions need to be often renormalized, or else they suffer from precision issues.
Returns a quaternion that will rotate around the given axis by the specified angle. The axis must be a normalized vector.
Returns the rotation matrix corresponding to the given quaternion.
Returns the dot product of two quaternions.
Returns the inverse of the quaternion.
Returns whether the quaternion is normalized or not.
Returns the length of the quaternion.
Returns the length of the quaternion, squared.
Returns a copy of the quaternion, normalized to unit length.
Perform a spherical-linear interpolation with another quaternion.