Animation systems typically represent animation with a relatively
small parameter space. The motion of a limb may be represented
by only two discrete motion points modeled on a Bezier path,
with the vertex motion being interpolated using algorithms
sensitive to the skeletal properties of the animated character.
Hence, animation should lend itself to high levels of compression
since this underlying parameterization implies a great deal of
correlation among vertex data. Indeed, if the underlying
parameterizations were available, an encoder could likely create
highly efficient representations. However, this data is generally
not available for distribution and likely to remain unavailable to
rendering systems for several reasons. Often the animation
systems incorporate modeling techniques that are proprietary in
nature, using algorithms subject to intellectual property
protection. The mechanisms necessary to conversion of
parameterized graphical models to animated meshes are often
complex, particularly in relation to physical modeling systems
such as water, fire, or explosions [7, 8] and online rendering is
neither practical or economical. And, distribution of structural
model data and associated animation parameterization greatly
simplifies unauthorized manipulation of the models, aiding
greatly those who would steal the complex model designs in these
systems for unauthorized derivative works.
Indeed it is likely that distribution will be limited to simple
polygon or triangle meshes, rather than complete hierarchical
scene graphs so as to limit user modifications of sequences.
Hence, this paper assumes the mostly simplistic representation of
the geometric data: a temporal sequence of polygonal meshes for
each discrete frame of the animated sequence. Any polygonal
meshes can be converted into a triangle mesh through
triangulation [9, 20]. The connectivity information is assumed to
remain unchanged for each frame in the animation sequence. A
triangle mesh is represented by its vertex data and connectivity
information. Vertex data consists of coordinates of all the vertices
and, optionally, vertex normal vectors and texture coordinates.
Connectivity information is simply a triangle list. Each triangle
contains indices referring to the vertices. 3D animated geometric
data is normally distributed in the form as shown in Figure 1.