GPU-Based Techniques for Global Illumination Effects

Book description

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

Table of contents

  1. C00.pdf (1/6)
  2. C00.pdf (2/6)
  3. C00.pdf (3/6)
  4. C00.pdf (4/6)
  5. C00.pdf (5/6)
  6. C00.pdf (6/6)
  7. C01.pdf
    1. GLOBAL ILLUMINATION RENDERING
      1. Materials
      2. Rendering equation
      3. Local illumination
      4. Global illumination
      5. Random walk solution of the renderingequation (1/2)
      6. Random walk solution of the renderingequation (2/2)
        1. Monte Carlo Integration
        2. Importance Sampling
      7. Iteration solution of the rendering equation
      8. Application of former GI research results in GPUGI
    2. LOCAL ILLUMINATION RENDERING PIPELINEOF GPUS
      1. Evolution of the fixed-function rendering pipeline (1/2)
      2. Evolution of the fixed-function rendering pipeline (2/2)
        1. Raster Operations
        2. Rasterization With Linear Interpolation
        3. Texturing
        4. Transformation
        5. Per-vertex Lighting
      3. Programmable GPUs
        1. Render-to-texture and Multiple Render Targets
        2. The Geometry Shader
      4. Architecture of programmable GPUs
        1. Resources
        2. Pipeline Stages and Their Control by Render States
    3. PROGRAMMING AND CONTROLLING GPUS
      1. Introduction to HLSL programming (1/2)
      2. Introduction to HLSL programming (2/2)
        1. Vertex Shader Programming
        2. Geometry Shader Programming
        3. Fragment Shader Programming
      3. Controlling the GPU from the CPU (1/2)
      4. Controlling the GPU from the CPU (2/2)
        1. Controlling the Direct3D 9 Pipeline
        2. Controlling the Pipeline Using Effect Files
      5. Shaders beyond the standard pipelineoperation (1/2)
      6. Shaders beyond the standard pipelineoperation (2/2)
        1. Are GPUs Good for Global Illumination?
        2. Basic Techniques for GPU Global Illumination
    4. SIMPLE IMPROVEMENTS OF THE LOCALILLUMINATION MODEL
      1. SHADOW MAPPING (1/2)
      2. SHADOW MAPPING (2/2)
        1. Shadow Map Generation
        2. Rendering With the Shadow Map
        3. Shadow Map Anti-aliasing
      3. IMAGE-BASED LIGHTING (1/3)
      4. IMAGE-BASED LIGHTING (2/3)
      5. IMAGE-BASED LIGHTING (3/3)
        1. Mirrored Reflections and Refractions
        2. Diffuse and Glossy Reflections Without Self-shadowing
        3. Diffuse and Glossy Reflections With Shadowing
    5. RAY CASTING ON THE GPU
      1. RAY--TRIANGLE INTERSECTION IN A SHADER
      2. THE RAY ENGINE
      3. ACCELERATION HIERARCHY BUILT ON RAYS
        1. Implementation of Recursive Ray-tracing Using the Ray Engine
        2. Ray Casting
      4. FULL RAY-TRACERS ON THE GPU USING SPACEPARTITIONING
        1. Uniform Grid
        2. Octree
        3. Hierarchical Bounding Boxes
        4. Kd-Tree
      5. LOOSE kd-TREE TRAVERSAL IN A SINGLE SHADER (1/2)
      6. LOOSE kd-TREE TRAVERSAL IN A SINGLE SHADER (2/2)
        1. GPU Representation of the Loose kd-tree
        2. GPU Traversal of the Loose kd-tree
        3. Performance
    6. SPECULAR EFFECTS WITH RASTERIZATION
      1. RAY-TRACING OF DISTANCE MAPS (1/2)
      2. RAY-TRACING OF DISTANCE MAPS (2/2)
        1. Parallax Correction
        2. Linear Search
        3. Refinement by Secant Search
      3. SINGLE LOCALIZED REFLECTIONS AND REFRACTIONS
      4. INTER-OBJECT REFLECTIONS AND REFRACTIONS
      5. SPECULAR REFLECTIONS WITH SEARCHING ONTHE REFLECTOR
      6. SPECULAR REFLECTIONS WITH GEOMETRY OR IMAGE TRANSFORMATION
      7. SELF REFLECTIONS AND REFRACTIONS
        1. Simplified Methods for Multiple Reflections andRefractions
      8. CAUSTICS (1/2)
      9. CAUSTICS (2/2)
        1. Light Pass
        2. Photon Hit Filtering and Light Projection
      10. COMBINING DIFFERENT SPECULAR EFFECTS
    7. DIFFUSE AND GLOSSY INDIRECT ILLUMINATION
      1. RADIOSITY ON THE GPU (1/2)
      2. RADIOSITY ON THE GPU (2/2)
        1. Random Texel Selection
        2. Update of the Radiance Texture
      3. PRE-COMPUTED RADIOSITY
      4. DIFFUSE AND GLOSSY FINAL GATHERING WITHDISTANCE MAPS (1/2)
      5. DIFFUSE AND GLOSSY FINAL GATHERING WITHDISTANCE MAPS (2/2)
    8. PRE-COMPUTATION AIDED GLOBAL ILLUMINATION
      1. SAMPLING
      2. FINITE-ELEMENT METHOD
        1. Compression of Transfer Coefficients
      3. PRE-COMPUTED RADIANCE TRANSFER (1/2)
      4. PRE-COMPUTED RADIANCE TRANSFER (2/2)
        1. Direct3D Support of the Diffuse Pre-computed Radiance Transfer
      5. LIGHT PATH MAP (1/3)
      6. LIGHT PATH MAP (2/3)
      7. LIGHT PATH MAP (3/3)
        1. Implementation
    9. PARTICIPATING MEDIA RENDERING
      1. PHASE FUNCTIONS
      2. PARTICLE SYSTEM MODEL
      3. BILLBOARD RENDERING (1/2)
      4. BILLBOARD RENDERING (2/2)
        1. Spherical Billboards
      5. ILLUMINATING PARTICIPATING MEDIA
      6. RENDERING EXPLOSIONS AND FIRE
        1. Dust and Smoke
        2. Fire
        3. Layer Composition
      7. PARTICIPATING MEDIA ILLUMINATION NETWORKS (1/2)
      8. PARTICIPATING MEDIA ILLUMINATION NETWORKS (2/2)
        1. Iteration Solution of the Volumetric Rendering Equation
        2. Building the Illumination Network
        3. Iterating the Illumination Network
    10. FAKE GLOBAL ILLUMINATION
      1. THE SCALAR OBSCURANCES METHOD
      2. THE SPECTRAL OBSCURANCES METHOD
      3. CONSTRUCTION OF THE OBSCURANCES MAP
      4. DEPTH PEELING
    11. POSTPROCESSING EFFECTS
      1. IMAGE FILTERING
        1. Separation of Dimensions
        2. Exploitation of the Bi-linear Filtering Hardware
        3. Importance Sampling
      2. GLOW
      3. TONE MAPPING
        1. Local Tone Mapping
        2. Glow Integration Into Tone Mapping
        3. Temporal Luminance Adaptation
        4. Scotopic Vision
        5. Implementation
      4. DEPTH OF FIELD (1/2)
      5. DEPTH OF FIELD (2/2)
        1. Camera Models and Depth of Field
        2. Depth of Field With the Simulation of Circle of Confusion
    12. INTEGRATING GI EFFECTS IN GAMES AND VIRTUAL REALITY SYSTEMS
      1. GAME ENGINES AND SCENE GRAPH MANAGERS
      2. COMBINING DIFFERENT RENDERING ALGORITHMS
      3. CASE STUDIES
        1. Moria
        2. RT Car
        3. Space Station
  8. C02.pdf
  9. C03.pdf
  10. C06.pdf
  11. C07.pdf
  12. C08.pdf
  13. C09.pdf
  14. C11.pdf

Product information

  • Title: GPU-Based Techniques for Global Illumination Effects
  • Author(s): Laszlo Szirmay-Kalos, Laszlo Szecsi, Mateu Sbert
  • Release date: June 2008
  • Publisher(s): Morgan & Claypool Publishers
  • ISBN: 9781598295603