514 11. Animation Systems
11.4.4. A Simple Animation Data Format
Typically, animation data is extracted from a Maya scene fi le by sampling the
pose of the skeleton discretely at a rate of 30 or 60 samples per second. A sam-
ple comprises a full pose for each joint in the skeleton. The poses are usually
stored in SQT format: For each joint j, the scale component is either a single
fl oating-point scalar Sj , or a three-element vector Sj = [ Sjx Sjy Sjz ]. The rotation-
al component is of course a four-element quaternion Qj = [ Qjx Qjy Qjz Qjw ].
And the translational component is a three-element vector Tj = [ Tjx Tjy Tjz ].
We sometimes say that an animation consists of up to 10 channels per joint,
in reference to the 10 components of Sj , Qj , and Tj. This is illustrated in Fig-
ure 11.20.
Figure 11.19. A global clock approach can alleviate animation synchronization problems.
0123456789
Samples
Joint 0
T 0
Q 0
S 0
Joint 1
T 1
Q 1
S 1
...
yxz
yxz
w
yxz
... ...
Figure 11.20. An uncompressed animation clip contains 10 channels of fl oating-point data
per sample, per joint.