Programming Assignment 2
Due 5:59PM on Tuesday, March 2
In this assignment you will learn about basic particle animation and procedural
texture mapping methods.
Implement one of the following options:
- Use a network of particles, connected by springs to produce an animation
of a 3D flag flapping in the turbulent wind.
- Produce an animation of a "waterfall" of particles flowing over 3D
polyhedral rocks, with proper collision detection and response. The
particles should be affected by turbulent wind forces.
The wind forces should be computed via a time-varying procedural texture map.
Allow the user to move a mouse that produces a vortex or add's wind
forces into the simulation at the current mouse location.
It is assumed that you will write your own 3D procedural texture mapping
functions and particle animation system. You are welcome to use the
numerical integration algorithm of your choice.
Provide an interface to your program that allows the user to change the parameters
of the particle simulation (e.g., drag, stiffness, time step size, etc.)
and the parameters of the procedural texture mapping function (e.g., wind
speed, force, lucanarity, etc.).
Extra Credit
Apply 3D procedural texture maps to your flag or polyhedral rocks.
Submitting Your Report
By the deadline, send the URL for your report WWW page to the grader: Bill Mullally
What You Turn In
Create an HTML document "p2.html" that describes your project. In the first
part of the report, write a paragraph that describes how your modules work.
Also include psuedo-code and equations for the procedures you developed for
your particle animation and procedural texture mapping functions. Give
a block diagram that gives an overview of how the system modules fit together.
The detail you give should be sufficient for someone else to implement your
system.
Include at least three different image sequences (grayscale or color is
OK). You should include either images or movie files as part of the HTML
document you create. If you complete the extra credit, please include
an additional sequence that shows the 3D texture mapping "turned on."
Finally, include your source files, program executable, and Makefile. Please
be sure to tell us what computer platform (e.g., Windows, Linux, Solaris)
your tool runs on.
The report you write should be clear and to the point. The code you submit
should be well-structured and clearly documented.