An Introduction to Physics-based Animation
Loading...
Links to Files
Author/Creator
Author/Creator ORCID
Date
2018-08-12
Department
Program
Citation of Original Publication
Adam Bargteil, Tamar Shinar, An Introduction to Physics-based Animation, Proceeding SIGGRAPH '18 ACM SIGGRAPH 2018 Courses, Article No. 6, https://doi.org/10.1145/3214834.3214849
Rights
This item is likely protected under Title 17 of the U.S. Copyright Law. Unless on a Creative Commons license, for uses protected by Copyright Law, contact the copyright holder or the author.
Abstract
Physics-based animation has emerged as a core area of computer graphics finding widespread application
in the film and video game industries as well as in areas such as virtual surgery, virtual reality, and training
simulations. This course introduces students and practitioners to fundamental concepts in physics-based
animation, placing an emphasis on breadth of coverage and providing a foundation for pursuing more advanced
topics and current research in the area. The course focuses on imparting practical knowledge and intuitive
understanding rather than providing detailed derivations of the underlying mathematics. The course is suitable
for someone with no background in physics-based animation—the only prerequisites are basic calculus, linear
algebra, and introductory physics.
We begin with a simple, and complete, example of a mass-spring system, introducing the principles behind
physics-based animation: mathematical modeling and numerical integration. From there, we systematically
present the mathematical models commonly used in physics-based animation beginning with Newton’s laws
of motion and conservation of mass, momentum, and energy. We then describe the underlying physical
and mathematical models for animating rigid bodies, soft bodies, and fluids. Then we describe how these
continuous models are discretized in space and time, covering Lagrangian and Eulerian formulations, spatial
discretizations and interpolation, and explicit and implicit time integration. In the final section, we discuss
commonly used constraint formulations and solution methods.