Page Tools:
  • print-friendly version

3D Math Primer for Graphics and Game Development ,

Author(s): Fletcher Dunn
Ian Parberry, Professor of Computer Science, University of North Texas
Details:
  • ISBN-13: 9781556229114
  • ISBN-10:1556229119
  • Paperback    429 pages      © 2002
Price: International Sales $49.95 US List
Add to Cart Request a Review Copy

Overview

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. Working C++ classes illustrate how to put the techniques into practice, and exercises at the end of each chapter help reinforce the concepts. 


This book:

  • Explains basic concepts such as vectors, coordinate spaces, matrices, transformations, Euler angles, homogenous coordinates, geometric primitives, intersection tests, and triangle meshes.
  • Discusses orientation in 3D, including thorough coverage of quaternions and a comparison of the advantages and disadvantages of different representation techniques.
  • Describes working C++ classes for mathematical and geometric entities and several different matrix classes, each tailored to specific geometric tasks.
  • Includes complete derivations for all the primitive transformation matrices.

 

Preview Chapter 7 

ShowKey Features

  • Explains basic concepts such as vectors, coordinate spaces, matrices, transformations, Euler angles, homogenous coordinates, geometric primitives, intersection tests, and triangle meshes.
  • Discusses orientation in 3D, including thorough coverage of quaternions and a comparison of the advantages and disadvantages of different representation techniques.
  • Describes working C++ classes for mathematical and geometric entities and several different matrix classes, each tailored to specific geometric tasks.
  • Includes complete derivations for all the primitive transformation matrices.

Back to top

ShowTable of Contents

Chapter 1: Introduction
     What is 3D Math
     Why you should read this book
     What you should know before reading this book
     Overview

Chapter 2: Cartesian Coordinate Systems
     1D Mathematics
     2D Cartesian Space
     3D Cartesian Space
     Summation and product notation

Chapter 3: Vectors
     Vector - a mathematical definition
     Vector - a geometric definition
     Vectors vs. points

Chapter 4: Polar Coordinate Systems
     Trig review
     2D polar space
     Using 2D polar coordinates to specify vectors
     3D polar space

Chapter 5: Multiple Coordinate Spaces
     Why multiple coordinate spaces
     Some useful coordinate spaces
     Nested coordinate spaces
     Specifying coordinate spaces
     Coordinate space transformations

Chapter 6: Operations on Vectors
     More than linear algebra
     Typeface conventions
     The zero vector
     Negating a vector
     Vector magnitude (length)
     Geometric interpretation
     Vector multiplication by a scalar
     Unit vectors
     Vector addition and subtraction
     The distance formula
     Vector dot product
     Vector cross product
     Linear algebra identities

Chapter 7: Introduction to Matrices
     Matrix - a mathematical definition
     Matrix - a geometric interpretation

Chapter 8: Matrices and Linear Transformations
     Rotation
     Scale
     Orthographic projection
     Reflection
     Shearing
     Combining transformations
     Classes of transformations

Chapter 9: More on Matrices
     Determinant of a matrix
     Inverse of a matrix
     Orthogonal matrices
     4x4 homogenous matrices
     4x4 matrices and perspective projection

Chapter 10: Orientation and Angular Displacement in 3D
     What exactly is "orientation?"
     Matrix form
     Euler angles
     Axis-angle representation
     Quaternions
     Exponential map
     Comparison of methods
     Converting between representations

Chapter 11: Control Systems for Games
     More fun with linear interpolation
     Issues related to reading input devices
     1st order lags
     Spring/damper systems
     PID controllers

Chapter 12: Geometric Primitives
     Representation techniques
     Lines and rays
     Spheres and circles
     Bounding boxes
     Planes
     Triangles
     Polygons

Chapter 13: Geometric Tests
     Closest point on 2D implicit line
     Closest point on parametric ray
     Closest point on plane
     Closest point on circle/sphere
     Closest point in AABB
     Intersection tests
     Intersection of two implicit lines in 2D
     Intersection of two rays in 3D
     Intersection of ray and plane
     Intersection of AABB and plane
     Intersection of three planes
     Intersection of ray and circle/sphere
     Intersection of two circles/spheres
     Intersection of sphere and AABB
     Intersection of sphere and plane
     Intersection of ray and triangle
     Intersection of ray and AABB
     Intersection of two AABBs
     Other tests

Chapter 14: Mathematical Topics From 3D Graphics
     Graphics pipeline overview
     Viewing in 3D
     Coordinate spaces
     Math on colors
     Lighting and fog
     Buffers
     Texture mapping
     Geometry generation/delivery
     Vertex level operations
     Backface culling and clipping
     Rasterization

Chapter 15: Curves in 3D
     Parametric polynomial curves
     Polynomial interpolation
     Hermite curves
     Bezier curves
     Summary of Monomial, Hermite, and Bezier forms
     Subdivision
     Higher degree parametric curves

Chapter 16: Splines
     Rules of the game
     Hermite and Bezier splines
     Continuity
     Automatic tangent control
     Nonuniform splines and animation control
     B-splines

Answers to the exercises
Index





    


Back to top

ShowAbout the Author(s)

Fletcher Dunn



Fletcher Dunn is the Technical Director for Wideload Games in Chicago, a Disney Interactive Studio. He has been making video games for 14 years, with 10 shipped titles on 7 platforms and credits in several other games. Prior to joining Wideload, he worked for Terminal Reality in Dallas for 12 years, serving as lead programmer for BloodRayne and later as Principal Programmer, where he was one of the architects of the Infernal Engine. He thinks a 3D math book can be approachable and entertaining at the same time it is challenging and technically accurate.

 

 

Ian Parberry-Professor of Computer Science, University of North Texas

Ian Parberry is a professor of computer science at the University of North Texas and is internationally recognized as one of the top academics teaching computer game programming with DirectX. He is also the author of Learn Computer Game Programming with DirectX 7.0 and Introduction to Computer Game Programming with DirectX 8.0. 

Back to top

ShowSamples & Additional Resources

Back to top

ShowResources

Back to top