Game Development Reference
In-Depth Information
tary motions. Thus, when only using, for example, the rotation component of the
bone geometric transformation, a binary mask indicates that the other compo-
nents are not involved. In order to deform a muscle only by translating a control
point, a binary mask has to specify that weight factors and basis functions are
not used. Since the animation system does not systematically use all of the
elements of the transformations associated with bones and muscles, this
approach produces a very compact representation of the animation stream.
Moreover, the compactness of the animation stream can still be improved when
dealing with rotations. During the animation, the rotation of a bone with respect
to its parent is a typically used technique. In the definition of the bone node, the
rotation is represented as a quaternion. However, many motion editing systems
use the rotation decomposition with respect to the Euler's angles. In practice,
when less than three angles describe a joint transformation due to the nature of
the joint, a Euler's angle-based representation is more appropriate. Thus, to get
a more compact animation stream, a rotation is represented, in the animation
resource, as Euler's angles-based decomposition.
In Craig (1989), it is shown that there are 24 different ways to specify a rotation
by using a triplet of angles. By introducing a parameter characterizing the 24
possible combinations of the Euler's angles, Shoemake (1994) demonstrates that
there is a one-to-one mapping between the quaternion (or rotation matrix)
representation and the pair given by the Euler's angles and the introduced
parameter. In order to take this into account, a parameter called rotationOrder
has been introduced into the bone node.
For the rest of the bone transformation components (translation, scale, etc.), the
representation in the animation resource is identical to the representation in the
nodes.
Temporal frame interpolation
The issue of temporal frame interpolation has been often addressed in the
computer animation literature (Foley, 1992; O'Rourke, 1998). From simple linear
interpolation, appropriate for translations, to more complex schemes based on
high-degree polynomials, or quaternions, which take orientation into account, a
large number of techniques are available. The advantages and the disadvantages
of each one are well known. Many of these techniques are supported by most
of the current animation software packages. Temporal frame interpolation is
intensively used to perform animation from textual description or from interac-
tive authoring. One in order to reduce the size of the transmitted data ,and the
second to ease authoring, it is allowed to specify the animation parameters for
the key-frames and not only frame-by-frame. However, in order to ensure the
Search WWH ::




Custom Search