4.2. Vectors and Quaternions

Vectors and quaternions are essential elements in the internal calculations of the Cal3D library. The translation of bones, the position of mesh vertices and the orientation of mesh normals are all stored as a vector. Quaternions are used whenever a rotation needs to be represented, such as at a joint. They have some big advantages over rotation matrices in regard to interpolation and memory usage. This is the reason why you will not find any matrices in the Cal3D library. If you ever need these rotations in a matrix representation, you can easily convert the quaternions though.

In-depth information about vectors, quaternions and matrices in 3d graphics can be found all over the web.