Foundations

of

Game Engine Development

Foundations of Game Engine Development, Volume 1: Mathematics Foundations of Game Engine Development, Volume 2: Graphics Foundations of Game Engine Development, Volume 3: Animation Foundations of Game Engine Development, Volume 4: Physics

Foundations of Game Engine Development is a new book series currently being written by Eric Lengyel. Its four volumes cover the essentials of game engine development in the broad areas of mathematics, graphics, animation, and physics.

Foundations of Game Engine Development, Volume 1: Mathametics

Volume 1: Mathematics
Release date: September 2016
ISBN: 978-0-9858117-4-7
200 pages • Full color • Soft cover

Purchase on Amazon.com

The first volume 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.

Below is the full table of contents. The book includes 49 figures, 15 tables, 36 code snippets, 62 exercises, and 327 numbered equations.

Preface

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
  • Exercises for Chapter 1

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
  • Exercises for Chapter 2

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
  • Exercises for Chapter 3

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
  • Exercises for Chapter 4

Index

Download code listings

Foundations of Game Engine Development, Volume 2: Graphics

Volume 2: Graphics
ISBN: 978-0-9858117-5-4
Full color • Soft cover
Length to be determined

Below is a list of topics that are planned to be covered in the second volume.

  • View frustums
  • Projection matrices
  • Object culling
  • Light sources
  • Shadow mapping
  • Conventional shading
  • Physically-based shading
  • Volume rendering
  • Marching cubes
  • Scene organization
  • Zones and portals
Foundations of Game Engine Development, Volume 3: Animation

Volume 3: Animation
ISBN: 978-0-9858117-6-1
Full color • Soft cover
Length to be determined

Below is a list of topics that are planned to be covered in the third volume.

  • Bézier curves
  • B-splines
  • Hierarchical models
  • Morphing
  • Skinning
  • Forward kinematics
  • Inverse kinematics
  • Dual quaternions
  • Animation trees
  • Projectiles
  • Particle systems
  • Special effects
Foundations of Game Engine Development, Volume 4: Physics

Volume 4: Physics
ISBN: 978-0-9858117-7-8
Full color • Soft cover
Length to be determined

Below is a list of topics that are planned to be covered in the fourth volume.

  • Linear velocity, angular velocity
  • Forces, acceleration
  • Center of mass
  • Moment of inertia
  • Collision detection
  • GJK algorithm
  • Conservative advancement
  • Velocity constraints, position constraints
  • Lagrange multipliers
  • Jacobians
  • Split impulses
  • Joints (e.g., spherical, cylindrical, revolute)
  • Restitution
  • Friction
  • Rolling resistance
  • Buoyancy