Keywords: Interpolation, Quaternion, pipeline
This is the Chapter4 ReadingNotes from book Computer Animation_ Algorithms and Techniques_ Parent-Elsevier (2012).
Key-frame systems
It is common for such systems to provide an interactive interface with which the animator can specify the key values and can control the interpolation curve by manipulating tangents or interior control points.
How to interpolate shapes(curves) between key frames?
If both curves were generated with the same type of interpolation information, for example, each is a single, cubic Bezier curve, then intermediate curves could be generated by interpolating the control points and reapplying the Bezier interpolation.
Another alternative would be to use interpolating functions to generate the same number of points on both curves. These points could then be interpolated on a point-by-point basis.
Although these interpolations get the job done, they might not provide sufficient
control to a user who has specific ideas about how the intermediate curves should look.
Animation languages
Artist-oriented animation languages
The simple animation language are following examples are from ANIMA II:
1 | set position<name><x><y><z>at frame<number> |
Full-featured programming languages for animation
One example of such a system is AutoDesk’s Maya. The scripting language is called MEL and there is an associated animation language whose scripts are referred to as expressions [36].
During the first frame, translation values for the objects are initialized.
For each subsequent frame, two of the sphere’s translation values are set as a function of the frame number and the z-rotation of slab is set as a function of the sphere’s z-translation value.
1 | if (frame == 1) { |
Articulation variables
Then a script, or other type of animation system, when it needs a value of the variable in its computation, passes the time variable to the function, which returns its value for that time to the computation. This technique goes by a variety of names, such as track, channel, or articulation variable.
Graphical languages
Actor-based animation languages
Actor-based languages are an object-oriented approach to animation in which an actor (encapsulated model [24]) is a graphical object with its associated data and procedures, including geometric description, display attributes, and motion control.