ABSTRACT

In the previous chapter we were concerned with the behavior of a single ballfalling in gravity, being affected by wind, and bouncing off of planes. This allowed us to develop some key ideas related to physical simulation on a computer, including

stepping forward through time in discrete timesteps, using numerical integration

to convert accelerations to velocity updates and velocities to position updates,

detecting and responding to sub-timestep phenomena like collisions, and visual-

izing an evolving simulation as a sequence of animation frames. In this chapter, we

move on from the single ball problem to the problem of handling a particle system.

4.1 WHAT IS A PARTICLE SYSTEM? A particle system typically consists of a massive collection of particles, generated

from one or more locations in space, whose motion is determined by external forces.

These forces can be environmental, like wind and gravity for realistic effects, or

artificial, for more bizarre effects. Particles are usually able to detect and respond to

collisions or otherwise interact with scene geometry. Particle systems are especially

good for representing phenomena such as rain, snow, fire, smoke, dust, sandstorms,

fireworks, splashes, and spray. Figure 4.1 shows a few examples. In his classic paper,

Particle systems-A technique for modeling a class of fuzzy objects, Reeves [1983]

refers to these as amorphous phenomena, because they lack a concrete geometric

form and tend to spread over a region.