This resource illustrates the mathematics that a game programmer would need to develop a professional-quality 3D engine. The book starts at a fairly basic level in each of several areas such as vector geometry, modern algebra, and physics, and then progresses to somewhat more advanced topics. Particular attention is given to derivations of key results, ensuring that the reader is not forced to endure "gaps" in the theory. The book discusses applications in the context of the OpenGL architecture. It assumes basic understanding of matrix algebra, trigonometry, and calculus, and concentrates on key math topics for programming game engines and computer graphics. Included are exercise sets which should allow the book to be used as a textbook. The book discusses applications in the context of the OpenGL architecture due to its cross-platform nature with references to certain 3D hardware such as the GeForce from Nvidia and the Radeon from ATI Presents mathematical theory and subsequently provides examples using practical applications.