Game Physics is an introduction to the ideas and techniques needed to create physically realistic 3D graphic environments. As a companion volume to Dave Eberly's industry standard 3D Game Engine Design, Game Physics shares a similar practical approach and format. Dave includes simulations to introduce the key problems involved and then gradually reveals the mathematical and physical concepts needed to solve them. He then describes all the algorithmic foundations and uses code examples and working source code to show how they are implemented, culminating in a large collection of physical simulations. This book tackles the complex, challenging issues that other books avoid, including Lagrangian dynamics, rigid body dynamics, impulse methods, resting contact, linear complementarity problems, deformable bodies, mass-spring systems, friction, numerical solution of differential equations, numerical stability and its relationship to physical stability, and Verlet integration methods. Dave even describes when real physics isn't necessary—and hacked physics will do.
*CD-ROM with extensive C++ source code that supports physical simulation. Operating Systems and compilers that are supported: Windows 2000/XP (Visual C++ versions 6, 7.0, and 7.1), Linux (g++ 3.x), Macintosh OS 10.3 (Xcode, CodeWarrior 9), SGI IRIX (Mips Pro 7.x), HP-UX (aCC), and Sun Solaris (g++ 3.x). The source is compatible with many game engines—including the Wild Magic engine, for which the complete sourcecode is included.
*Contains sample applications for shader programs (OpenGL and DirectX), including deformation by vertex displacement, skin and bones for smooth object animation, rippling ocean waves with realistic lighting, refraction effects, Fresnel reflectance, and iridescence.
*Covers special topics not found elsewhere, such as linear complementarity problems and Lagrangian dynamics.
*Includes exercises for instructional use and a review of essential mathematics.