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
CHAPTER 01. INTRODUCTION1.1 Literate Programming1.2 Photorealistic Rendering and the Ray-Tracing Algorithm1.3 pbrt: System Overview1.4 How to Proceed through This Book1.5 Using and Understanding the CodeFurther ReadingExercise
CHAPTER 02. GEOMETRY AND TRANSFORMATIONS2.1 Coordinate Systems2.2 Vectors2.3 Points2.4 Normals2.5 Rays2.6 Three-Dimensional Bounding Boxes2.7 Transformations2.8 Applying Transformations2.9 Animating Transformations2.10 Differential GeometryFurther ReadingExercises
CHAPTER 03. SHAPES3.1 Basic Shape Interface3.2 Spheres3.3 Cylinders3.4 Disks3.5 Other Quadrics3.6 Triangles and Meshes3.7 Subdivision Surfaces Further ReadingExercises
CHAPTER 04. PRIMITIVES AND INTERSECTION ACCELERATION4.1 Primitive Interface and Geometric Primitives4.2 Aggregates4.3 Grid Accelerator4.4 Bounding Volume Hierarchies4.5 Kd-Tree Accelerator4.6 Debugging AggregatesFurther ReadingExercises
CHAPTER 05. COLOR AND RADIOMETRY5.1 Spectral Representation5.2 The SampledSpectrum Class5.3 RGBSpectrum5.4 Basic Radiometry5.5 Working with Radiometric Integrals5.6 Surface ReflectionFurther ReadingExercises
CHAPTER 06. CAMERA MODELS6.1 Camera Model6.2 Projective Camera Models6.3 Environment CameraFurther ReadingExercises
CHAPTER 07. SAMPLING AND RECONSTRUCTION7.1 Sampling Theory7.2 Image Sampling Interface7.3 Stratified Sampling7.4 Low-Discrepancy Sampling 7.5 Best-Candidate Sampling Patterns 7.6 Adaptive Sampling7.7 Image Reconstruction7.8 Film and the Imaging PipelineFurther ReadingExercises
CHAPTER 08. REFLECTION MODELS8.1 Basic Interface8.2 Specular Reflection and Transmission8.3 Lambertian Reflection8.4 Microfacet Models8.5 Fresnel Incidence Effects8.6 Measured BRDFsFurther ReadingExercises
CHAPTER 09. MATERIALS9.1 BSDFs9.2 Material Interface and Implementations9.3 Bump MappingFurther ReadingExercises
CHAPTER 10. TEXTURE10.1 Sampling and Antialiasing 10.2 Texture Coordinate Generation10.3 Texture Interface and Basic Textures10.4 Image Texture10.5 Solid and Procedural Texturing10.6 NoiseFurther ReadingExercises
CHAPTER 11. VOLUME SCATTERING 11.1 Volume Scattering Processes11.2 Phase Functions11.3 Volume Interface and Homogeneous Media11.4 Varying-Density Volumes11.5 Volume Aggregates11.6 The BSSRDFFurther ReadingExercises
CHAPTER 12. LIGHT SOURCES12.1 Light Interface12.2 Point Lights12.3 Distant Lights12.4 Area Lights12.5 Infinite Area LightsFurther ReadingExercises
CHAPTER 13. MONTE CARLO INTEGRATION I: BASIC CONCEPTS13.1 Background and Probability Review13.2 The Monte Carlo Estimator13.3 Basic Sampling of Random Variables13.4 Metropolis Sampling13.4 Transforming between Distributions13.5 2D Sampling with Multidimensional TransformationsFurther ReadingExercises
CHAPTER 14. MONTE CARLO INTEGRATION II: IMPROVING EFFICIENCY14.1 Russian Roulette and Splitting14.2 Careful Sample Placement14.3 Bias14.4 Importance Sampling14.5 Sampling Reflection Functions14.6 Sampling Light Sources14.7 Volume Scattering Further ReadingExercises
CHAPTER 15. LIGHT TRANSPORT I: SURFACE REFLECTION15.1 Direct Lighting15.2 The Light Transport Equation15.3 Path Tracing15.4 Instant Global Illumination15.5 Irradiance Caching15.6 Particle Tracing and Photon Mapping15.7 Metropolis Light TransportFurther ReadingExercises
CHAPTER 16. LIGHT TRANSPORT II: VOLUME RENDERING 16.1 The Equation of Transfer16.2 Volume Integrator Interface16.3 Emission-Only Integrator16.4 Single Scattering Integrator16.5 Subsurface ScatteringFurther Reading
Akenine-Moller, Real-Time Rendering (AK Peters, 2008), 1045pp, hardback, $89.00, £54.99, (9781568814247), Bookscan = 1,495
Pharr & Humphreys, Physically Based Rendering (MK, 2004),1056pp, hardback; $92.95, £81.95, (9780125531801), Bookscan = 1,722