CS 551/651: Advanced Computer Graphics
Exercise #2 (Optional)
Goal: Experiment with particle systems to generate cool-looking effects
Assigned: Thursday, April 29, 1999
Due: Demo to me by or before 5 PM, Tuesday, May 11, 1999
Relevant reading /software:
Synopsis: This is an optional exercise that you may do for extra credit. The goal, quite simply, is to have fun and do some cool computer graphics using an animation technique called particle systems. The assignment is very open-ended: using Dave McAllister's particle system API, at the URL given above, as a starting point, write a program to generate one or more neat general effects. You may want to use the effects built into the API, and render the particles using interesting OpenGL primitives, or you may want to build your own interesting effect using the API effects as building blocks, and using the simple point-rendering for particles that the API provides. Or you may want to do both. The API is written in C++ and runs under UNIX (SGI IRIX to be specific) or Windows (Visual C++ to be specific). A sample GLUT program implementing many built-in effects is provided, along with Makefiles for UNIX and project files for windows. You may wish to simply add your effect to this program using the framework already provided.
Grading: The exercise can earn 1, 2, or 3 extra-credit points, to be added to the assignment total. Grading will be subjective, based the visual appeal of your effect(s) and the amount of work they reflect. You will not be judged particularly on speed, though if you intend to use texture mapping I recommend you compile on an SGI (see below).
Turning in the assignment: Sometime between Tuesday, May 4 and the due date above, you will demonstrate your finished product to me. I will be posting a list of available demo slots. Along with your demo you will turn in handouts of all the code you have written for the exercise. You can perform the demo on your laptop, on my PC, or on our SGI, a fast machine with very high-end texture-mapping hardware. Be sure you come to the demo with a ready-to-run executable as well as all your code.
Honor Code: You are welcome to use code from any source for this exercise, provided you are integrating it into the particle system API yourself, and provided you attribute the source.