
Administrative Matters
Spring 2010, Tuesday and Thursday, 12:30-1:50, VHE 210
Instructor: Jernej Barbic
· Office: SAL 230
· Office hours: by appointment
· Phone: 213-740-1914
· Email: jnb@usc.edu
TA(s): TBA
Introduction and Purposes
This course introduces students to physically based simulation for computer graphics and related fields. Physically based simulation is an active research area in computer graphics, with applications to computer games, virtual reality systems, and movie special effects. Efficient numerical methods for simulating a variety of visually interesting physical phenomena will be discussed in the context of interactive simulation. Topics include deformable objects (solids, cloth), fluids, sound simulation, collision detection, haptics, rigid body dynamics, and GPU programming. In addition to computer science students, this course should also be appropriate for graduate students in related disciplines such as mathematics and physics.
Prerequisites
Topics
Readings
There is no required textbook. Selected articles, book chapters, and course notes will be made available online. A reference book on OpenGL is recommended for help with the homework and the project. Examples of selected articles to be covered in class:
Baraff, Witkin: Large steps in cloth simulation, SIGGRAPH 1998
http://portal.acm.org/citation.cfm?id=280821
Jos Stam: Stable Fluids, SIGGRAPH 1999
http://www.dgp.toronto.edu/~stam/reality/Research/pub.html
E.G. Parker and J. F. O'Brien: Real-Time Deformation and Fracture in a Game Environment, ACM SIGGRAPH/Eurographics Symposium on Computer Animation, 2009
http://www.cs.berkeley.edu/b-cam/Papers/Parker-2009-RTD/
Assignments and project
There will be two programming homework assignments, and a final 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, and a dynamic simulation of rigid bodies with constraints.
Students will be able to select their individual topic for the final project. Examples: implement a SIGGRAPH paper of your choice, implement an elaborate demo using a physics game engine (e.g., Havok), a fluid solver, a collision detection algorithm, a robotic rigid multi-body system, a real-time sound simulator, a fast FEM deformable object simulation, a simulation in CUDA, etc.
Backgrounds in OpenGL or Direct3D are going to be very helpful for the homework assignments and the project. There will be at least one programming assignment in OpenGL and C. Students who do not have experience with OpenGL can still take the course, but they have to be ready to spend additional time to gain the necessary OpenGL proficiency to program the assignments.
Grading
All assignments and the project must be done individually. All assignments and the project must be completed to pass the course.
· Assignments: 20% each (40% total)
· Project: 50%
· Class participation: 10%
The project grade will include the quality of the final project report, and the mandatory in-class project presentation.
Late policy
All work submitted after the deadline will receive a substantial score deduction, including potentially a zero score. Exceptions will be granted only under most dire circumstances and must be discussed with and approved by the instructor in advance.
Statement for Students with Disabilities
Any student requesting academic accommodations based on a disability is required to register with Disability Services and Programs (DSP) each semester. A letter of verification for approved accommodations can be obtained from DSP. Please be sure the letter is delivered to me (or to TA) as early in the semester as possible. DSP is located in STU 301 and is open 8:30 a.m.–5:00 p.m., Monday through Friday. The phone number for DSP is (213) 740-0776.
Academic integrity
All students are expected to maintain the utmost level of academic integrity. Passing off anyone else's (whether it be a fellow student or someone outside the university) work as your own is a serious infraction, and will lead to appropriate sanctions. Files that are clearly the same, or altered copies of each other, will receive zero credit and the USC Office of Student Judicial Affairs and Community Standards will be notified. Please consult the USC Student Conduct Code for details on what is and is not appropriate, and for the possible consequences of infractions.
USC Statement on Academic Integrity
USC seeks to maintain an optimal learning environment. General principles of academic honesty include the concept of respect for the intellectual property of others, the expectation that individual work will be submitted unless otherwise allowed by an instructor, and the obligations both to protect one’s own academic work from misuse by others as well as to avoid using another’s work as one’s own. All students are expected to understand and abide by these principles. Scampus, the Student Guidebook, contains the Student Conduct Code in Section 11.00, while the recommended sanctions are located in Appendix A: http://www.usc.edu/dept/publications/SCAMPUS/gov/. Students will be referred to the Office of Student Judicial Affairs and Community Standards for further review, should there be any suspicion of academic dishonesty. The Review process can be found at: http://www.usc.edu/student-affairs/SJACS/.