Game Development Reference
In-Depth Information
1.4.4
Inverse and Identity
Just as we can multiply a scalar by 1 to no effect, there is an identity transforma-
tion that produces the original vector. This is represented by the matrix E ,which
is a square diagonal matrix, sized appropriately to perform the multiplication on
the vector and with all 1s on the diagonal. For example, the following will work
for vectors in
3 :
R
100
010
001
.
E =
Intuitively, this makes sense. If we examine the columns, we will see they are just
e 1 , e 2 ,and e 3 , thereby transforming the basis vectors to themselves.
Note that the identity matrix is often represented in other texts as I .Weare
using E to distinguish it from the inertial tensor, as discussed below.
The equivalent to standard division is the inverse. The inverse reverses the
effect of a given transformation, as represented by the following:
x = A 1 Ax .
However, just as we can't divide by 0, we can't always find an inverse for a
transformation. First, only transformations from an n -dimensional space to an
n -dimensional space have inverses. And of those, not all of them can be inverted.
For example, the transformation
( x )= 0 has no inverse.
Discussing how to invert matrices in a general manner is out of the scope of
this chapter; it is recommended that the reader see [Anton and Rorres 94], [Golub
and Van Loan 93], or [Press et al. 93] for more information.
T
1.4.5 Affine Transformations
An affine transformation on a point x performs the basic operation
z = Ax + y ,
where A and y are a matrix and vector, respectively, of the appropriate sizes to
perform the operation. We can also represent this as a matrix calculation:
z
1
= Ay
0 T
x
1
.
1
In general, in physical simulations, we are concerned with two affine transfor-
mations: translation (changing position) and rotation (changing orientation). (See