You are on page 1of 76


Rmi Ronfard, Animation, M2R MOSIG

Principles of animation
Keyframe interpolation
Rigging, skinning and walking


~1930, Studios Disney

The Illusion of Life


John Lasseter, Pixar, San Rafael, California

1 Squash & Stretch


1 Squash & stretch

2 Timing

2 Timing

3 Anticipation

Anticipation example

4 Staging

Present the idea so that it is unmistakably clear


5 Straight-ahead & pose to pose action


6 Follow-through et Overlapping


7 Slow in & Slow out

8 Arcs

9 Exaggeration


10 Secondary actions

11 Appeal

12 Personality


1. Abel Image Research, 953 N. Highland Ave., Los Angeles, CA 90038-2481

2. Alias Research Inc., 110 Richmond St. East, Suite 500, Toronto, Ontario, Canada m5c- lpl
3. Blair, Preston, Animation, Walter T. Foster, Santa Ana CA, 1949.
4. Burmyk, Nester and Wein, Marceli, "Computer Generated Keyframe Animation," Journal of
the SMVrE 80, pp.149-153, March 1971.
5. Burtnyk, Nester and Wein, Marceli, "Interactive Skeleton Techniques for Enhanced Motion
Dynamics in Key Frame Animation,"
Communications of the ACM 19 (10), pp 564-569, October, 1976.
6. Catmull, Edwin, "A System for Computer Generated Movies, Proceedings ACM Annual
Conference, pp. 422-431, August 1972.
7. Catmull, Edwin, "The problems of Computer- Assisted Animation, SIGGRAPH '78, Computer
Graphics, Vol. 12, No. 3, pp. 348-353, August 1978.
8. Cook, Robert L., "Stochastic Sampling in Computer Graphics," ACM Transactions on Graphics,
Vol. 5, No. 1, pp. 51-72, January 1986.


9. Cook, Robert L., Porter, Thomas, and Carpenter, Loren, "Distributed Ray Tracing," SIGGRAPH
'84, Computer Graphics, Vol. 18, No. 3, pp.137-145, July, 1984.
10. Walt Disney Productions, Three Little Pigs, (film), 1933.
11. Gracer, F., and Blagen, M. W., "Karma" A System for Storyboard Animation," Procee.ding
Ninth Annual UAIDE Meeting, pp. 210-255, 1970.
12. Graham, Don, The Art of Animation, unpublished.
13. Graham, Don, transcripts of action analysis class at the Walt Disney Studio, June 21, 1937.
14. Graham, Don, transcripts of action analysis class with Bill Tytla at the Walt Disney Studio,
June 28, 1937.
15. Hardtke, lnes, and Bartels, Richard, "Kinetics for Key-Frame Interpolation," unpublished.
16. Kochanek, Doris, and Barrels, Richard, "Interpolating Splines with Local Tension, Continuity,
and Bias Control," SIGGRAPH '84, Computer Graphics, Vol. 18, No. 3, pp. 33-41, July, 1984.


17. Levoy, Marc, "A Color Animation System Based on the Multi-PlaneTechnique," SIGGRAPH
'77, Computer Graphics, Vol. 11, No. 2, pp. 64-71, July, 1977.
18. Lucasfilm Ltd. Computer Graphics Div., The Adventures of Andre and Wally B., (fdm), 1984.
19. Ostby, Eben, Duff, Tom, and Reeves, William, Md (motion doctor), animation program,
Lucasfilm Ltd., 1982-1986.
20. Perine, Robert, Chouinard, An Art Vision Betrayed , Artra Publishing, Encinitas CA, 1985.
21. Pixar, Luxo Jr., (film), 1986.
22. Reeves, William, "Inbetweening for Computer Animation Utilizing Moving Point Constraints,"
SIGGRAPH '81, Computer Graphics, Vol. 5, NO. 3, pp. 263-270, August 1981.
23. Rydstrom, Gary, Soundtraek for Luxo Jr., Sprocket Systems Div., ucasfilm Ltd., July, 1986.
24. Stem, Garland, "Bboop--A System for 3D Keyframe Figure Animation," Tutorial Notes:
Introduction to Computer Animation , SIGGRAPH '83, July 1983.


25. Symbolics Inc., 1401 Westwood Blvd., Los Angeles, CA 90024

26. Thomas, Frank and Johnston, Ollie, Disney Animation-- The Illusion of Life,
Abbeville Press, New York, 1981.
27. Thomas, Frank, "Can Classic Disney Animation Be Duplicated O The
Computer?" Computer Pictures, Vol. 2, Issue 4, pp. 20-26, luly/August 1984.
28. Vertigo Systems International Inc., 119 W. Pender St., Suite 221,
Vancouver, BC, Canada v6b ls5
29. Wavefront Technologies, 530 East Montecito, Santa Barbara, CA 93101
30. Whitakcr, Harold and Halas, John, Timing for Animation , Focal Press,
London, 1981.
31. White, Tony, The Animator's Workbook, Watson-Gupfill, New York,

Interpolation of translation

Hermite polynomials

Catmull-Rom splines

Timing curves

Bezier curves, B-splines and NURBS

Bezier: Piece-wise
polynomials with
tangent continuity
B-splines: control
points, arcs and curves
NURBS: piece-wise
rational curves, i.e.
projective splines in
projective coordinates

Three-dimensional interpolation

Interpolation of rotations

Cannot interpolate matrices

Compute R = R1T R2
Compute axis and angle
Interpolate angles

Quaternion interpolation

Quaternion interpolation

Spherical interpolation
SLERP : Interpolation on the sphere of unit quaternions
LERP : Linear interpolation then normalization
US patent by Budge (2007): Fast approximation to
the spherical linear interpolation function

Equivalence between Euler angles and quaternions

Rigid motion interpolation

Screw Theory : we can represent any movement of a solid

body by a single operation which combines both the
rotation and the translation.

Plucker coordinates.
As Dual Quaternions.
Using Motor Theory based on Clifford Algebra.

about this in Class 2.

Slow-in and slow-out

Camera interpolation
3 translations (dollies)
3 rotations : pan left/
right, up/do
Field of view is controlled
by zoom = focal length

Camera interpolation

Screen motion is the

composition of
camera and actor
Coordinate camera
and actors

Rigging and skinning

How do we apply kinematics and dynamics to character

Skeleton/armature and kinematics
Skin and flesh: skinning, smooth skinning, muscles, fat, wrinkles
Clothing : particle systems, finite elements

Animation and interpolation

Keyframe animation
How to interpolate
motion between keyframes

Articulated motion

Articulated motion

Articulated and rigid motion

Motion of body part is rigid


the parents frame

In the word frame

Rigid motion can be represented as a 3 x 4 matrix

We have a structure of bones, organized as a
kinematic tree
Problem : how do we animation the skin of
characters given the motion of their bones ?
Rigid skinning : each body part is modeled as a
rigid body


Tf P0(vi) where T is the bone transformation

Smooth skinning

Also known as Skeleton Subspace Deformation

Skin vertices move as a result of several body part motions

(sum_f wif Tf )P0(vi)

Normalized weights : sum_f wif = 1)
Vertex weights can be computed automatically
For example wif = 1/dif2

Or weights can be drawn by painting the skin

Interpolation of matrices

Transformation matrix Tf = [SR|t] with 12 parameters

Non independent
3 translations, 3 rotations, 3 re-scalings
Better to control them separately
Automatic weight computation
Wang et Philips, Multi-weight enveloping: least-squares
approximation techniques for skin animation, SCA 2002

Bone Heat Weighting

Automatic Rigging and Animation of 3D Characters

Ilya Baran and Jovan Popovic, SIGGRAPH 2007.


Quaternion interpolation

Skinning with Dual Quaternions

Ladislav Kavan, Steven Collins, Jiri Zara, Carol O'Sullivan.
Symposium on Interactive 3D Graphics and Games, 2007.

Cage deformations

Build a cage around bones (armatures)

Case study : anima.on of walking

Walking cycle

Finite State Machine


The walk usually starts with the feet at the extended posi.on
where the feet are furthest apart. This is the point where
the characters weight shiBs to the forward foot.


As the weight of the body is transferred to the

forward foot, the knee bends to absorb the shock.
This is called the recoil posi.on, and is the lowest
point in the walk.


This is halfway through the rst step. As the character moves forward, the
knee straightens out and liBs the body its highest point. This is called the
passing posi.on because this is where the free foot passes the

High point

As the character moves forward, the weight-bearing foot liBs o the

ground at the heel, transmiMng the force at the ball of the foot. This
is where the body starts to fall forward. The free foot swings forward
like a pendulum to catch the ground.


The free leg makes contact. This is exactly half the cycle.
The second half is an exact mirror of the rst. If it diers,
the character may appear to limp.

Foot placement and synchronisa.on

From footprints to anima.on

From footprints to anima.on

From footprints to anima.on


High-level control

Walking style

Combined direct and inverse


using available data on human walk
correct constraint viola.ons using inverse

Advantage: data may model a realis.c gait

Controling and the walk cycle

Coach-trainee metaphor
Can also be used to learn walking styles


Principles of animation
Keyframe interpolation
Rigging, skinning and walking
Next: Forward and inverse kinematics