CSCI 520: Computer Animation and Simulation 
This course is designed to teach students the fundamental techniques of computer animation and simulation, and to provide knowledge and/or experience in the design, scripting, production and post-production stages of computer animation. Topics covered will include traditional animation techniques, keyframing, simulation and dynamics, free-form animation, behavioral and procedural animation, and production scheduling and post-production. Students will be expected to work in teams to complete a large-scale animation project.

As a graduate course in the Department of Computer Science, a solid background in computer science and computer graphics is expected. However, we will make all efforts to make the lectures and materials accessible to graduate students from other disciplines without compromising too much on the technical level.  To accomplish this, participants should have a reasonable technical background, plus a willingness to fill in those gaps as they manifest themselves as we progress through the course. 

Note however that this is not a class where you will learn how to use Maya or SoftImage (usual animation tools for production). We will only explain the techniques used in such sofwares, along with their flaws or advantages. The goal is not to make an animator out of you, but to give you the skills and knowledge needed to develop animation/simulation tools.

Time: TTh 9:30am-10:50am
Room: Science 352
Prerequisites: CS480
Credits: 3
Lecturer: Mathieu Desbrun (desbrun@usc.edu) - PHE 434


  Slides of the lectures:
Lecture 1: Fundamentals in Math and Physics

Lecture 2: Overview and Open GL fundamentals
Lecture 3: Motion Control: Keyframing and Kinematics
Lecture 4: Motion Processing
Assignment 1: Keyframing (Due Tuesday, Feb 18th)
Lecture 5: Higher Level Motion Control
Lecture 6: Particle Systems
Lecture 7: Rigid Body Dynamics
Additional Note 1: Rigid Body 1 (by David Baraff)
Additional Note 1: Rigid Body 2 (by David Baraff)
Lecture 8: Deformable Body Simulation
Assignment 2: Matrices/Quaternions (Due Tuesday, Mar 3rd)
Lecture 8b:Integration of Differential Equations
Assignment 3: Particle Systems (Due Tuesday, Mar 25th)
Lecture 9: Cloth Animation
Lecture 10: Gas and Liquid Animation
Lecture 11: Overview of Maya (global recap!)
Guest Lecture 1: Facial Animation 1
Guest Lecture 2: Facial Animation 2
Guest Lecture 3: Facial Animation 3
Guest Lecture 4: Data-driven Character Animation


Last modification: Feb 6,2003