CP SC 881
Physically Based Animation
Spring 2009
MWF 10:10-11:00,
McAdams 118C, 3 credits
|

Emitter 2 -
Animation courtesy of Landon Grey
|
|
Professor: Donald
H. House
office: 319 McAdams Hall, phone: 656-2284
hours: 4:00 - 5:00 Tu
email: dhouse@cs.clemson.edu
Web
Page: http://www.cs.clemson.edu/~dhouse/courses/881
Course Home Directory: ~dhouse/courses/881/
|
Resources and Documentation |
Introduction
Physically-based
modeling and dynamic simulation techniques as used for
the automatic description of motion and geometry for animation and
computer
graphics. A variety of approaches are explored, with a special
emphasis on the use of particle-systems to represent complex
phenomena.
Texts
and Readings
- Baraff, and Witkin Physically
Based
Modeling
Course Notes, Course 36 SIGGRAPH 99 Please Print Only Pages 1
Through
109 of the Notes (the rest is speaker's slides)
- Woo, Neider and Davis, OpenGL®
Programming Guide: The Official Guide to Learning OpenGL®,
Version 2.0, 5th Edition, Addison Wesley
- Online
OpenGL Documentation
- Press, Teukolsky, Vettering, and Flannery, Numerical
Recipes in C, Cambridge University Press
- A collection of other notes and
research
papers
Course Objectives
We will begin by
looking at the problem of simulating a bouncing ball,
and use this problem to review relevant principles of
Calculus, Physics, Linear Algebra, Numerical Methods, and Interactive
Graphics. This will
give
us the background to investigate an approach to the modeling and
simulation
of amorphous phenomena using massive particle simulations. We will also
address ways of treating special materials and phenomena using
interacting
particle systems. First we will examine techniques for the
representation of
flocking
and herding using systems of multiple interacting actors. Then, we will
introduce the classic spring-mass-damper
system and see how it can be used to construct flexible structures from
mass particles connected with
"springy'' links. Computational problems in modeling springy behavior
will require us to investigate more sophisticated numerical methods for
computing our simulations, such as adaptive time stepping and implicit
integration. We will then look at the problem of rigid body dynamics,
where structures are built from "rigid'' links. This will require a
formal introduction to the notion of rotational
dynamics.
All of our early simulations will be done using forward dynamics, where
the inputs to a simulation are forces and the outputs are positions and
velocities. However, the inverse situation, where the inputs are
positions
and velocities and the outputs are forces, is often much closer to what
is required in choreographing a computer animation. This concept will
be
generalized to deal with a variety of geometric constraints. We will
conclude
the course by looking at fluid dynamics, and how concepts from this
field
can be implemented efficiently to simulate such phenomena as water,
smoke
and fire.
Course Schedule
- Introduction to Physically Based Modeling
- Collision Detection
- Simple Particle Systems
- Explicit Numerical Integration
- Interacting Particle Systems and Actors
- Spring-Mass-Damper Systems
- Springy Structures
- "Stiff" Systems and Implicit Numerical Integration
- Rigid Body Dynamics
- Constraint Systems and Inverse Dynamics
- Smoke and fluids
Projects, Exams and Grading
This will be a
project oriented course, with assignments done on the
computer
about every two weeks, and culminated by a project of the students' own
devising. Cumulative regular homework project average grade will count
for 70%
of the final grade. The final project will count 20% of the final
grade. Students will demonstrate their solutions to assignments
and their final project in class, and grading will be based on the
quality
of the presentation. The remaining 10% of the grade will be based on
the
instructor's subjective evaluation of class participation, which will
include
such issues as attendance and informed classroom discussion. To make
sure that the classes are
interesting
and informative, everyone will be expected to attend class, to have
carefully
read assigned readings, to have completed the programming assignments
and
to participate actively in class discussions.
Late assignements
will incur a 10% penalty per class session that
they
are late. Since they will be graded by demonstrating them in class, and
the late penalty is stiff, it will be a good idea to implement your
projects
in stages so that you will always have something to show even
if
you do not successfully complete an assignment.
For each
assignment,
you
will give me a directory containing 1) a text README file containing a
written
description of your project and any special features or techniques you
implemented, 2) your source code with a Makefile, 3) any parameter or
data files necessary to run your program.
Your code must be compilable and tested in a Unix environment (linux or
Macintosh). I will only be
looking at your source code to satisfy my curiosity, not to give you
detailed
critiques. Thus it will be up to you to make sure that I understand
what
you have done. If your project is not entirely self-explanatory, please
include instructions for running it in the written description.
Late Class
Policy
Your instructor will make every effort to
be in class on time, or to inform you of any delay or cancellation. In
the unusual event that he should not arrive in class or send word by 15
minutes from the class start time, the class is officially cancelled.
Attendance
Policy
Attendance in
class is optional, but remember that a percentage of the grade is based
on class participation.
Collaboration
Yes, Plagiarism No
In this course,
we want to encourage collaboration and the free interchange of ideas
among students and in particular the discussion of homework problems,
approaches to solving them, etc. However, we do not allow
plagiarism, which, as commonly defined, consists of passing off as
one's own ideas, words, writings, etc., which belong to another. In
accordance with this definition, you are committing plagiarism if you
copy the work of another person and turn it in as your own, even if you
should have the permission of that person. Plagiarism is one of the
worst academic sins, for the plagiarist destroys the trust among
colleagues without which research cannot be safely communicated.
Copyright
Materials in
this course are copyrighted. They are intended for use only by students
registered and enrolled in this course and only for instructional
activities associated with and for the duration of the course. They may
not be retained in another medium or disseminated further. They are
provided in compliance with the provisions of the Teach Act. Students
should refer to the Use of Copyrighted Materials and “Fair Use
Guidelines” policy on the Clemson University website for additional
information: http://www.lib.clemson.edu/copyright/.
Disability
Access
It is University
policy to provide, on a flexible and individualized basis, reasonable
accommodations to students who have disabilities. Students are
encouraged to contact Student Disability Services to discuss their
individual needs for accommodation.
Academic
Integrity
As members of
the Clemson University community, we have inherited Thomas Green
Clemson’s vision of this institution as a ‘high seminary of learning.’
Fundamental to this vision is a mutual commitment to truthfulness,
honor, and responsibility, without which we cannot earn the trust and
respect of others. Furthermore, we recognize that academic
dishonesty detracts from the value of a Clemson degree.
Therefore, we shall not tolerate lying, cheating, or stealing in any
form. In instances where academic standards may have been compromised,
Clemson University has a responsibility to respond appropriately and
expeditiously to charges of violations of academic integrity.
Please refer to
the graduate academic integrity policy, approved March 26, 2007 by the
Provost’s Advisory Council, at http://gradspace.editme.com/AcademicGrievancePolicyandProcedures#integritypolicy
Each graduate
student should read this policy annually to be apprised of this
critical information.