Book description
3D Math Primer for Graphics and Game Development covers fundamental 3D math concepts that are especially useful for computer game developers and programmers. The authors discuss the mathematical theory in detail and then provide the geometric interpretation necessary to make 3D math intuitive. Important Notice: The digital edition of this book is missing some of the images or content found in the physical edition.
Table of contents
- Cover
- Title Page
- Copyright
- Contents
- Acknowledgements
- Chapter 1 Introduction
- Chapter 2 The Cartesian Coordinate System
- Chapter 3 Multiple Coordinate Spaces
- Chapter 4 Vectors
-
Chapter 5 Operations on Vectors
- 5.1 Linear Algebra vs. What We Need
- 5.2 Typeface Conventions
- 5.3 The Zero Vector
- 5.4 Negating a Vector
- 5.5 Vector Magnitude (Length)
- 5.6 Vector Multiplication by a Scalar
- 5.7 Normalized Vectors
- 5.8 Vector Addition and Subtraction
- 5.9 The Distance Formula
- 5.10 Vector Dot Product
- 5.11 Vector Cross Product
- 5.12 Linear Algebra Identities
- 5.13 Exercises
-
Chapter 6 A Simple 3D Vector Class
- 6.1 Class Interface
- 6.2 Class Vector3 Definition
-
6.3 Design Decisions
- 6.3.1 Floats vs. Doubles
- 6.3.2 Operator Overloading
- 6.3.3 Provide Only the Most Important Operations
- 6.3.4 Don’t Overload Too Many Operators
- 6.3.5 Use Const Member Functions
- 6.3.6 Use Const & Arguments
- 6.3.7 Member vs. Nonmember Functions
- 6.3.8 No Default Initialization
- 6.3.9 Don’t Use Virtual Functions
- 6.3.10 Don’t Use Information Hiding
- 6.3.11 Global Zero Vector Constant
- 6.3.12 No “point3” Class
- 6.3.13 A Word on Optimization
- Chapter 7 Introduction to Matrices
- Chapter 8 Matrices and Linear Transformations
- Chapter 9 More on Matrices
-
Chapter 10 Orientation and Angular Displacement in 3D
- 10.1 What is Orientation?
- 10.2 Matrix Form
- 10.3 Euler Angles
-
10.4 Quaternions
- 10.4.1 Quaternion Notation
- 10.4.2 Quaternions as Complex Numbers
- 10.4.3 Quaternions as an Axis-Angle Pair
- 10.4.4 Quaternion Negation
- 10.4.5 Identity Quaternion(s)
- 10.4.6 Quaternion Magnitude
- 10.4.7 Quaternion Conjugate and Inverse
- 10.4.8 Quaternion Multiplication (Cross Product)
- 10.4.9 Quaternion “Difference”
- 10.4.10 Quaternion Dot Product
- 10.4.11 Quaternion Log, Exp, and Multiplication by a Scalar
- 10.4.12 Quaternion Exponentiation
- 10.4.13 Quaternion Interpolation — aka “Slerp”
- 10.4.14 Quaternion Splines — aka “Squad”
- 10.4.15 Advantages/Disadvantages of Quaternions
- 10.5 Comparison of Methods
- 10.6 Converting between Representations
- 10.7 Exercises
- Chapter 11 Transformations in C++
- Chapter 12 Geometric Primitives
-
Chapter 13 Geometric Tests
- 13.1 Closest Point on 2D Implicit Line
- 13.2 Closest Point on Parametric Ray
- 13.3 Closest Point on Plane
- 13.4 Closest Point on Circle/Sphere
- 13.5 Closest Point in AABB
- 13.6 Intersection Tests
- 13.7 Intersection of Two Implicit Lines in 2D
- 13.8 Intersection of Two Rays in 3D
- 13.9 Intersection of Ray and Plane
- 13.10 Intersection of AABB and Plane
- 13.11 Intersection of Three Planes
- 13.12 Intersection of Ray and Circle/Sphere
- 13.13 Intersection of Two Circles/Spheres
- 13.14 Intersection of Sphere and AABB
- 13.15 Intersection of Sphere and Plane
- 13.16 Intersection of Ray and Triangle
- 13.17 Intersection of Ray and AABB
- 13.18 Intersection of Two AABBs
- 13.19 Other Tests
- 13.20 Class AABB3
- 13.21 Exercises
- Chapter 14 Triangle Meshes
-
Chapter 15 3D Math for Graphics
- 15.1 Graphics Pipeline Overview
- 15.2 Setting the View Parameters
- 15.3 Coordinate Spaces
-
15.4 Lighting and Fog
- 15.4.1 Math on Colors
- 15.4.2 Light Sources
- 15.4.3 The Standard Lighting Equation — Overview
- 15.4.4 The Specular Component
- 15.4.5 The Diffuse Component
- 15.4.6 The Ambient Component
- 15.4.7 Light Attenuation
- 15.4.8 The Lighting Equation — Putting It All Together
- 15.4.9 Fog
- 15.4.10 Flat Shading and Gouraud Shading
- 15.5 Buffers
- 15.6 Texture Mapping
- 15.7 Geometry Generation/Delivery
- 15.8 Transformation and Lighting
- 15.9 Backface Culling and Clipping
- 15.10 Rasterization
- Chapter 16 Visibility Determination
- Chapter 17 Afterword
- Appendix A Math Review
- Appendix B References
- Index
Product information
- Title: 3D Math Primer for Graphics and Game Development
- Author(s):
- Release date: June 2002
- Publisher(s): Jones & Bartlett Learning
- ISBN: 9781449612719
You might also like
book
3D Math Primer for Graphics and Game Development, 2nd Edition
This engaging book presents the essential mathematics needed to describe, simulate, and render a 3D world. …
book
Mathematics for Game Programming and Computer Graphics
A comprehensive guide to learning fundamental 3D mathematical principles used in games and computer graphics by …
book
Game Programming in C++: Creating 3D Games, First Edition
You can program games in many languages, but C++ remains the key language used by many …
book
Real-Time 3D Graphics with WebGL 2 - Second Edition
A comprehensive guide with 80+ examples on 3D programming in WebGL 2, covering computer graphics topics …