Dr. Pierre Rautenbach
The FASTAR Group
3D Game Programming Using DirectX 10 and OpenGL [ISBN: 1844808777]
Pierre Rautenbach is the author of the textbook: 3D Game Programming Using DirectX 10 and OpenGL published by Cengage Learning (formerly Thomson Learning). The book is currently available from Amazon US, Amazon UK, Amazon Japan, Barnes & Noble, etc.
3D Game Programming focuses on the development of a 3D first-person shooter game engine using a bottom-up approach. By following this easy-to-read text, the reader will learn how to create his or her own next generation 3D game engine with support for vertex and pixel shading GPU techniques (via Cg and HLSL), dynamic lighting and shadowing (via stencil shadow volumes), geometric meshes, audio, artificial intelligence, physics, environmental reflections, refraction and advanced lighting techniques such as High Dynamic Range lighting.
An Empirically Derived System for High-Speed Shadow Rendering.
The dissertation focuses on real-time shadow generation as a subset of 3D computer graphics. Its main focus is the critical analysis of numerous real-time shadow rendering algorithms and the construction of an empirically derived system for the high-speed rendering of shadows. This critical analysis allows us to assess the relationship between shadow rendering quality and performance. Using this performance data gathered, we are able to define a fuzzy logic-based expert system to control the real-time selection of shadow rendering algorithms based on environmental conditions. This system ensures the following: nearby shadows are always of high-quality, distant shadows are, under certain conditions, rendered at a lower quality and the frames per second rendering performance is always maximised.
An Empirically Derived System for High-Speed Rendering.
The thesis presents the empirical analysis of a representative spectrum of core real-time 3D rendering algorithms by constructing a system for high-speed rendering of shader-based special effects, lighting effects, shadows, reflection and refraction, post-processing effects and the processing of physics. A high frame per second rate is maintained by judiciously swapping to simpler but lower quality rendering algorithms as the scene complexity (and thus computational load) increases, and vice versa. If needed and appropriate, some of the computational load is shifted from the GPU to the CPU. The net effect is a “satisficing” system that guarantees smooth motion through a scene rendering quality that gracefully degrades in the face of increasing scene complexity and then recovers as conditions improve. The system serves as a proof of concept, offering a pragmatic approach to ensuring that games targeted at high-end hardware platforms can also be pleasantly experienced on a range of less advanced devices.