BU
CAS
CS 580
Advanced Computer Graphics
Fall 1997
Programming Assignment 2
Due before class on Tuesday, October 7
The purpose of this assignment is to introduce you to concepts in
physically-based particle animation. You will produce animations of a
particle canon. Your animation will include effects of gravity, viscous
drag, and collision with walls.
The Code You Write
Use the phase-space equations as described
in the readings.
You may implement either 2-D or 3-D particles, and you may utilize
the numerical integration method of your choice.
Your program should include the following functionality:
- shoot particles in the upward direction
- use a pseudo-random number generator to choose when the next
particle will be "born"
- randomly perturb the
particles' initial directions and velocities
- model forces due to gravity and viscous drag
- detect collisions with four walls placed at the
viewport borders
- compute forces due to collision using impulses as described in
the readings
- make particles change color as a function of their age
Optional Part
For extra credit, generate a simulated fountain with many more particles.
What You Turn In
Create an HTML document "p3.html" that describes your project. In the
first part of the report, write a paragraph that describes how your program
works. Include two movie files showing two animation sequences that were
generated with your simulator. Finally, include your source files and
makefile. Be sure to tell me what computer platform (e.g., PC, SGI) your
tool runs on.
Submit your complete HTML document, separate source files, and images using
the submit program on CGL.
The report you write should be clear and to the point. The code you submit
should be well-structured and clearly documented. For hints on good style,
see the CS480 coding
guidelines.
Page Created: Sep 22, 1997
Last Modified: Sep 22, 1997
Maintained by: Stan Sclaroff