This book presents techniques to render photo-realistic images by programming the Graphics
Processing Unit (GPU). We discuss effects such as mirror reflections refractions caustics
diffuse or glossy indirect illumination radiosity single or multiple scattering in
participating media tone reproduction glow and depth of field. The book targets game
developers graphics programmers and also students with some basic understanding of computer
graphics algorithms rendering APIs like Direct3D or OpenGL and shader programming. In order
to make the book self-contained the most important concepts of local illumination and global
illumination rendering graphics hardware and Direct3D HLSL programming are reviewed in the
first chapters. After these introductory chapters we warm up with simple methods including
shadow and environment mapping then we move on toward advanced concepts aiming at global
illumination rendering. Since it would have been impossible to give a rigorous review of all
approaches proposed in this field we go into the details of just a few methods solving each
particular global illumination effect. However a short discussion of the state of the art and
links to the bibliography are also provided to refer the interested reader to techniques that
are not detailed in this book. The implementation of the selected methods is also presented in
HLSL and we discuss their observed performance merits and disadvantages. In the last chapter
we also review how these techniques can be integrated in an advanced game engine and present
case studies of their exploitation in games. Having gone through this book the reader will
have an overview of the state of the art will be able to apply and improve these techniques
and most importantly will be capable of developing brand new GPU algorithms. Table of
Contents: Global Illumintation Rendering Local Illumination Rendering Pipeline of GPUs
Programming and Controlling GPUs Simple Improvements of the Local Illumination Model Ray
Casting on the GPU Specular Effects with Rasterization Diffuse and Glossy Indirect
Illumination Pre-computation Aided Global Illumination Participating Media Rendering Fake
Global Illumination Postprocessing Effects Integrating GI Effects in Games and Virtual
Reality Systems Bibliography