Last modified: 16:11 Mar 23, 1999

This is a list of the reading materials for CS838, Computer Animation. They are not in the order that we will cover them. To see what is to be read for when, look at the syllabus.

At this point, I've only placed the readings for the first twelve lectures, and a few of the later readings as I've come across them.

I've made some markings on some of the papers:

**REQUIRED** - means that this
paper is required reading for a lecture in the course.

**SEMINAL** - means that this
paper is an important work in computer animation, and its important
that you are familiar with it if you want to work in the field.
Sometimes its because the paper is historically significant, or just
because its the paper that everyone else has read.

I have prepared a reader of many of the required papers for this course. The reader will be available down in the DOIT Tech store in the lobby of the CS building. Because of copyright restrictions, I cannot include things that are in some journals, books, or web things. Also, some things I think are sufficient to read off the screen.

The included papers for reader #1:

- Lasseter. Principles of Traditional Animation...
- Hodgins and O'Brien. Computer Animation.
- Catmull. A System for Computer Generated Movies.
- Catmull. Problems in Computer Assisted Animation.
- Shoemake. Animating Rotation with Quaternion Curves.
- Shoemake. Quaternions.
- Grassia. A Practical Formulation of the Exponential Map...
- Maciejewski. Dealing with the Ill-Conditioned Equations of Motion for Articulated Figures.
- Zhao and Badler. Inverse Kinematics Positioning Using Nonlinear Programming for Highly Articulated Figures.
- Witkin and Baraff's Physics Notes Chapters (Differential Equation Basics), 2 (Particle System Dynamics), and 3 (Constrained Dynamics)
- Gleicher. A Differential Approach to Graphical Interaction (chapters 3,4 and 5)
- Reeves. Particle Systems...
- Miller. Motion Dynamics of Snakes and Worms.
- Witkin, Fleischer, Barr. Energy Constraints ...
- Witkin, Gleicher, Welch. Interactive Dynamics.
- Witkin and Welch. Fast Animation and Control ...
- Issacs and Cohen.Controlling Dynamic Simulation ...

- Hodgins, J. and O'Brien, J. Computer
Animation. To appear in The Encyclopedia of Computer
Science.
**REQUIRED** - A brief summary of the entire field in 5 pages or less. I'm
assigning this since its a quick way to get a lot of the buzwords
down.

In acrobat format online. - Tannenbaum, D. Why Files: Computer Animation. On-line.
- "The Why Files" is a UW bi-weekly "on-line" magazine that tries to make science topics interesting to the mass audience. This story is a quick overview of animation, with a focus on methods for the creation of motion. Too non-technical to be useful, but fun.
- O'Rourke, M. 3D Computer Animation
Workshop. SIGGRAPH '98 Course Notes (course 34). On-line
as acrobat.
**REQUIRED** - These notes are a watered down version of his book
*Principles of 3D Computer Animation*which is more targetted at artists and animators. These course notes intermix chapters of text (which are nice since they'll teach you the buzzwords) with walk-through tutorials to try things out. Unfortunately, these tutorials use a software package called SoftImage. However, you might read through them anyway to get a flavor of what another system might look like.

NOTE: do not print out the whole acrobat file. It is quite long, and not all of it is useful to you. While the whole thing is 79 pages long, there's really only 15-20 pages that are the "book" and that's what you're really required to read.

Many papers that are categorized by subject are also historically important. These here just didn't go somewhere else.

- Catmull, E. A System for Computer
Generated Movies. Proceedings of the 1972 ACM annual conference.
**REQUIRED****SEMINAL** - What's amazing about this is that the problems he faced then are still the problems we face now. This paper is more for historical perspective than anything else.
- Catmull, E. The Problems of Computer
Assisted Animation. Proceedings of SIGGRAPH '78.
**REQUIRED** - This paper layed out the issues that Ed saw in using a computer to make animated films. Twenty years later, we have "A Bugs Life." I am including this paper because it gives some insight into the animation pipeline, and what is hard (e.g. why inbetweening isn't trivial)

- Lasseter, J. Principles of
Traditional Animation Applied to Computer Animation. Proceedings
SIGGRAPH '87.
**REQUIRED****SEMINAL** - This is the reference for what animation means in computer
science. Much of this is the same material in the intro chapter of
"The Illusion of Life," but simply making the graphics world aware
of that material was a major achievement.

There is an on-line summary of this paper, but the paper is so important that you should read it. - Lasseter, J. Tricks to Animating Characters with a Computer. SIGGRAPH '94 Course Notes "Animation Tricks".
- This is more of the same thoughts on how to make animation from a person who not only is a master, but had learned from the master. It is online.
- Thomas, F. and
Johnson, O.,
*The Illusion of Life*, Abbeville Press, 1981. Chapter 3: Principles of Animation.**SEMINAL** - This chapter is the reference for the "Disney Animated Style." The only reason that its not required reading is that I didn't want to require you to buy the book.
- "Flik's Digital Adventure." On-line web page.
- This is a very basic web page, targetted at showing kids how "A Bug's Life" was made. What I find interesting about is that it tells the Pixar story: focussing on story and preproduction.

You will probably want to do some reading about Maya
in order to use it for the class. The Maya manuals may be scarse in
print form, but they are available on-line.
(note: that link is for NT in CS. The unix path is:
`/s/maya-1.0/i386_nt35/program/Maya1.0/docs/en_US/html`).

The book "Learning Maya" is a tutorial (note: there is a different book called "Introducing Maya"). The easiest way to get started is to work through the examples in the book. The book is on-line.

- There is a "preface chapter"
called
*Understanding Maya*which gives you a quick feature list for Maya. It is on-line.**REQUIRED** - Understanding Maya is required reading since it will give you ideas about what kinds of things a 3D animation system does.

Rick Parent is a professor at Ohio State who teaches classes in Computer Graphics and Animation. He has been putting together a book on computer animation, that right now is a sequence of web pages.

- Chapter
1 is a nice overview of computer animation. I especially like
it because it puts things into historical perspective with
traditional animation. Often, his lists of significant films or
places aren't the ones I would have picked, but in general, it
gets the ideas across.
**REQUIRED** - Chapter
4 is about motion. The first sections are the basics of
keyframing (described very nicely)
**REQUIRED**. - Chapter 5 is about higher level techniques for motion. I am not that fond of his discussion of constraints or physics,
- Appendix
A has a nice review of interpolation with cubics.
**REQUIRED**

Rotations are a tricky and important topic in animation. Basically, it's difficult to represent a rotation in 3D. Any way that you try to do it will have some problems. The most common ways to do it in computer graphiucs/animation are Euler Angles, which turn out to be really bad. Quaternions are a different way to do it that are becoming more popular. They are not without their problems.

- Grassia, S. A Practical Formulation of the
Exponential Map for Rotations. To Appear in the Journal of
Graphics Tools.
**REQUIRED** - On-line Postscript. Acrobat.

This paper introduces an alternative to Quaternions and Euler Angles that I think is very interesting. It's nice because it discusses the problems with different types of representations - Shoemake, K. Animating Rotation with
Quaternion Curves. SIGGRAPH '85. (the original version has some
known typos, in the SIGGRAPH '91 Course Notes "Math for Computer
Graphics" it is reprinted with
corrections).
**SEMINAL** - This is "the" reference for Quaternions in computer graphics. This paper is pretty much responsible for introducing the graphics community to quaternions, so everyone cites it. Even if you learn quaternions from elsewhere, you should be familiar with this paper.
- Shoemake, K. Quaternion Calculus for Animation. SIGGRAPH '91 Course Notes "Math for Computer Graphics."
- This is a "lecture notes" version of his paper. Pretty much the same material, but its important so its worth saying again.
- Shoemake, K. Quaternions. On-line
paper. (citation unknown)
**REQUIRED** - Ken keeps writing newer versions of the Quaternions paper. This one is nice since it is a little bit more formal, and also gives you more intuitions why the mathematics works the ways it does.
- Bobick, N. Rotating Objects Using Quaternions. Game Developer Magazine, July 1998.
- I stumbled on this reference while searching the web for
Shoemake's stuff. It's a nice, consice, description that really
cuts to the chase of what you need to do to actually use
quaternions, along with some intuitions of why.

On line version. - Murray, R. Li, Z. and Sastry, S. A Mathematical Introduction to Robotic Manipulation. CRC Press, 1994.
- This book is the only place I ever really saw exponential coordinates discussed in any kind of useful way (until the very recent graphics and vision papers).
- The moral of the story is that you don't want to interpolate
matrices. This paper is an attempt to try to do it, if you really
have to.

Compressed Postscript.

Shoemake, K. and Duff, T. Matrix Animation and Polar Decompositions.

Ivan Sutherland's Sketchpad system invented constraints. It
basically invented interactive graphics too. In 1962, Sutherland was
doing direct manipulation, interactive animation, constraints, ... It
is important to know about this system, if just to be in awe of what
he achieved that far back. I am not sure what paper to recommend to
people. **SEMINAL **

My thesis was about how to use constraints for interactive graphics. One of its strongest points is that it took an incredibly general view of what constraints and objects are, which I think is very valuable for animation. Some of the chapters will be required reading, because they describe things the way I like to describe them:

- Chapter 3 - Differential Methods - describes how to do
"simulation-like" optimization, and talks about how to handle many
of the nasty cases like over-constrained systems.
**REQUIRED** - Chapter 4 - Efficient Solution Methods - is generally full of
useful tricks on how to make numerical constraint stuff go fast.
**REQUIRED** - Chapter 5 - Snap-Together Math - talks about how to implement
the constraint stuff in a general way.
**REQUIRED**

- Witkin, A. Fleischer, K. and
Barr, A. Energy Constraints on Parameterized Models. Proceedings
SIGGRAPH '87.
**REQUIRED** - This paper is significant because it really was the first
place to talk about constraints in a general way, rather than
specific geometric attributes. For animation, it is interesting
because it has the notion of making animation by having things
self-assemble. They got very interesting results using very simple
methods.

Postscript(Compressed) Acrobat - Surles, M. An Algorithm with Linear Complexity for Interactive, Physically-Based, Modeling of Large Proteins
- This paper is interesting because it goes to extremes to
achieve interactive rates on the "physics" computations. Where my
work at the time was stressing dynamicness (e.g. the user was
changing the constraints), Mark was pushing the limits on the
number of constraints.

A current page on the SCULPT system, or look at the page of the company mark founded to market it.

The basics of kinematics (hierarchical modeling) are so imbedded in graphics that there really is no good reference. You should be familiar with the basic ideas (forward kinematics) from your earlier courses.

Inverse Kinematics (the problem of determining what joint angles correspond to desired end-effector configurations) is a special case of constraint solving. However, its also an essential problem in computer graphics. I don't know of a definitive reference. People are too busy "just doing it" to write about it. I'm sure there are good references out there in the robotics literature.

- Maciejewski, A. Dealing with the
Ill-Conditioned Equations of Motion for Articulated Figures. IEEE
Computer Graphics and Applications, May 1990.
**REQUIRED** - I am requiring this paper because it discusses some of the basic problems with doing IK in a nice way. I'm not sold on his solution to the problems (and this paper is a bit dated), but it a good paper for making you think.
- Zhao, J and Badler, N. Inverse
Kinematics Positioning Using Nonlinear Programming for Highly
Articulated Figures. ACM Transactions on Graphics, October 1994.
**REQUIRED** - This is as close as it gets to a definitive work. The basic idea, that IK is a non-linear constraint solving problem, so feed it to a non-linear constraint solver, seems so obvious, but this is really the place where they wrote it down. It is probably better to learn the optimization algorithms from an optimization text.
- Wellman, C. Inverse Kinematics and Geometric Constraints for Articulated Figure Manipulation.
- This is slightly obscure, but it has a nice survey for its
related work section, and actually discusses a lot of the details
and compares many different approaches.

You can get a copy on-line. - Issacs and Cohen. Controlling Dynamic Simulation with Kinematic Constraints, Behavior Functions, and Inverse Dynamics. Proceedings SIGGRAPH '87.
- This paper is important since its really the first place where the put together inverse dynamics and animator control. There methods are a bit simplistic by today's standards (and have been superceded), but they did get things to work.

I've made some comments on the suggested film books on the books page.

- Katz, S. Film Directing, Shot by Shot.
**REQUIRED** - NOTE: what is really required is to read something about
cinematography. This is the best choice.

This is a great book on cinematography. Chapters 6 and 7 will give you a good overview of how to compose pictures and how to use camera movement. The final half of the book is more and more examples. The early part of the book does an excellent job of discussing storyboards. - Cantine, Howard, and Lewis. Shot by Shot.
**REQUIRED** - NOTE: this specific book isn't required, something covering
its content is.

As I mention on the books page, this is an excellent, brief introduction to the basics. For the cinematography lecture, read chapters 3 (composition), 4 (continuity), 5 (editing), and preferably 7 (lighting). The book is very brief.

These papers are interesting attempts to use filmmaking knowledge in animation tools. They would make for interesting projects.

- He, L. Cohen, M. and Salesin, D. The Virtual Cinematographer: A Paradigm for Automatic, Real-Time Camera Control and Directing. Proceedings SIGGRAPH '96.
- An implementation of the concepts for filming dialog, including camera placement and shot selection.
- Drucker, S and Zeltzer, D. Intellegent Camera Control in a Virtual Environment. Proceedings 1995 Symposium on Interactive 3D Graphics.
- An interesting system for planning complex camera motions based on the other objects in the world.

Particle systems are a very basic technique in computer graphics. So basic, that no one bothers to write much about them. However, with a bit of hackery, they turn into a general purpose method for modeling lots of different things, and have been used to do a wide range of effects.

- William T. Reeves, "Particle
Systems - A Technique for Modeling a Class of Fuzzy Objects",
ACM Transactions on Graphics, Vol 2:2.
**SEMINAL****REQUIRED** - This is the original paper about particle systems. Well, the
original paper was the 1982 SIGGRAPH paper, of which this is an
extended version.

An on-line summary of the paper is available.

The primary text for physics will be the SIGGRAPH course notes put together by Andy Witkin and David Baraff. They were nice enough to put them online, and some of them I'm putting into the course reader. Often, this is material from papers (some of which are on the reading list too), but where there is duplication, this set of notes is a better tutorial. They contain:

- A review of differential
equations and O.D.E. solving that is nice because it gives the
intuitions and relations to graphics.
**REQUIRED** - An introduction to doing
simulation
in the easiest case (a particle)
**REQUIRED** - An introduction to constrained dynamics.
- An introduction to rigid body dynamics.
- An introduction to simulating constraints on rigid bodies (which to David, means collisions and contact).

- Witkin, A. and Gleicher, M.
and Welch, W. Interactive Dynamics. Proceedings of the 1990
Symposium on Interactive 3D Graphics.
**REQUIRED** - I think this is the first place where the equations for doing
constrained dynamics (and generalized IK) are written out in a
usable form.

Acrobat Postscript - This paper takes a cute idea - that if you have a simple
deformation as your modeling primitive, you can simulate physics
on it really easily, and builds it into a whole system.
Recommended reading since it actually works through all the
physics (which is possible because they are so simple). You will
probably catch me calling this work "troids," which is what we
called it at the time.

Postscript Acrobat

Witkin, A. and Welch, W. Fast Animation and
Control of Nonrigid Structures. Proceedings of SIGGRAPH '90.
**REQUIRED **

Al Barr's group at Caltech was doing important "Physically-Based Modelling" work in the late 80s. At SIGGRAPH '88, they published 2 papers. Both of which were superceded with later journal or book versions.

- Platt, J. and Barr, A. Constraint-Methods for Flexible Models. Proceedings SIGGRAPH '88.
- This paper is generally superceded by Platt's later journal paper. This is really the first paper to use good mathematical methods to simulate general constraints. When it came out, I didn't quite understand how it related to what we were doing at CMU.
- Platt, J. A Generalization of Dynamic Constraints. CVGIP: Graphical Models and Image Processing, vol. 54, no. 6, November, pp. 516-525, (1992).
- A much cleaned up version of the SIGGRAPH paper. The techniques are closely related to the ones we were using at CMU. I prefer our notation, so I am requiring our papers instead of this one.
- Barzell, R. and Barr, A. A Modeling System Based on Dynamic Constraints. Proceedings SIGGRAPH '88.
- This paper is basically about how to define objects by taking simpler objects, hooking them together with constraints, and then letting physics pull them together. This paper is nice in terms of its philosophy, but hard to read for its notation. It's also impossible to photocopy because of the small print, so I'm not putting it on the reading list.

- Miller, G. The Motion Dynamics of
Snakes and Worms. Proceedings SIGGRAPH '88.
**REQUIRED** - A nice paper because it shows how simple methods can be used to nice effect, when they are appropriate.
- Barzell, R. Physically-Based Modelling for Computer Graphics. Academic Press, 1992.
- This book is more philosophy than technique, unfortunately.

- Witkin, A. and Kass, M. Spacetime
Constraints. Proceedings SIGGRAPH '88.
**SEMINAL****REQUIRED** - This paper introduced spacetime constraints, and provided
results that were compelling enough to make it hard for anyone
else to follow.

Postscript Acrobat - Cohen, M. Spacetime Windows. Siggraph '92.
- A system for doing Spacetime.
- Zicheng Liu, Steve Gortler, and Michael F. Cohen, Hierarchical Spacetime Control, SIGGRAPH 94 (Orlando, Florida, July 24-29, 1994)
- This paper shows how to use wavelets to make spacetime go
faster and be more robust.

Postscript - J. Thomas Ngo and Joe Marks, "Spacetime Constraints Revisited," SIGGRAPH 93 Conference Proceedings, pp. 343-350, Anaheim, CA, August, 1993.
- Shows how to evolve creature behaviors by genetic programming.
Makes neat motions

Compressed Postscript - Joel Auslander and Alex Fukunaga and Hadi Partovi and Jon Christensen and Lloyd Hsu and Peter Reiss and Andrew Shuman and Joe Marks and J. Thomas Ngo, "Towards Practical Automated Motion Synthesis," Transactions on Graphics, 1995, To appear.
- This is the updated "long form" of the SIGGRAPH paper. They changed solver methods midstream.
- Sims, K. Evolving Virtual Creatures. SIGGRAPH '94.
- This not only synthesizes the motions, but synthesizes the
creatures that go along with it.

Here's a website about the work.

- Zeleznik, R. Herndon, K. and Hughes, J.
Sketch: An Interface for Sketching 3D Scenes. Proceedings SIGGRAPH
'96
**REQUIRED**. - One of the best pieces of 3D User Interface works ever. An
important system to know about.

On line as HTML.

A cute miniture version that runs as a Java applet.

The Sketch home page.

- Bobby Bodenheimer, Charles Rose,
Seth Rosenthal, and John Pella . The Process of Motion Capture:
Dealing with the Data. Computer Animation and Simulation '97.
Proceedings of the Eurographics Workshop.
**REQUIRED** - Postscript Acrobat
- Scott Dyer, Jeff Martin, John
Zulauf. Motion Capture White Paper
**REQUIRED** - On-line

This is as good a technology overview as I can find easily. Beware: it is a bit dated. However, it is great for getting you to understand the terms involved.

- Rose, C. Guenter, B. Bodenheimer, B. Cohen, M. Efficient Generation of Motion Transitions using Spacetime Constraints. Proceedings SIGGRAPH '96.
- Compressed
Postscript - Uncompressed
Postscript (huge)

Microsoft Human Figure Animation project page. - Bruderlin, A and Williams,
L. Motion Signal Processing. Proceedings SIGGRAPH '95.
**REQUIRED** - Acrobat.
- Popovic, Z and Witkin, A. Motion
Warping. Proceedings SIGGRAPH '95.
**REQUIRED** - Acrobat
- Unuma, Anjyo and Takeuichi. Fourier Principles for Emotion-Based Human Figure Animation.
- Acrobat.
- Gleicher, M. Motion Editing with Spacetime Constraints. Proceedings 1997 Symposium on Interactive 3D Graphics.
- Acrobat
- Gleicher, M. Retargetting Motion to New Characters. Proceedings SIGGRAPH '98.
- Acrobat.

- Press, Teukolsky, Vettering, and Flannery. Numerical Recipes in C.
- I am not requiring you to read it, but you'll probably want to anyway. Some particularly useful pieces for this class:

- Chapter 2 on Linear Systems.
- Chapter 9 on solving equations
- Chapter 10 on optimization
- Chapter 16 on Ordinary Differential Equations

Good Vibrations. Pentland and Williams, SIGGRAPH '89.

Westenhofer, William and Hahn, James. "Using Kinematic Clones to Control the Dynamic Simulation of Articulated Figures", Invited Paper, Computer Graphics International, June 24-26, 1996, Pohang, Korea. (Postscript)

Gritz, L. and Hahn, James. "Genetic Programming for Articulated Figure Motion", Journal of Visualization and Computer Animation, vol. 6: 129-142 (1995). (Postscript)

Gritz, Larry and Hahn, James, "Genetic Programming Evolution of Controllers for 3-D Character Animation" Proceedings of the Genetic Programming '97 Conference, July 1997. (Postscript)

Wiley, Doug and Hahn, James, "Interpolation Synthesis of Articulated Figure Motion," IEEE Computer Graphic and Applications, November/December 1997, Volume 17, No. 6, pp. 39-45.