- Hands-On C++ Game Animation Programming
- Gabor Szauer
- 248字
- 2021-06-30 14:45:56
What is a matrix?
A matrix is a two-dimensional array of numbers. A square matrix is one whose width and height are the same. In this chapter, you will implement a 4 x 4 matrix; that is, a matrix with four rows and four columns. The elements of this matrix will be stored as a linear array.
A 4 x 4 matrix can be thought of as four vectors that have four components each, or an array of vec4s. If the vectors represent the columns of the matrix, the matrix is column-major. If the vectors represent the rows of the matrix, it is row-major.
Assuming a 4 x 4 matrix contains the letters A, B, C, D … P of the alphabet, it can be constructed as either a row- or column-major matrix. This is demonstrated in the following Figure 3.1:

Figure 3.1: Comparing row- and column-major matrices
Most math books and OpenGL use column-major matrices. In this chapter, you will be implementing column-major matrices as well. Understanding what is in a matrix is important. The diagonal of the matrix contains scaling information, and the final column contains translation:

Figure 3.2: What is stored in a matrix?
The upper 3 x 3 submatrix contains three vectors; each of these is a basis vector for the matrix's rotation. The basis vectors are the up, right, and forward directions stored in the matrix. You might have noticed that the rotation and scale components occupy the same space in the matrix.
- 從零開始構建企業級RAG系統
- C及C++程序設計(第4版)
- Visual Basic程序開發(學習筆記)
- 程序員數學:用Python學透線性代數和微積分
- Learning Python Design Patterns
- Node.js Design Patterns
- Swift Playgrounds少兒趣編程
- OpenCV 4計算機視覺項目實戰(原書第2版)
- Python機器學習算法: 原理、實現與案例
- Solr Cookbook(Third Edition)
- R Data Science Essentials
- Visual Basic程序設計(第三版)
- ASP.NET 4.0 Web程序設計
- Java高并發編程詳解:深入理解并發核心庫
- Scrapy網絡爬蟲實戰