Game Engine Architecture

(Ben Green) #1

42 1. Introduction


SDK is now owned and distributed by NVIDIA, and the company is
adapting PhysX to run on its latest GPUs.

Open source physics and collision engines are also available. Perhaps the
best-known of these is the Open Dynamics Engine (ODE). For more informa-
tion, see htt p://www.ode.org. I-Collide, V-Collide, and RAPID are other popu-
lar non-commercial collision detection engines. All three were developed at the
University of North Carolina (UNC). For more information, see htt p://www.
cs.unc.edu/~geom/I_COLLIDE/index.html, htt p://www.cs.unc.edu/~geom/V_
COLLIDE/index.html, and htt p://www.cs.unc.edu/~geom/OBB/OBBT.html.

1.6.11. Animation
Any game that has organic or semi-organic characters (humans, animals, car-
toon characters, or even robots) needs an animation system. There are fi ve
basic types of animation used in games:
z sprite/texture an imation,
z rigid body hierarchy animation,
z skeletal animation,
z vertex animation, and
z morph targets.
Skeletal animation permits a detailed 3D character mesh to be posed by
an animator using a relatively simple system of bones. As the bones move, the
vertices of the 3D mesh move with them. Although morph targets and vertex
animation are used in some engines, skeletal animation is the most prevalent
animation method in games today; as such, it will be our primary focus in this
book. A typical skeletal animation system is shown in Figure 1.25.

Skeletal Animation

Animation
Decompression

Inverse
Kinematics (IK)

Game-Specific
Post-Processing
Sub-skeletal
Animation

LERP and
Additive Blending

Animation
Playback

Animation State
Tree & Layers

Figure 1.25. Skeletal animation subsystem.
Free download pdf