Game Engine Architecture

(Ben Green) #1
647

defi nes the axis of rotation, scaled by the two-dimensional angular velocity
ωθuu= of the body about the u-axis. Hence,


ωω()t tt==uu() ()t^ uuθ() ().t


In linear dynamics, we saw that if there are no forces acting on a body,
then the linear acceleration is zero, and linear velocity is constant. In two-
dimensional angular dynamics, this again holds true: If there are no torques
acting on a body in two dimensions, then the angular acceleration α is zero,
and the angular speed ω about the z-axis is constant.
Unfortunately, this is not the case in three dimensions. It turns out that
even when a rigid body is rotating in the absence of all forces, its angular
velocity vector ω(t) may not be constant because the axis of rotation can con-
tinually change direction. You can see this eff ect in action when you try to
spin a rectangular object, like a block of wood, in mid-air in front of you. If
you throw the block so that it is rotating about its shortest axis, it will spin in a
stable way. The orientation of the axis stays roughly constant. The same thing
happens if you try to spin the block about its longest axis. But if you try to spin
the block around its medium-sized axis, the rotation will be utt erly unstable.
The axis of rotation itself changes direction wildly as the object spins. This is
shown in Figure 12.26.
The fact that the angular velocity vector can change in the absence of
torques is another way of saying that angular velocity is not conserved. How-
ever, a related quantity called the angular momentum does remain constant
in the absence of forces and hence is conserved. Angular momentum is the
rotational equivalent of linear momentum:


Angular: LI()t= ω();t Linear: pv()t mt=^ ().


Like the linear case, angular momentum L(t) is a three-element vector.
However, unlike the linear case, rotational mass (the inertia tensor) is not a
scalar but rather a 3 × 3 matrix. As such, the expression Iω is computed via a
matrix multiplication:


Figure 12.26. A rectangular object that is spun about its shortest or longest axis has a
constant angular velocity vector. However, when spun about its medium-sized axis, the
direction of the angular velocity vector changes wildly.


12.4. Rigid Body Dynamics

Free download pdf