University of Utah School of Computing
CS 5967/6967:
Physics-based Animation
INSTRUCTOR:    Adam Bargteil (Office hours: By appointment, WEB 2666)
TIME: M/W 1:25-2:45
PLACE:     WEB 122
Physically based simulation techniques have revolutionized special effects in film and video games, creating extremely realistic effects while allowing unprecedented artistic control and avoiding dangerous situations. This course will explore physically based simulation methods for computer animation of a wide variety of phenomena and materials including rigid and deformable solids, cloth, liquids, and explosions. Students will be introduced to numerical methods, physical models, data structures, and theoretical results which form the building blocks of these methods. To gain hands-on experience, students will implement basic simulators for several phenomena.


  • Particle Systems
  • Deformable Solids & Fracture
  • Cloth & Thin Shells
  • Smoke & Explosions
  • Liquids
  • Rigid Bodies
  • Hair
  • Finite Element Methods
  • Finite Difference Methods
  • Collision Detection & Response
  • Stability and Implicit Integration
  • Level Set Methods
  • Smoothed Particle Hydrodynamics
  • Model Reduction Techniques
  • Simulation Control
Programming experience and basic familiarity with linear algebra and calculus is assumed. Some background in computer graphics is helpful.
PROGRAMMING ASSIGNMENTS: Your programming assignments should produce two final products: a short video and a short paper. The video should demonstrate your system and the paper should describe what you've done. Late Policy: You have five late days to be used over the semester. These should provide sufficient flexibility to handle other project deadlines. After using these days, there will be a 10%/day late penalty.
Assignment Due Date Description
Particle System Sep. 8, 2008     Description
Cloth or Deformable Bodies     Oct. 6, 2008 Description
Smoke Simulator Nov. 3, 2008 Description
Final Project Dec. 10, 2008
While there is no text covering the topics in this course, Physically Based Deformable Models in Computer Graphics by Andrew Nealen, Mathias Muller, Richard Keiser, Eddy Boxerman and Mark Carlson is a nice survey paper of many of the topics we will cover. Robert Bridson has recently published a book on Fluid Simulation for Computer Graphics. (The course notes are free.) The 2001 course notes on Physically Based Modeling are another good resource. Other useful resources can be found in the schedule below.
If you are looking for information on openGL, I would start here: OpenGL Quick Reference Guide
CLASS SCHEDULE (subject to change)

Date Topic Reading
Particle Systems
Particle Systems---a Technique for Modeling a Class of Fuzzy Objects
W.T. Reeves
Particle Animation and Rendering Using Data Parallel Computation
Karl Sims
Flocks, Herds, and Schools: A Distributed Behavioural Model
Craig Reynolds
Spring Mass Systems &
Elastic Bodies
Physically Based Modeling: Differential Equations Basics
Andrew Witkin & David Baraff
Physically Based Modeling: Particle System Dynamics
Andrew Witkin
Elastically Deformable Models
Demitri Terzopoulos, John Platt, Alan Barr, Kurt Fleischer
Modeling Inelastic Deformation: Viscoelasticity, Plasticity, Fracture
Demitri Terzopoulos & Kurt Fleischer
Finite Element Methods
Graphical Modeling and Animation of Brittle Fracture
James O'Brien & Jessica Hodgins
Finite Element Notes
Adam Bargteil
Nonlinear Continuum Mechanics for Finite Element Analysis
Javier Bonet and Richard D. Wood
Here is an email I sent to the mailing list
Labor Day.
No Classes.
Stability & Implicit Integration
Physically Based Modeling: Implicit Methods for Differential Equations
David Baraff
Physically Based Deformable Models In Computer Graphics
Andrew Nealen, Mathias Muller, Richard Keiser, Eddy Boxerman, Mark Carlson
Co-rotated & Invertible
Finite Elements
Stable Real-Time Deformations
M. Mueller, J. Dorsey, L. McMillan, R. Jagnow, B. Cutler
Invertible Finite Elements For Robust Simulation of Large Deformation
Geoffrey Irving, Joey Teran, Ron Fedkiw
Large Steps in Cloth Simulation
David Baraff & Andrew Witkin
A Quadratic Bending Model for Inextensible Surfaces
Miklos Bergou, Max Wardetzky, David Harmon, Denis Zorin, Eitan Grinspun
Collisions & Yarn
Robust Treatment of Collisions, Contact and Friction for Cloth Animation
Robert Bridson, Ron Fedkiw, John Anderson
Simulating Knitted Cloth at the Yarn Level
Jonathan M. Kaldor, Doug L. James, Steve Marschner
Modal Decompositions &
Reduced Coordinates
Interactive Deformation Using Modal Analysis with Constraints
Kris Hauser, Chen Shen, James O'Brien
Real-Time Subspace Integration for St.Venant-Kirchhoff Deformable Models
Jernej Barbic & Doug James
Shape Matching
Meshless Deformations Based on Shape Matching
M. Muller, B. Heidelberger, M. Teschner, M. Gross
FastLSM: Fast Lattice Shape Matching for Robust Real-Time Deformation
Alec Rivers & Doug James
Fluid Simulation using
Finite Differences
Realistic Animation of Liquids
Nick Foster & Dimitri Metaxas
Rigid, Melting and Flowing Fluid (pages 31-54)
Mark Carlson
More Fluid Simulation
Stable Fluids
Jos Stam
Smoke & Water
Visual Simulation of Smoke
Ron Fedkiw, Jos Stam, Henrik Wann Jensen
Animation and Rendering of Complex Water Surfaces
Doug Enright, Steve Marschner, Ron Fedkiw
To be presented by Haimasree Bhattacharya
Fluid Simulation with Particles
Particle-Based Fluid Simulation for Interactive Applications
Mathias Mueller, D. Charypar, Markus Gross
Predictive-Corrective Incompressible SPH
Barbara Solenthaler and Renato Pajarola
To be presented by Varun Shankar
Sand & Explosions
Animating Sand as a Fluid
Yongning Zhu, Robert Bridson
Animating Suspended Particle Explosions
Bryan Feldman, James O'Brien, Okan Arikan
Solid-Fluid Coupling
Rigid Fluid: Animating the Interplay Between Rigid Bodies and Fluid
Mark Carlson, Peter Mucha, Greg Turk
Coupling Water and Smoke to Thin Deformable and Rigid Shells
Eran Guendelman, Andrew Selle, Frank Losasso, Ron Fedkiw
More Fluids
A Fast Variational Framework for Accurate Solid-Fluid Coupling
Christopher Batty, Florence Bertails, Robert Bridson
A Point-based Method for Animating Incompressible Flow
Funshing Sin, Adam Bargteil, Jessica Hodgins
Controlling Fluid
Target-Driven Smoke Animation
Raanan Fattal & Dani Lischinski
To be presented by Konstantin Shkurko
Detail-Preserving Fluid Control
Nils Thuerey, Richard Keiser, Mark Pauly & Ulrich Ruede
Rigid Body Dynamics
Physically Based Modeling: Rigid Body Simulation
David Baraff
Collision Detection &
Physically Based Modeling: Rigid Body Simulation
David Baraff
Resting Contact &
Lots of Bodies
Fast Contact Force Computation for Nonpenetrating Rigid Bodies
David Baraff
To be presented by Alex Stuart
Nonconvex Rigid Bodies with Stacking
Eran Guendelman, Robert Bridson, Ron Fedkiw
To be presented by Brian Matthews
More Contact
Asynchronous Contact Mechanics
David Harmon, Etienne Vouga, Breannan Smith, Rasmus Tamstorf, Eitan Grinspun
Viscoelastic Fluids &
Elastoplastic Solids
A Method for Animating Viscoelastic Fluids
Tolga Goktekin, Adam Bargteil, James O'Brien
Graphical Modeling and Animation of Ductile Fracture
James O'Brien, Adam Bargteil, Jessica Hodgins
A Finite Element Method for Animating Large Viscoplastic Flow
Adam Bargteil, Chris Wojtan, Jessica Hodgins, Greg Turk
Embedded and Wrinkle
Fast Viscoelastic Behavior with Thin Features
Chris Wojtan and Greg Turk
Wrinkle Meshes
Matthias Muller & Nuttapong Chentanez
No Classes.
Volumetric Methods for Simulation and Rendering of Hair
Lena Petrovic, Mark Henne, John Anderson
To be presented by Joeseph Ross Campano Perenia
A Mass Spring Model for Hair Simulation
Andrew Selle, Mike Lentine & Ron Fedkiw
To be presented by Stephen Ward
Point-based Animation
of Solids
Point Based Animation of Elastic, Plastic and Melting Objects
Matthias Mueller, Richard Keiser, Andy Nealen, Mark Pauly, Markus Gross, Marc Alexa
To be presented by Ashok Jallepalli
A Point-based Method for Animating Elastoplastic Solids
Dan Gerszewski, Haimasree Bhattacharya, Adam Bargteil
Unification & Noise
Unified Simulation of Elastic Rods, Shells, and Solids
Sebastian Martin, Peter Kaufmann, Mario Botsch, Eitan Grinspun, Markus Gross
To be presented by Steve Mass
Curl-Noise for Procedural Fluid Flow
Robert Bridson, Jim Hourihan, Marcus Nordenstam
To be presented by Ryan McAlister
Final Exam
Final Project
1:00-3:00 pm
Course Number 5967      6967     
Programming Assignments      60% 45%
Final Project 25% 25%
Paper Presentations 0% 15%
Final Exam 15% 15%