Programming may be completed in any language and may use external libraries as long as they don't defeat the purpose of the assignment (and of course you must give credit for what you use). In general this means don't use someone else's code for algorithms that I teach in class---talk to me if you're not sure about a specific case.

Please read the standard note on plagiarism.

To hand in the animation you generate for an assignment, put it on the web and email me the URL. Refer to Resources for more information on creating your movies.

To hand in the programming part of an assignment, tar and gzip the directory containing your source code etc. (but not output data, object files or executables!) and a file README explaining the contents and how to compile and run the code. Then email me the .tar.gz file as an attachment.

To hand in the written part of an assignment, either email it to me (preferably in plain text or PDF), give it to me in person, or slide it under my office door.

I understand it is sometimes difficult to turn in assignments on time due to unforeseen emergencies. If you have a good reason you can't turn something in on time, please contact me as soon as possible about it and we can work something out. Otherwise, there will be a 20% per day late penalty, starting when I come to my office in the morning after the due date.

Assignment 1: Particle Systems (20%)

Due: September 27.

Download it here: assignment1-cs533d.tar.gz

This assignment focuses on time integration and collision processing for particle systems.

Note the original version of the assignment had a small bug in the collision processing loop (collisions_solved was not set to true each time through the do loop --- kudos to Christopher Batty for finding this one).

Assignment 2: Deformable Objects (20%)

November 10.

Download it here: assignment2.pdf

Assignment 3: Rigid Bodies (20%)

Assignment 3 is here.

It is due November 24.

Assignment 4: Fluids (20%)

Assignment 4 is here.

It is due in December: the earlier you hand it in, the earlier you get your mark.

Final Project (20%)

Proposal due: November 10-ish.

Project due and presentation: December 1, in class.

The topic of the final project is up to you. Some possibilities include:

You should write me a brief proposal by Novemeber 11 at the latest, describing what it is you will simulate and what techniques you will use. If you include references to papers that have done this in the past, so much the better.