Graphics Reference
In-Depth Information
variable name: A
value
0
5
10
15
20
25
30
35
40
45
50
frames
FIGURE 4.1
Sample interface for specifying interpolation of key values and tangents at segment boundaries.
with which the animator can specify the key values and can control the interpolation curve by manip-
ulating tangents or interior control points. For example, see Figure 4.1 . Early three-dimensional key-
frame systems include TWIXT [ 15 ] and BBOP [ 33 ] .
Because these animation systems keep the hand-drawn strategy of interpolating two-dimensional
shapes, the basic operation is that of interpolating one (possibly closed) curve into another (possibly
closed) curve. The interpolation is straightforward if the correspondence between lines in the frames is
known in enough detail so that each pair of lines can be interpolated on a point-by-point basis to pro-
duce lines in the intermediate frames. This interpolation requires that for each pair of curves in the key
frames the curves have the same number of points and that for each curve, whether open or closed, the
correspondence between the points can be established.
Of course, the simplest way to interpolate the points is using linear interpolation between each pair
of keys. For example, see Figure 4.2 . Moving in arcs and allowing for ease-in/ease-out can be accom-
modated by applying any of the interpolation techniques discussed in Appendix B.5 , providing that a
point can be identified over several key frames.
Point-by-point correspondence information is usually not known, and even if it is, the resulting
interpolation is not necessarily what the user wants. The best one can expect is for the curve-to-curve
correspondence to be given. The problem is, given two arbitrary curves in key frames, to interpolate a
curve as it “should” appear in intermediate frames. For example, observe the egg splatting against the
wall in Figure 4.3 .
For illustrative purposes, consider the simple case in which the key frames f 1 and f 2 consist of a
single curve ( Figure 4.4 ) . The curve in frame f 1 is referred to as
P
( u ), and the curve in frame f 2is
referred to as
( v ). This single curve must be interpolated for each frame between the key frames
in which it is defined. In order to simplify the discussion, but without loss of generality, it is assumed
that the curve, while it may wiggle some, is a generally vertical line in both key frames.
Some basic assumptions are used about what constitutes reasonable interpolation, such as the fact
that if the curve is a single continuous open segment in frames f 1 and f 2, then it should remain a single
continuous open segment in all the intermediate frames. Also assumed is that the top point of P ,
Q
P
(0),
should interpolate to the top point in Q ,
Q
(0), and, similarly, the bottom points should interpolate. How-
ever, what happens at intermediate points along the curve is so far left undefined (other than for the
obvious assumption that the entire curve P should interpolate to the entire curve Q ; that is, the mapping
should be one-to-one and onto, also known as a bijection ).
 
Search WWH ::




Custom Search