Foreword |
|
xv | |
Preface |
|
xvii | |
|
|
1 | (30) |
|
|
2 | (2) |
|
The Heritage of Animation |
|
|
4 | (8) |
|
|
4 | (2) |
|
The Early Days of ``Conventional'' Animation |
|
|
6 | (1) |
|
|
7 | (2) |
|
|
9 | (1) |
|
Other Media for Animation |
|
|
9 | (1) |
|
Principles of Computer Animation |
|
|
10 | (2) |
|
|
12 | (9) |
|
Computer Animation Production Tasks |
|
|
15 | (2) |
|
|
17 | (3) |
|
|
20 | (1) |
|
A Brief History of Computer Animation |
|
|
21 | (8) |
|
|
21 | (3) |
|
|
24 | (5) |
|
|
29 | (2) |
|
|
29 | (2) |
|
|
31 | (32) |
|
Spaces and Transformations |
|
|
31 | (20) |
|
|
32 | (4) |
|
Homogeneous Coordinates and the Transformation Matrix |
|
|
36 | (3) |
|
Compounding Transformations: Multiplying Transformation Matrices |
|
|
39 | (1) |
|
|
40 | (2) |
|
Representing an Arbitrary Orientation |
|
|
42 | (3) |
|
Extracting Transformations from a Matrix |
|
|
45 | (1) |
|
Description of Transformations in the Display Pipeline |
|
|
46 | (2) |
|
Round-off Error Considerations |
|
|
48 | (3) |
|
Orientation Representation |
|
|
51 | (10) |
|
Fixed Angle Representation |
|
|
53 | (3) |
|
Euler Angle Representation |
|
|
56 | (1) |
|
|
57 | (1) |
|
|
58 | (3) |
|
|
61 | (2) |
|
|
61 | (2) |
|
Interpolation and Basic Techniques |
|
|
63 | (110) |
|
|
63 | (5) |
|
|
64 | (4) |
|
Controlling the Motion Along a Curve |
|
|
68 | (29) |
|
|
69 | (15) |
|
|
84 | (2) |
|
|
86 | (3) |
|
Constant Acceleration: Parabolic Ease-In/Ease-Out |
|
|
89 | (3) |
|
General Distance-Time Functions |
|
|
92 | (2) |
|
Curve Fitting to Position-Time Pairs |
|
|
94 | (3) |
|
Interpolation of Rotations Represented by Quaternions |
|
|
97 | (5) |
|
|
102 | (14) |
|
|
102 | (6) |
|
|
108 | (6) |
|
Determining a Path along a Surface |
|
|
114 | (2) |
|
|
116 | (4) |
|
|
120 | (4) |
|
Artist-Oriented Animation Languages |
|
|
121 | (1) |
|
|
122 | (1) |
|
|
123 | (1) |
|
Actor-Based Animation Languages |
|
|
123 | (1) |
|
|
124 | (19) |
|
|
125 | (1) |
|
Coordinate Grid Deformation |
|
|
125 | (18) |
|
|
143 | (10) |
|
|
143 | (5) |
|
|
148 | (5) |
|
|
153 | (16) |
|
|
157 | (1) |
|
|
157 | (2) |
|
|
159 | (1) |
|
|
160 | (6) |
|
|
166 | (3) |
|
|
169 | (1) |
|
|
169 | (4) |
|
|
170 | (3) |
|
|
173 | (98) |
|
|
174 | (1) |
|
Hierarchical Kinematic Modeling |
|
|
175 | (28) |
|
Representing Hierarchical Models |
|
|
177 | (7) |
|
|
184 | (1) |
|
|
185 | (7) |
|
|
192 | (11) |
|
|
203 | (1) |
|
|
203 | (28) |
|
|
204 | (12) |
|
|
216 | (15) |
|
Enforcing Soft and Hard Constraints |
|
|
231 | (10) |
|
|
232 | (3) |
|
|
235 | (1) |
|
|
236 | (3) |
|
|
239 | (2) |
|
Controlling Groups of Objects |
|
|
241 | (20) |
|
|
242 | (4) |
|
|
246 | (11) |
|
|
257 | (4) |
|
|
261 | (6) |
|
Basic Implicit Surface Formulation |
|
|
261 | (2) |
|
Animation Using Implicitly Defined Objects |
|
|
263 | (1) |
|
|
264 | (1) |
|
Deforming the Implicit Surface as a Result of Collision |
|
|
265 | (2) |
|
|
267 | (1) |
|
|
267 | (4) |
|
|
268 | (3) |
|
|
271 | (46) |
|
|
272 | (11) |
|
|
273 | (2) |
|
|
275 | (5) |
|
|
280 | (3) |
|
|
283 | (1) |
|
|
283 | (13) |
|
Still Waters and Small-Amplitude Waves |
|
|
284 | (4) |
|
|
288 | (1) |
|
|
289 | (3) |
|
|
292 | (4) |
|
|
296 | (1) |
|
|
296 | (16) |
|
General Approaches to Modeling Gas |
|
|
296 | (2) |
|
Computational Fluid Dynamics |
|
|
298 | (1) |
|
|
299 | (11) |
|
|
310 | (1) |
|
|
311 | (1) |
|
|
312 | (5) |
|
|
312 | (5) |
|
Modeling and Animating Articulated Figures |
|
|
317 | (68) |
|
|
318 | (9) |
|
|
318 | (3) |
|
|
321 | (1) |
|
|
321 | (3) |
|
|
324 | (1) |
|
Reaching Around Obstacles |
|
|
325 | (1) |
|
|
326 | (1) |
|
|
327 | (12) |
|
The Mechanics of Locomotion |
|
|
328 | (5) |
|
The Kinematics of the Walk |
|
|
333 | (3) |
|
Using Dynamics to Help Produce Realistic Motion |
|
|
336 | (2) |
|
|
338 | (1) |
|
|
339 | (1) |
|
|
339 | (14) |
|
|
341 | (1) |
|
|
342 | (3) |
|
|
345 | (2) |
|
Approaches to Animating the Face |
|
|
347 | (6) |
|
Overview of Virtual Human Representation |
|
|
353 | (5) |
|
Representing Body Geometry |
|
|
354 | (2) |
|
Geometry Data Acquisition |
|
|
356 | (1) |
|
|
356 | (1) |
|
|
357 | (1) |
|
|
357 | (1) |
|
|
358 | (1) |
|
Layered Approach to Human Figure Modeling |
|
|
358 | (3) |
|
|
361 | (8) |
|
|
362 | (3) |
|
|
365 | (4) |
|
|
369 | (10) |
|
|
371 | (1) |
|
|
372 | (1) |
|
3D Position Reconstruction |
|
|
373 | (3) |
|
|
376 | (2) |
|
|
378 | (1) |
|
|
378 | (1) |
|
|
379 | (6) |
|
|
379 | (6) |
Appendix A Rendering Issues |
|
385 | (24) |
|
|
385 | (1) |
|
|
386 | (12) |
|
A.2.1 Compositing without Pixel Depth Information |
|
|
389 | (6) |
|
A.2.2 Compositing with Pixel Depth Information |
|
|
395 | (3) |
|
A.3 Displaying Moving Objects: Motion Blur |
|
|
398 | (3) |
|
|
401 | (5) |
|
|
406 | (3) |
|
|
406 | (3) |
Appendix B Background Information and Techniques |
|
409 | (18) |
|
|
409 | (11) |
|
B.1.1 Inverse Matrix and Solving Linear Systems |
|
|
411 | (8) |
|
B.1.2 Singular Value Decomposition |
|
|
419 | (1) |
|
B.2 Geometric Computations |
|
|
420 | (7) |
|
B.2.1 Components of a Vector |
|
|
420 | (1) |
|
|
420 | (1) |
|
B.2.3 Dot Product of Two Vectors |
|
|
420 | (2) |
|
B.2.4 Cross Product of Two Vectors |
|
|
422 | (2) |
|
B.2.5 Vector and Matrix Routines |
|
|
424 | (3) |
B.2.6 Closest Point between Two Lines in Three-Space |
|
427 | (80) |
|
|
428 | (1) |
|
|
429 | (1) |
|
B.2.9 Barycentric Coordinates |
|
|
430 | (1) |
|
B.2.10 Computing Bounding Shapes |
|
|
431 | (16) |
|
|
447 | (6) |
|
B.3.1 Transforming a Point Using Vector-Matrix Multiplication |
|
|
447 | (1) |
|
B.3.2 Transforming a Vector Using Vector-Matrix Multiplication |
|
|
448 | (1) |
|
B.3.3 Axis-Angle Rotations |
|
|
449 | (1) |
|
|
450 | (3) |
|
B.4 Interpolating and Approximating Curves |
|
|
453 | (17) |
|
B.4.1 Equations: Some Basic Terms |
|
|
453 | (1) |
|
B.4.2 Simple Linear Interpolation: Geometric and Algebraic Forms |
|
|
454 | (2) |
|
B.4.3 Parameterization by Arc Length |
|
|
456 | (1) |
|
B.4.4 Computing Derivatives |
|
|
456 | (1) |
|
B.4.5 Hermite Interpolation |
|
|
457 | (1) |
|
|
458 | (3) |
|
|
461 | (1) |
|
|
462 | (1) |
|
B.4.9 Bezier Interpolation/Approximation |
|
|
463 | (1) |
|
B.4.10 De Casteljau Construction of Bezier Curves |
|
|
464 | (1) |
|
B.4.11 Tension, Continuity, and Bias Control |
|
|
465 | (2) |
|
|
467 | (2) |
|
B.4.13 Fitting Curves to a Given Set of Points |
|
|
469 | (1) |
|
|
470 | (6) |
|
|
471 | (3) |
|
|
474 | (1) |
|
B.5.3 Random Number Generator |
|
|
474 | (2) |
|
|
476 | (12) |
|
B.6.1 Position, Velocity, and Acceleration |
|
|
476 | (1) |
|
|
477 | (1) |
|
B.6.3 Newton's Laws of Motion |
|
|
478 | (1) |
|
B.6.4 Inertia and Intertial Reference Frames |
|
|
479 | (1) |
|
|
479 | (1) |
|
|
480 | (1) |
|
B.6.7 Equilibrium: Balancing Forces |
|
|
480 | (1) |
|
|
480 | (1) |
|
|
481 | (1) |
|
|
481 | (2) |
|
|
483 | (1) |
|
B.6.12 Work and Potential Energy |
|
|
484 | (1) |
|
|
484 | (1) |
|
B.6.14 Conservation of Energy |
|
|
484 | (1) |
|
B.6.15 B.6.15 Conservation of Momentum |
|
|
484 | (1) |
|
B.6.16 Oscillatory Motion |
|
|
485 | (1) |
|
|
486 | (1) |
|
|
486 | (1) |
|
|
487 | (1) |
|
B.7 Numerical Integration Techniques |
|
|
488 | (5) |
|
B.7.1 Function Integration |
|
|
488 | (1) |
|
B.7.2 Integrating Ordinary Differential Equations |
|
|
489 | (4) |
|
B.8 Standards for Moving Pictures |
|
|
493 | (9) |
|
B.8.1 In the Beginning, There Was Analog |
|
|
493 | (4) |
|
B.8.2 In the Digital World |
|
|
497 | (5) |
|
|
502 | (5) |
References |
|
507 | (2) |
Index |
|
509 | (20) |
About the Author |
|
529 | |