The first volume of Foundations of Game Engine Development discusses the mathematics needed by engineers who work on games or other types of virtual simulations. The book begins with conventional treatments of topics such as linear algebra, transforms, and geometry. Then, it introduces Grassmann algebra and geometric algebra to provide a much deeper understanding of the subject matter and highlight the places where traditional arithmetic with vectors, matrices, quaternions, etc., isn't quite correct. Includes exercises.
Author(s): Eric Lengyel
Publisher: Terathon Software
Year: 2016
Language: English
Pages: 200
Tags: Game, Development, Mathematics
Chapter 1: Vectors and Matrices
1.1 Vector Fundamentals
1.2 Basic Vector Operations
1.2.1 Magnitude and Scalar Multiplication
1.2.2 Addition and Subtraction
1.3 Matrix Fundamentals
1.4 Basic Matrix Operations
1.4.1 Addition, Subtraction, and Scalar Multiplication
1.4.2 Matrix Multiplication
1.5 Vector Multiplication
1.5.1 Dot Product
1.5.2 Cross Product
1.5.3 Scalar Triple Product
1.6 Vector Projection
1.7 Matrix Inversion
1.7.1 Identity Matrices
1.7.2 Determinants
1.7.3 Elementary Matrices
1.7.4 Inverse Calculation
1.7.5 Inverses of Small Matrices
Chapter 2: Transforms
2.1 Coordinate Spaces
2.1.1 Transformation Matrices
2.1.2 Orthogonal Transforms
2.1.3 Transform Composition
2.2 Rotations
2.2.1 Rotation About a Coordinate Axis
2.2.2 Rotation About an Arbitrary Axis
2.3 Reflections
2.4 Scales
2.5 Skews
2.6 Homogeneous Coordinates
2.7 Quaternions
2.7.1 Quaternion Fundamentals
2.7.2 Rotations With Quaternions
Chapter 3: Geometry
3.1 Triangle Meshes
3.2 Normal Vectors
3.2.1 Calculating Normal Vectors
3.2.2 Transforming Normal Vectors
3.3 Lines and Rays
3.3.1 Parametric Lines
3.3.2 Distance Between a Point and a Line
3.3.3 Distance Between Two Lines
3.4 Planes
3.4.1 Implicit Planes
3.4.2 Distance Between a Point and a Plane
3.4.3 Reflection Through a Plane
3.4.4 Intersection of a Line and a Plane
3.4.5 Intersection of Three Planes
3.4.6 Intersection of Two Planes
3.4.7 Transforming Planes
3.5 Plücker Coordinates
3.5.1 Implicit Lines
3.5.2 Homogeneous Formulas
3.5.3 Transforming Lines
Chapter 4: Advanced Algebra
4.1 Grassmann Algebra
4.1.1 Wedge Product
4.1.2 Bivectors
4.1.3 Trivectors
4.1.4 Algebraic Structure
4.1.5 Complements
4.1.6 Antivectors
4.1.7 Antiwedge Product
4.2 Projective Geometry
4.2.1 Lines
4.2.2 Planes
4.2.3 Join and Meet
4.2.4 Line Crossing
4.2.5 Plane Distance
4.2.6 Summary and Implementation
4.3 Matrix Inverses
4.4 Geometric Algebra
4.4.1 Geometric Product
4.4.2 Vector Division
4.4.3 Rotors
4.5 Conclusion