Mathematics for Game Developers

Free Download

Authors:

Edition: 1

Series: Game Development

ISBN: 1-59200-038-X, 9781592000388

Size: 15 MB (15561194 bytes)

Pages: 648/649

File format:

Language:

Publishing Year:

Category:

Christopher Tremblay1-59200-038-X, 9781592000388

Mathematics for Game Developers is just that—a math book designed specifically for the game developer, not the mathematician. As a game developer, you know that math is a fundamental part of your programming arsenal. In order to program a game that goes beyond the basics, you must first master concepts such as matrices and vectors. In this book, you will find some unique solutions for dealing with real problems you’ll face when programming many types of 3D games. Not only will you learn how to solve these problems, you’ll also learn why the solution works, enabling you to apply that solution to other problems. You’ll also learn how to leverage software to help solve algebraic equations. Through numerous examples, this book clarifies how mathematical ideas fit together and how they apply to game programming.

Table of contents :
Team DDU……Page 1
Contents……Page 7
Introduction……Page 14
Part I: The Basics……Page 18
1 Equation Manipulation and Representation……Page 20
Choosing a Coordinate System……Page 21
Equation Representation……Page 31
Using Polynomial Roots to Solve Equations……Page 35
Substitution……Page 42
O Vector, What Art Thou?……Page 46
Basic Operations and Properties……Page 48
Advanced Operations and Properties……Page 53
Vector Spaces……Page 62
3 Meet the Matrices……Page 70
Meat, the Matrices……Page 71
Basic Operations and Properties……Page 72
Advanced Operations and Properties……Page 81
Matrix Decomposition……Page 98
Eigenvectors……Page 106
Diagonalization……Page 108
Vector Revision……Page 109
4 Basic Geometric Elements……Page 112
Creating Lines……Page 113
Generating Planes……Page 115
Constructing Spheres……Page 118
When Elements Collide……Page 120
Know Your Distances……Page 132
3D File Formats……Page 140
5 Transformations……Page 142
It’s All About the Viewpoint……Page 143
Linear Transformations……Page 145
Multiple Linear Transformations……Page 155
Projections……Page 161
Non-Linear Transformations……Page 168
6 Moving to Hyperspace Vectors: Quaternions……Page 170
Complex Numbers……Page 171
Basic Quaternions……Page 175
Advanced Operations on Quaternions……Page 178
Part II: Physics……Page 184
7 Accelerated Vector Calculus for the Uninitiated……Page 186
The Concept of Limits……Page 187
Derivatives (The Result of Differentiation)……Page 192
Reversing: Integration……Page 208
8 Gravitating Around Basic Physics……Page 226
Move That Body……..Page 227
Physical Force……Page 232
Energy……Page 244
9 Advanced Physics……Page 252
Angular Movement……Page 253
Oscillations……Page 259
Center of Mass……Page 274
Angular Forces……Page 276
10 And Then It Hits You: You Need Collision Detection……Page 280
Environmental Collisions……Page 281
Collisions of Objects Among Themselves……Page 286
Picking……Page 304
Part III: Playing with Numbers……Page 310
11 Educated Guessing with Statistics and Probability……Page 312
Basic Statistics Principles……Page 313
Random Number Generation (Uniform Deviates)……Page 319
Distributions……Page 327
Intelligence Everywhere……Page 336
12 Closing the Gap for Numerical Approximation……Page 340
Solution Approximation……Page 341
2D Function Approximation……Page 344
Multivariable Function Approximation……Page 375
Splines……Page 380
Surfaces……Page 402
Part IV: Rendering and Lighting……Page 406
14 Graphics-Generation Engines……Page 408
Decals……Page 409
Billboards……Page 414
Applications……Page 419
15 Visibility Determination: The World of the Invisible……Page 422
GPU-Level Visibility Determination……Page 423
CPU Culling……Page 426
16 Space Partitioning: Cleaning Your Room……Page 444
Quadtrees and Octrees……Page 447
k-D Trees……Page 448
Binary Space Partitioned (BSP) Trees……Page 454
Portal Subdivision……Page 458
17 Filling the Gaps with Rendering Techniques……Page 464
Studying the 3D Pipeline……Page 465
Texture Transformations……Page 467
Cube Map Tricks……Page 480
Cel Shading……Page 483
Shadows……Page 485
18 Building a Light Show……Page 492
Studying the Rasterization Pipeline……Page 493
Light a Ray Tracing Model……Page 500
Light Sources……Page 506
Lighting Models……Page 509
Part V: Optimizations……Page 518
19 The Quick Mind: Computational Optimizations……Page 520
Fixed Points……Page 521
IEEE Floating Points……Page 534
Condition Arithmetic……Page 541
20 Using SIMD to Move Linear Algebra Functions onto the Highway……Page 554
Matrix Transposition……Page 555
Dot Product……Page 557
Vector Length and Normalization……Page 559
Matrix-Vector Multiplication……Page 561
Matrix-Matrix Multiplication……Page 564
Matrix Determinant……Page 568
Cross Product……Page 572
Matrix Division (Inverse)……Page 573
21 Kicking the Turtle: Approximating Common and Slow Functions……Page 580
Transcendental Function Evaluation……Page 581
Physical Model Approximation……Page 601
Appendixes……Page 606
Appendix A Notation and Conventions……Page 608
Appendix B Trigonometry……Page 610
Symmetry……Page 611
Pythagorean Identities……Page 614
Exponential Identities……Page 615
Cosine and Sine Laws……Page 617
Inverse Functions……Page 618
Appendix C Integral and Derivative Tables……Page 622
Appendix D What’s on the CD……Page 628
Index……Page 630

Reviews

There are no reviews yet.

Be the first to review “Mathematics for Game Developers”
Shopping Cart
Scroll to Top