Game Engine Architecture

(Ben Green) #1

482 10. The Rendering Engine


An in-depth coverage of these engine systems is beyond our scope. In the
following sections, we’ll provide a brief overview of these rendering systems,
and point you in the direction of additional information.

10.4.1. Particle Effects
A particle rendering system is concerned with rendering amorphous objects
like clouds of smoke, sparks, fl ame, and so on. These are called particle eff ects.
The key features that diff erentiate a particle eff ect from other kinds of render-
able geometry are as follows:
z It is composed of a very large number of relatively simple pieces of geom-
etry—most oft en simple cards called quads, composed of two triangles
each.
z The geometry is oft en camera-facing (i.e., billboarded ), meaning that the
engine must take steps to ensure that the face normals of each quad
always point directly at the camera’s focal point.
z Its materials are almost always semi-transparent or translucent. As such,
particle eff ects have some stringent rendering order constraints that do
not apply to the majority of opaque objects in a scene.
z Particles animate in a rich variety of ways. Their positions, orientations,
sizes (scales), texture coordinates, and many of their shader parameters
vary from frame to frame. These changes are defi ned either by hand-
authored animation curves or via procedural methods.
z Particles are typically spawned and killed continually. A particle emitt er
is a logical entity in the world that creates particles at some user-speci-
fi ed rate; particles are killed when they hit a predefi ned death plane, or

Figure 10.58. Some particle effects.
Free download pdf