Matrix Multiplication
All right, you've got yourself a fancy, shmancy triangle. You probably want to
make it do something else now, right? Well, let's talk about rotations and
translations. As mentioned previously, matrices are behind essentially everything
you do in 3D graphics. This is especially the case when you're trying to move,
rotate, or scale an object. You saw in the previous code that you had to set the
World
property of the BasicEffect
to Matrix.Identity
. Let's see if we can make a little more sense out of
that now.
You can think of the World
property of a
BasicEffect
as a matrix that tells XNA where
to draw what you're about to tell it to draw and how to position it in the world
with an appropriate rotation and scale. It's similar to a coordinate at which to
draw the item (in fact, a 3D coordinate is contained within the matrix), but it's
much more than that, holding all the information for the rotation and scale as well.
We're not going to go into all the details here, but if you're interested in
investigating further, there are a lot of resources in mathematical textbooks and on
the Internet that will teach you all that you want to know about matrix
multiplication.
For the purposes of this book and as an introduction to XNA, you really just need
to know that matrix multiplication is behind all rotations, scales, translations
(movement), etc. in 3D graphics. The matrix represented by Matrix.Identity
is what's known as the identity
matrix. The identity matrix is a special ...
Get Learning XNA 3.0 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.