Last modified: 11:32 Feb 28, 2000

Computer Animation Lectures, Spring 2000

The reading assignments are readings to do for the lecture (e.g. you should have read the reading to be ready for the lecture). The assignments are things to do after the lecture.

Note: the links here are to my notes on the readings page. "online" is a link to the online reference

Lecture 1: Introduction

For the first lecture, we will discuss what this course is going to be and give you some ideas as to what you will be doing. We'll also watch some gratuitous animation.

Handouts:

Lasseter paper
Training in Computer Animation

Readings:

None for today, although it would be good if you look over the web site.

In-Class Viewing:

  • Tinkertoys (my thesis)
  • Spacetime Swing
  • Path Transformations
  • (excepts from) Toy Story
  • Wild River
  • Frisk Fish
  • (chase scene from) The Wrong Trousers (Wallace and Gromit)

Assignment:

Form a reading group.

Lecture 2: Principles of Animation

In this lecture, we'll start by looking at the art of creating motion for animation. We'll start diving into some of the details, although, we'll spend a little bit of discussion leading up to it on the historical context. The goal for this lecture is to get an appreciation for what animators are trying to achieve.

Required Reading:

Lasseter: "Principles of Traditional Animation Applied to 3D Computer Animation."

This is a light, but important, paper. You can read it on your own.

Other Readings:

  • Chapter 3 of "The Illusion of Life" would be the required reading, except that its hard to get access to. If you can get a hold of it, I recommend it.
  • The notes from John Lasseter's course are a useful addition to the paper. (online)
  • Anything else that talks about the art of animation. Some ideas are on the readings page.

In-Class Viewing:

  •  Luxo Jr.
  • Charriots of Fur (Road Runner)
  • The Sorcerer's Apprentice (from Fantasia)

Assignment:

  • Assignment 0 (personal course web page) is due Tuesday.
  • In your reading group, you should think of examples of the principles of animations from animations you know.
  • You might want to start looking at Maya while reading through the Maya documentation.

Lecture 3: Introduction to Computer Animation

Last time, we looked at animation to see what we are trying to create. Now we'll start to look at the tools to actually make animation. Since there's little to read about the basic concepts, we'll look at a specific system (Maya).

We'll also begin talking about animation mathematically. The main thing will be to review some graphics terminology to get an idea of what it means to have objects that we will animate.

Required Readings:

  • Chapter 1 of Parent's Book (from the reader)
  • Understanding Maya (the first chapter of the book "learning Maya").

In-Class Viewing:

  • Bingo
  • Maya promo real (excerpts)

Other Readings:

Because I haven't assembled the course reader yet, its harder for me to give you papers to read.

Chapter 2 of Parent is not going to be required in the course, so if you're interested in it, you should read it now.

I have some other quick and easy general references on the readings page. You should look at one of these to get some familiarity with some of the buzzwords.

 Lecture 4: Animation Systens

Required Readings:

  • Catmull. "A System for Computer Generated Movies." This paper is in Reader #2 which should be available on 2/1.
    As you read this, think about why this (pretty ancient) paper is so important for you to read.
    If the reader isn't available, then we may postpone this paper until next time.
  • The first part (pages 73-96) of Chapter 4 of Parent's book. You are not responsible for the details of the fancier ways to compute arc-length parameterizations. (you might find them interesting, especially if you implemented it for 638 last semester).
  • At least look at Lesson 2 in Learning Maya. (you probably need to skim over lesson 1 first). Look for the types of tools Maya provides for hand-creating motion.

In-Class Viewing:

  • (skipped)

Other Readings:

  • Now might be a good time to get started on reading up on Maya since the assignments are due soon. Working through the tutorials in the Maya book

Assignment:

Be aware of the art assignment deadlines coming up.

You might want to start playing with Maya to make some motion to get an appreciation of what we're talking about in class.

Lecture 5: Simulation Introduction

Note: since we didn't cover Catmull's paper last time, we'll talk about it a bit in this lecture.

Over the next 2 lectures we'll cover the basics of physical simulation, introduce some of the "cheap" methods for doing physical simulation, and look at how those methods are used.

In the past, I've stressed the connection between optimization and simulation, and done optimization first. This year, as an experiment, I'm going to try doing physics first.

Required Readings:

In-Class Viewing:

  •  Baraff Horse Video

Optional Readings:

Lecture 6: Particles and Penalties

The basics of simulation are presented using the simplest possible objects (particles) and the simplest possible methods (penalties). Before moving on to more complicated things, we'll look at what we can do with these simple ones.

Required Readings:

This is too many papers for one lecture, but for these, the gist of the papers are important, not necessarily the details.

What I recommend is each person reads a subset of these papers, and that each reading group makes sure that someone has read each one.

In-Class Viewing:

  • Her Majesty's Secret Serpent
  • Some particle simulation "classic" (Particle Dreams, Genesis sequence from Wrath of Kahn)
  • My early physics experiments (if I'm not too embarrassed)

Optional Readings:

  • More on particle systems and "soft objects"
  • The Maya documentation on particle systems
  • Baraff & Witkin. "Large Steps in Cloth Simulation." Which might be a required reading later on. The pdf is online. This paper will be in Reader #3.

Lecture 7: Constraint Methods Introduction

In the next two lectures, we'll move on to more sophisticated methods for doing simulation. In lectures, I will probably follow the derivation from my thesis, however, this is not the reading that I will require.

Required Readings:

  • Witkin's Course notes on Constrained Dynamics (in Reader 2)
  • Witkin, Gleicher, Welch. Interactive Dynamics (in Reader 3). The hard parts of this paper are covered in Witkin's notes, so the main thing from this paper is to get a feel for the systems/implementation issues.

In-Class Viewing:

  • Early CMU demos

Optional Readings:

  • The best discussion of constraint methods (IMHO) is my thesis. Chapter 3 describes the constraint methods, and Chapters 4 and 5 discuss implementation issues.
    Last year, I gave chapters 3-5 as required course reading. Some people didn't like this because they felt that it was out of context (these chapters refer to other chapters).
  • We will probably not get to discuss collisions in class. A good introduction can be found in David Baraff's course notes.
  • There are other suggestions in the constraints and physics sections of the readings page.

Lecture 8: More Constraint Methods

The mathematics for doing constraints deserve more than 1 lecture.

Readings:

(note: reading these is not required, but rather, is recommended)

  • You might want to review the readings for last time to review what was going on.
  • The implementation details of doing constraints are best seen in Chapters 4 and 5 of my thesis. Reading these chapters is not required, but we will be discussing them in class, so you might want to refer back to them afterwards.
  • Wikin and Welch. Fast Animation and Control of Nonrigid Structures. (in reader #3) I like this paper for a number of reasons. In class, we will discuss Lagrangian dynamics, which are used here. This paper also deals with control issues in physics, which will be the topic for next time.

In-Class Viewing:

Optional Readings:

Lecture 9: Generalizing and Implementing Constraints

This isn't what I originally planned, but given how far we got last time into constraints, this time I will discuss some deeper issues in what to do about constraints.

Required Reading:

In-Class Viewing:

  • My thesis video

Recommended Readings:

  • Chapters 3-5 of my thesis are the best discussion of the implementation details of doing constraints. Other chapters describe some things you can do with constraints.

Lecture 10: Control of Physics and Intro to Spacetime

Required Reading:

In-Class Viewing:

  • Unfortunately, I have not been able to get video of Spacetime or Troids (and Witkin was my advisor!)

Optional Readings:

  • Other spacetime papers

Lecture 11: Image-Based methods for Faces

In honor of Cindy Grimm's visit (her talk will be on Monday, Feb 28th at 4pm and is required), we will discuss the paper connected with the work. This paper is best discussed along with a contrasting paper that was originally presented in the same session at SIGGRAPH (it was a banner year for facial animation).

Before the lecture, meet with your reading group and consider the difference between the two papers: why would one method be preferable to the other. (they each have their pros and cons)

Required Reading:

  • Guenter, Grimm, Malvar, Pighin. Making Faces. (pdf file online)
  • Pighin, Hecker, Lichinski, Szeliski, Salesin. Synthesizing Realistic Facial Expressions from Photographs. (pdf file online)

In-Class Viewing:

  • Video companions to those papers, maybe some other facial animation work

Optional Readings:

  • Bregler, Covell, and Slaney. Video-Rewrite.
  • Other facial animation papers (we'll probably return to facial animation later in the semester).

Lecture 12: Implementing Constraints

OK, we still haven't gotten to talk about the guts of how to implement constraint methods. We'll make one last attempt to go through it.

Required Reading:

  • None required. You should be busy working on project 1

In-Class Viewing:

  • My thesis video

Recommended Readings:

  • Chapters 3-5 of my thesis are the best discussion of the implementation details of doing constraints. Other chapters describe some things you can do with constraints.
  • The Witkin & Kass Spacetime paper and the Witkin, Gleicher, Welch Interactive Dynamics paper both also introduce some of the things we'll be talking about. (and you should be familiar with them by now)

Lectures 13 and 14: Cinematography

For this lecture, we shift gears a bit and think about the art behind computer graphics. 3D computer animation has as much to learn from traditional filmmaking as traditional 2D animation, since we face all the same issues: how to convey what happens in a world through a sequence of images.

Unfortunately, filmmaking could be a whole life's study unto itself. As a computer scientist, I am not quite sure how to convey the general gist of the issues in filmmaking. But, it'll be fun to try.

The main topic I plan to discuss is cinematography (that is, choosing where to put the camera and how to move it). But related issues like composition, editing, lighting, ...

An alternate reason for introducing these topics is that there are interesting possibilities for building some of the filmmaking knowledge into animation tools. Some first stabs at this are included as optional readings.

Required Readings:

You are required to read some basic film book (at least the parts on shot composition, cinematography and editing). Some suggestions:

In-Class Viewing:

  • Mike's animation and film experiments
  • Tin Toy

Optional Readings:

Homework:

  • Watch a movie and pay attention to the cinematography, design and lighting. Try to identify cinematic techniques.
  • Experiment with camera placement in a simple scene or animation to see how changing the camera affects the piece.

For the 2nd Film lecture, we'll continue where we left off on the first, and discuss lighting.

$Header: p:/graphics/CVS/838-2000/html/MainPage/lectures1.htm,v 1.1 2000/01/25 00:38:22 gleicher Exp $