Written for game programmers and developers, this book covers GPU techniques and supporting applications that are commonly used in games and similar real-time 3D applications. The authors describe the design of programs and systems that can be used to implement games and other applications whose requirements are to render real-time animation sequences (such as walks through complex scenes) at the high quality now available from GPUs. The text is mainly structured around programming in Cg; but also includes techniques (in C++/OpenGL) that do not map onto GPU hardware. The supplementary CD includes implementation for most of the techniques covered in the book and full source code for an advanced render library in Cg/C++/OpenGL. This library can be used to quickly develop 3D games and applications which make use of the advanced features available in current programmable graphics hardware like GPU based animation, lighting, shadows, and special effects. The authors would like to acknowledge the following people who were omitted from the acknowledgements in the first printing. Julio Lucio---For his substantial work on the character animation and morph targets exporters for 3dsmax and testing all animation related features. Peter Dahl---For his substantial contribution to some render objects used on Taikodom and effects such as motion blur and depth of field in sections of Chapter 6. Manuel M. Oliveira---As a co-contributor for Chapter 5 and for many hours we spent talking about new Relief Mapping ideas and different implementation details.
1. Introduction and Cg Programming Overview 2. Light/Object Shaders 3. Texture Mapping 4. Rendering Shadows 5. Advanced Mapping Techniques and Ray Tracing on the GPU 6. Common Games Effects 7. Recorded Animation: Interpolation and Management 8. Real-Time Animation 9. Character Animation—Using MoCap and Skinning 10. Facial Animation 11. Managing Game Development