Particle System

A particle system is a computer graphics technique to simulate “fuzzy” phenomena which are hard to render using conventional methods. Some examples would be natural phenomena such as fire, smoke, flowing water, falling leaves, and clouds, or unnatural phenomena such as glowing trails, and magic spells [1].

Particle systems are of interest because of their ability to produce natural phenomena in real time. William Reeves recognized this as he searched for a method to create realistic fire for the Genesis Demo sequence as part of his work on Star Trek II: The Wrath of Khan. He realized that conventional methods are effective in creating objects that have smooth, well-defined surfaces, however, when it came to surfaces that are not easily definable, such methods were not efficient. He named such objects as “fuzzy”, and proposed that such objects are better modeled as a system of particles behaving within a set of dynamic rules [3]. Although particles had been used previous to this work to produce phenomena such as smoke or galaxies of stars, they were difficult to control. Reeves realized that by applying a set of constraints to the particles, one could achieve a chaotic effect while preserving some creative control [2].

“So how does it work,” you ask? A particle system is a collection of particles in a 3D space. These particles are different from regular geometric objects as they are not static. Rather, the particles are born, move, change from, and die over time. By adjusting factors that influence this life cycle, you can create different types of phenomena. In addition to parameters that define the particles life cycle, each particle also has a random element that affects its behavior during its lifetime. This random element is called the “stochastic process”. This is a rather good term to remember considering today is Friday, and that it will definitely dazzle your friends at parties. The “Ocean Spray in Your Face,” by Jeff Lander, is a good article to look at in order to create your own particle system [2].

The typical implementation of a particle system involves a source for the particles called an emitter. The emitter’s location in 3D space determines where the particles are generated and how they proceed. For instance, a cube or a plane can be used as an emitter. The emitter is usually invisible, and only the particles are rendered. After generation of particles, there is a simulation stage. During the simulation stage, the number of new particles that must be created is calculated based on the spawn rate and the update intervals. The velocity, color, and other characteristics of the particle depend on the parameters of the emitter. The existing particles are checked against their lifetime, and if they are too “old,” they die off. The other active particles are advanced based on some physical simulation which takes into account forces like gravity, friction, wind, etc. After the update of the particles, each particle is rendered [1].

There are some differences in creating natural phenomena such as snow, or moving grass. For snow, the particles are dynamic and hence they are animated. In this animation, each frame has particles at specific locations during their life cycle. However, for material similar to hair, the entire life cycle of a particle is rendered simultaneously. The result is strands of material that show the particles trajectory over its entire lifetime. These strands can be used to simulate hair, fur, grass, and other similar materials [1].

I came across an interesting paper, produced at the University of Utah, regarding the rendering of fire. The paper looks at physically based realistic rendering of fire using theoretical foundations in molecular chemistry and radiative physics. By looking at the atomic and molecular characteristics, the spectral properties of various chemical species in the flame are computed. Afterwards, the radiative energy transfer is modeled to predict the radiant energy that reaches a given observer [4]. Be sure to take a look at the very cool video below for interesting fire renderings based on this research, and remember “stochastic process”.

http://www.cs.utah.edu/%7Evpegorar/research/2006_EGWNP/PhysicallyBasedRealisticFireRendering.mov

Below is a picture of the fire rendering based on the results of [4]:

FireBreathingDragon

[1] http://en.wikipedia.org/wiki/Particle_system

[2] http://www.double.co.nz/dust/col0798.pdf

[3] http://portal.acm.org/citation.cfm?id=357320

[4] http://www.cs.utah.edu/~vpegorar/research/2006_EGWNP/PhysicallyBasedRealisticFireRendering.pdf

Posted in Topics: Uncategorized

Jump down to leave a comment.

Leave a Comment

You must be logged in to post a comment.



* You can follow any responses to this entry through the RSS 2.0 feed.