Physically Based Rendering

Physically Based Rendering

From Theory to Implementation

2nd Edition - September 28, 2004
There is a Newer Edition Available
  • Authors: Matt Pharr, Greg Humphreys, Matt Pharr, Greg Humphreys
  • eBook ISBN: 9780123785800

Purchase options

Purchase options
DRM-free (Mobi, PDF, EPub)
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order

Description

Physically Based Rendering, Second Edition, describes both the mathematical theory behind a modern photorealistic rendering system as well as its practical implementation. A method known as literate programming combines human-readable documentation and source code into a single reference that is specifically designed to aid comprehension. The result is a stunning achievement in graphics education. Through the ideas and software in this book, you will learn to design and employ a full-featured rendering system for creating stunning imagery. This new edition greatly refines its best-selling predecessor by streamlining all obsolete code as well as adding sections on parallel rendering and system design; animating transformations; multispectral rendering; realistic lens systems; blue noise and adaptive sampling patterns and reconstruction; measured BRDFs; and instant global illumination, as well as subsurface and multiple-scattering integrators. These updates reflect the current state-of-the-art technology, and along with the lucid pairing of text and code, ensure the book's leading position as a reference text for those working with images, whether it is for film, video, photography, digital design, visualization, or gaming.

Key Features

  • The book that won its authors a 2014 Academy Award for Scientific and Technical Achievement from the Academy of Motion Picture Arts and Sciences
  • New sections on subsurface scattering, Metropolis light transport, precomputed light transport, multispectral rendering, and much more
  • Includes a companion site complete with source code for the rendering system described in the book, with support for Windows, OS X, and Linux: visit www.pbrt.org
  • Code and text are tightly woven together through a unique indexing feature that lists each function, variable, and method on the page that they are first described

Readership

Professionals working in computer graphics, game development, simulation, and scientific visualization.

Table of Contents

  • CHAPTER 01. INTRODUCTION
    1.1 Literate Programming
    1.2 Photorealistic Rendering and the Ray-Tracing Algorithm
    1.3 pbrt: System Overview
    1.4 How to Proceed through This Book
    1.5 Using and Understanding the Code
    Further Reading
    Exercise

    CHAPTER 02. GEOMETRY AND TRANSFORMATIONS
    2.1 Coordinate Systems
    2.2 Vectors
    2.3 Points
    2.4 Normals
    2.5 Rays
    2.6 Three-Dimensional Bounding Boxes
    2.7 Transformations
    2.8 Applying Transformations
    2.9 Animating Transformations
    2.10 Differential Geometry
    Further Reading
    Exercises

    CHAPTER 03. SHAPES
    3.1 Basic Shape Interface
    3.2 Spheres
    3.3 Cylinders
    3.4 Disks
    3.5 Other Quadrics
    3.6 Triangles and Meshes
    3.7 Subdivision Surfaces
    Further Reading
    Exercises

    CHAPTER 04. PRIMITIVES AND INTERSECTION ACCELERATION
    4.1 Primitive Interface and Geometric Primitives
    4.2 Aggregates
    4.3 Grid Accelerator
    4.4 Bounding Volume Hierarchies
    4.5 Kd-Tree Accelerator
    4.6 Debugging Aggregates
    Further Reading
    Exercises

    CHAPTER 05. COLOR AND RADIOMETRY
    5.1 Spectral Representation
    5.2 The SampledSpectrum Class
    5.3 RGBSpectrum
    5.4 Basic Radiometry
    5.5 Working with Radiometric Integrals
    5.6 Surface Reflection
    Further Reading
    Exercises

    CHAPTER 06. CAMERA MODELS
    6.1 Camera Model
    6.2 Projective Camera Models
    6.3 Environment Camera
    Further Reading
    Exercises

    CHAPTER 07. SAMPLING AND RECONSTRUCTION
    7.1 Sampling Theory
    7.2 Image Sampling Interface
    7.3 Stratified Sampling
    7.4 Low-Discrepancy Sampling
    7.5 Best-Candidate Sampling Patterns
    7.6 Adaptive Sampling
    7.7 Image Reconstruction
    7.8 Film and the Imaging Pipeline
    Further Reading
    Exercises

    CHAPTER 08. REFLECTION MODELS
    8.1 Basic Interface
    8.2 Specular Reflection and Transmission
    8.3 Lambertian Reflection
    8.4 Microfacet Models
    8.5 Fresnel Incidence Effects
    8.6 Measured BRDFs
    Further Reading
    Exercises

    CHAPTER 09. MATERIALS
    9.1 BSDFs
    9.2 Material Interface and Implementations
    9.3 Bump Mapping
    Further Reading
    Exercises

    CHAPTER 10. TEXTURE
    10.1 Sampling and Antialiasing 
    10.2 Texture Coordinate Generation
    10.3 Texture Interface and Basic Textures
    10.4 Image Texture
    10.5 Solid and Procedural Texturing
    10.6 Noise
    Further Reading
    Exercises

    CHAPTER 11. VOLUME SCATTERING
    11.1 Volume Scattering Processes
    11.2 Phase Functions
    11.3 Volume Interface and Homogeneous Media
    11.4 Varying-Density Volumes
    11.5 Volume Aggregates
    11.6 The BSSRDF
    Further Reading
    Exercises

    CHAPTER 12. LIGHT SOURCES
    12.1 Light Interface
    12.2 Point Lights
    12.3 Distant Lights
    12.4 Area Lights
    12.5 Infinite Area Lights
    Further Reading
    Exercises

    CHAPTER 13. MONTE CARLO INTEGRATION I: BASIC CONCEPTS
    13.1 Background and Probability Review
    13.2 The Monte Carlo Estimator
    13.3 Basic Sampling of Random Variables
    13.4 Metropolis Sampling
    13.4 Transforming between Distributions
    13.5 2D Sampling with Multidimensional Transformations
    Further Reading
    Exercises

    CHAPTER 14. MONTE CARLO INTEGRATION II: IMPROVING EFFICIENCY
    14.1 Russian Roulette and Splitting
    14.2 Careful Sample Placement
    14.3 Bias
    14.4 Importance Sampling
    14.5 Sampling Reflection Functions
    14.6 Sampling Light Sources
    14.7 Volume Scattering
    Further Reading
    Exercises

    CHAPTER 15. LIGHT TRANSPORT I: SURFACE REFLECTION
    15.1 Direct Lighting
    15.2 The Light Transport Equation
    15.3 Path Tracing
    15.4 Instant Global Illumination
    15.5 Irradiance Caching
    15.6 Particle Tracing and Photon Mapping
    15.7 Metropolis Light Transport
    Further Reading
    Exercises

    CHAPTER 16. LIGHT TRANSPORT II: VOLUME RENDERING
    16.1 The Equation of Transfer
    16.2 Volume Integrator Interface
    16.3 Emission-Only Integrator
    16.4 Single Scattering Integrator
    16.5 Subsurface Scattering
    Further Reading|
    Exercises

    CHAPTER 17. LIGHT TRANSPORT III: PRECOMPUTED LIGHT TRANSPORT
    17.1 Basis Functions: Theory
    17.2 Spherical Harmonics
    17.3 Radiance Probes
    17.4 Precomputed Diffuse Transfer
    17.5 Precomputed Glossy Transfer
    Further Reading
    Exercises

    CHAPTER 18. RETROSPECTIVE AND THE FUTURE
    18.1 Design Retrospective
    18.2 Throughput Processors
    18.3 Conclusion

    APPENDIXES
    A Utilities
    B Scene Description Interface
    C Index of Fragments
    D Index of Classes and their Members
    E Index of Miscellaneous Identifiers

     

Product details

  • No. of pages: 1200
  • Language: English
  • Copyright: © Morgan Kaufmann 2010
  • Published: September 28, 2004
  • Imprint: Morgan Kaufmann
  • eBook ISBN: 9780123785800
  • About the Authors

    Matt Pharr

    Matt Pharr is a Software Engineer at Google. He previously co-founded Neoptica, which was acquired by Intel, and co-founded Exluna, which was acquired by NVIDIA. He has a B.S. degree from Yale and a Ph.D. from the Stanford Graphics Lab, where he worked under the supervision of Pat Hanrahan.

    Affiliations and Expertise

    Software Engineer, Google

    Greg Humphreys

    Greg Humphreys is Director of Engineering at FanDuel, having previously worked on the Chrome graphics team at Google and the OptiX GPU raytracing engine at NVIDIA. Before that, he was a professor of Computer Science at the University of Virginia, where he conducted research in both high performance and physically based computer graphics, as well as computer architecture and visualization. Greg has a B.S.E. degree from Princeton, and a Ph.D. in Computer Science from Stanford under the supervision of Pat Hanrahan. When he's not tracing rays, Greg can usually be found playing tournament bridge.

    Affiliations and Expertise

    Director of Engineering, FanDuel

    Matt Pharr

    Matt Pharr is a Software Engineer at Google. He previously co-founded Neoptica, which was acquired by Intel, and co-founded Exluna, which was acquired by NVIDIA. He has a B.S. degree from Yale and a Ph.D. from the Stanford Graphics Lab, where he worked under the supervision of Pat Hanrahan.

    Affiliations and Expertise

    Software Engineer, Google

    Greg Humphreys

    Greg Humphreys is Director of Engineering at FanDuel, having previously worked on the Chrome graphics team at Google and the OptiX GPU raytracing engine at NVIDIA. Before that, he was a professor of Computer Science at the University of Virginia, where he conducted research in both high performance and physically based computer graphics, as well as computer architecture and visualization. Greg has a B.S.E. degree from Princeton, and a Ph.D. in Computer Science from Stanford under the supervision of Pat Hanrahan. When he's not tracing rays, Greg can usually be found playing tournament bridge.

    Affiliations and Expertise

    Director of Engineering, FanDuel