Rotations
- Animation by repeated rotation are hard to manage: how to represent and reason about?
- Axis-Angle
- good for single rotations
- hard to reason about when combined
- Euler angle
- good standard terminology: yaw, pitch, roll
- easy to combine and understand

- bad because order matters, so must decide prescribed order
- bad because leads to gimbal lock, cannot specify certain rotations
- From GameDev.net's rotations FAQ:
Because the final rotation matrix depends on the order of
multiplication, it is sometimes the case that the rotation in one
axis will be mapped onto another rotation axis. Even worse, it may
become impossible to rotate an object in a desired axis. This is
called Gimbal lock. For example, assume that an object is being
rotated in the order Z,Y,X and that the rotation in the Y-axis is 90
degrees. In this case, rotation in the Z-axis is performed first and
therefore correctly. The Y-axis is also rotated correctly. However,
after rotation in the Y axis, the X-axis is rotated onto the Z-axis.
Thus, any rotation in the X-axis actually rotates the object in the
Z-axis. Even worse, it becomes to rotate the object in the X-axis.
- Quaternions
- History
- Invented in 1843 by Sir William Hamilton
- Reinterpreted for computer graphics in 1985 by Ken Shoemake
- Extends complex numbers from 2D to 3D
- Provides a continuous space to represent rotations, thus avoiding problems inherent in other rotation models

- Provides standard interpolation from one arbitrary rotation to another

References
Feedback?