Tools Engineer: Core Game Development - Math
Knowledge
list reference from tools-engineer-checklist.md by Geoff Evans
Numbers
- Radix (2: binary, 10: decimal, 16: hexadecimal)
Alegbra
- Polynomials
- Conic sections
Linear Algebra
- Matrices for representing systems of equations
- The determinant and what it tells you about a matrix
Linear Algebra
- All the trigonometric functions
- How each trig function relates to coordinate components on the unit circle
ℝ3 and affine transformations:
- Fundamental vector operations: addition, subtraction, dot product, cross product
- Vectors that are "normalized," "orthogonal," and "ortho-normalized"
- Basis vectors of a matrix
- Row-major vs. column-major notation
- The plane equation, and its related to the dot product
- Affine transform composition: scale, rotation, translation
- Affine transform concatenation: global/parent/object space
- Affine transform inversion
- Affine transform decomposition
Rotations
- Euler angles, axis-angle, quaternion, rotation matrices
- 3-by-3 Rotation matrices (matrices, normal and non-normal, orthogonal and non-orthogonal)"
- How euler angles are short-hand for rotation matrices
- How to intuit a rotation from a 3-by-3 ortho-normalized matrix
- Euler angle static and rotating frame conventions
Resources
Book Links
- 3D Math Primer for Graphics and Game Development
- Essential Mathematics for Games and Interactive Applications
- Mathematics for 3D Game Programming and Computer Graphics
Web Links
- Linear algebra for game developers
- Vectors and Matrices Marq Singer
- The Matrix and Quaternions FAQ
- Math for Game Developers - Jorge Rodriguez
- Immersive Linear Algebra
- Visualizing quaternions