CIS 563: Physically Based Animation
University of Pennsylvania
         Spring 2015
Home › Course Information

Course Objective

Physically based simulation techniques have revolutionized special effects in film and video games, creating extremely realistic effects while allowing unprecedented artistic control. This course explores physically based simulation methods for computer animation of a wide variety of phenomena and materials including rigid and deformable solids, cloth, liquids, and others. Students will be introduced to numerical methods, physical models, and theoretical results which form the building blocks of these methods. To gain hands-on experience, students will implement basic simulators for several phenomena. The course is appropriate for both upper level undergraduate and graduate students.

Time: Monday + Wednesday : 1:30pm-3:00pm
Location: Moore 212

See the best student work from last semester (Spring 2014): Student Work


Ladislav Kavan (ladislav _at_
  • Office Hours: Wed:3-5pm
  • Office Location: Levine 303

Teaching Assitants / Graders

TA: Yu Wang (
  • Office Hours: Tue:3:30-5pm
  • Office Location: Moore 103
TA: Harmony Li (
  • Office Hours: Fri:1-3pm
  • Office Location: Moore 100
TA: Xinjie Ma (
  • Office Hours: Thu:12-2pm
  • Office Location: Moore 100
TA: Ying Li (
  • Office Hours: Thu:2-4pm
  • Office Location: Moore 100

Course Mechanics

In CIS 563 you will be asked to complete three programming homework assignments, and a larger programming class project. In each assignment, the student will program an interactive computer graphics simulation, related to the material covered in class. Tentative topics are a mass-spring system simulation, a smoke simulation, and solution of Laplace's equation. Students will be able to select their individual topic for the final project. All the assignments must be done individually. You may work in groups for the final project. Students should have a good knowledge of object oriented programming and basic familiarity with linear algebra, caculus, and physics. Some background in computer graphics is helpful. Suggested prerequisite courses include: CIS277, CIS460/560, and MATH240. At the conclusion of spring term, a short presentation session will be held.


Grading will be based on a number of programming assignments and participation.
Detailed allocations are tentatively as follows:

- Programming Projects(60%)
  • Simulating a Jello Cube (20%)
  • Position Based Dynamics (20%)
  • Smoke Simulation (20%)

  • - Final project of your choice (36%)
  • Mid-review report and presentation 10%
  • Final project presentation 20% (quality of your presentation and results on Wednesday, April 27)
  • Final report 10% (quality of the report)
  • Project outcome 60% (technical achievement of the project)

  • - Class Participation (4%)

    Topics to be Covered

    • Particle Systems
    • Deformable Solids
    • Cloth & Thin Shells
    • Smoke & Fire
    • Liquids
    • Rigid Bodies
    • Finite Element Methods
    • Finite Difference Methods
    • Collision Detection & Response
    • Stability and Implicit Integration
    • Level Set Methods
    • Smoothed Particle Hydrodynamics
    • Model Reduction Techniques
    • Simulation Control


    There is no required text book for this class. Lecture notes will be provided for each class. Also supplemental reading material is linked from the syllabus. The "Resource" link also has helpful material for you.