- Hands-On C++ Game Animation Programming
- Gabor Szauer
- 205字
- 2021-06-30 14:45:55
Chapter 3: Implementing Matrices
In the context of game animation, a matrix represents an affine transformation. It linearly maps points from one space to another. A mesh is represented by vertices, which are just points in space. These vertices are moved by multiplying them by a matrix.
In this chapter, you will learn matrix math and how to implement matrices in code. By the end of this chapter, you will have built a robust matrix library that can be used in any project. Matrices are important; they play a big role in the graphics pipeline. It's hard to render anything without using matrices.
You will only need to implement a square, 4 x 4 matrix. By the end of this chapter, you should be able to do the following:
- Understand what a matrix is
- Understand column-major matrix storage
- Multiply matrices together
- Invert a matrix
- Transform points and vectors by using a matrix
- Understand how to create matrices to view a three-dimensional world
Important information
In this chapter, you will implement a 4 x 4 matrix. The matrix implementation will rely on code to demonstrate concepts, rather than through the format of math definitions. If you're interested in the formal math behind matrices, check out https://gabormakesgames.com/matrices.html.