In this assignment, you will simulate a set of point-mass particles to create an animation. Your animation should include at least one example of *each* of the following techniques (discussed in class):
Each of these parts are discussed in detail below. Your simulation will be visualized using Inventor graphics on the SGI platform. A program stub that draws particles (spheres) in Inventor and captures images is available in: /net/hg27/animation/class/particles/.
This program is well documented and includes a command line option to read in an arbitrary 3D model in Wavefront format. A small set of Wavefront models are included in the directory with the program.
This technique was seen in class in Karl Sims' piece "Particle Dreams." This piece included a scene where particles were positioned on the surface of a head. Your simulation may use this surface positioning as initial conditions for the particles or as an intermediate or final position for the particles.
We have provided a number of example surface models. These models can be read into a data base by the program stub using the model filename as a command line argument. The data base will contain positions for all of the vertices in the model and can be queried.
Remember in Sims' piece, the head positioning was used as initial condition for an animation where the particles "blew" out of the mouth of the head in a vortex effect. Feel free to experiment with this type of technique or try your own ideas.
In this assignment, we use the term "force field" to mean any of a number of operations that apply an acceleration (A = F/m) to the particles based on position, velocity, and/or mass. A number of techniques were discussed in class. Some suggestions include:
A more ambitious version of this portion of the assignment would include accelerations caused by springs between particles. In either case, the particles should move in a coherent fashion under some force field that is not merely a constant force due to gravity.
Your simulation should include at least one instance where the particles bounce off of a plane (or sphere, etc.). This section will include some type of collision detection and collision resolution. Damping during collision is recommended to maintain believable and richer behavior.
A plane is the easiest surface with which to collide. However, feel free to tackle collisions with multiple planes, spheres, or other surfaces to add to the quality of your animation. A waterfall effect like we saw in Sims' piece could be created from particles bouncing off of a small number of strategically-placed spheres.
Please, be creative. This assignment is an open-ended one. The requirements are meant to exercise your technical and creative skills. If any of these requirements restrict your ideas, feel free to contact Jessica (jkh@cc) to discuss possible modifications to the assignment.