This updated third edition addresses the mathematical skills that a programmer needs to develop a 3D game engine and computer graphics for professional-level games. "Mathematics For 3D Game Programming And Computer Graphics, Third Edition" is suitable for advanced programmers who are experienced with C++, DirectX, or OpenGL. The book begins at a fairly basic level, covering 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. It discusses the math first; then it presents how to translate the math into programs. By providing the math behind the effect, screenshots of the results, and samples of code that translate the math so that the effect is achieved, readers get the full story rather than only a mathematical explanation or a set of code samples that are not clearly drawn from mathematical expressions. With this revised edition, almost every chapter will provide a programming example taken directly from a real-world game programming context, and based on programs that have been written and used in game engine development.