Math For 3D Game Programming & Computer Graphics
This completely updated second edition illustrates the mathematical concepts that a game programmer would need to develop a professional-quality 3D engine. Although the book is geared toward applications in game development, many of the topics appeal to general interests in 3D graphics. It starts at a fairly basic level in areas such as vector geometry and linear algebra, and then progresses to more advanced topics in 3D game programming such as illumination and visibility determination. Particular attention is given to derivations of key results, ensuring that the reader is not forced to endure gaps in the theory. The book assumes a working knowledge of trigonometry and calculus, but also includes sections that review the important tools used from these disciplines, such as trigonometric identities, differential equations, and Taylor series.Chapter 0 The Rendering Pipeline Chapter 1 Vectors Chapter 2 Matrices Chapter 3 Transforms Chapter 4 3D Engine Geometry Chapter 5 Ray Tracing Chapter 6 Illumination Chapter 7 Visibility Determination Chapter 8 Collision Detection Chapter 9 Polygonal Techniques Chapter 10 Shadows Chapter 11 Linear Physics Chapter 12 Rotational Physics Chapter 13 Fluid Simulation Chapter 14 Numerical Methods Chapter 15 Curves and Surfaces Appendix A Complex Numbers Appendix B Trigonometry Reference Appendix C Coordinate Systems Appendix D Taylor Series Appendix E Answers to Exercises