HomeAbout the AuthorsDownloadsScenesGalleryReviewsFAQsContentsBibliographyErrataLists and ForumBug TrackingLinks
 

  

Table of Contents (For The Second Edition)


(† indicates advanced topics)

Preface

CHAPTER 01. INTRODUCTION

  • Literate Programming
    • Indexing and Cross-Referencing
  • Photorealistic Rendering and the Ray-Tracing Algorithm
    • Cameras
    • Ray-Object Intersections
    • Light Distribution
    • Visibility
    • Surface Scattering
    • Recursive Ray Tracing
    • Ray Propagation
  • pbrt: System Overview
    • Phases of Execution
    • Scene Representation
    • Renderer Interface and SamplerRenderer
    • Main Rendering Loop
    • Parallelization of pbrt
    • An Integrator for Whitted-Style Ray Tracing
  • How to Proceed through This Book
    • The Exercises
  • Using and Understanding the Code
    • Pointer or Reference?
    • Code Optimization
    • The Book Web site
    • Extending the System
    • Bugs
  • Further Reading
  • Exercise

CHAPTER 02. GEOMETRY AND TRANSFORMATIONS

  • Coordinate Systems
    • Coordinate System Handedness
  • Vectors
    • Arithmetic
    • Scaling
    • Dot and Cross Product
    • Normalization
    • Coordinate System from a Vector
  • Points
  • Normals
  • Rays
    • Ray Differentials
  • Three-Dimensional Bounding Boxes
  • Transformations
    • Homogeneous Coordinates
    • Basic Operations
    • Translations
    • Scaling
    • x, y, and z Axis Rotations
    • Rotation around an Arbitrary Axis
    • The Look-At Transformation
  • Applying Transformations
    • Points
    • Vectors
    • Normals
    • Rays
    • Bounding Boxes
    • Composition of Transformations
    • Transformations and Coordinate System Handedness
  • Animating Transformations †
    • Quaternions
    • Quaternion interpolation
    • AnimatedTransform implementation
  • Differential Geometry
  • Further Reading
  • Exercises

CHAPTER 03. SHAPES

  • Basic Shape Interface
    • Bounding
    • Refinement
    • Intersection
    • Avoiding Incorrect Self-Intersections
    • Shading Geometry
    • Surface Area
    • Sidedness
  • Spheres
    • Construction
    • Bounding
    • Intersection
    • Partial Spheres
    • Partial Derivatives of Normal Vectors
    • DifferentialGeometry Initialization
    • Surface Area
  • Cylinders
    • Construction
    • Bounding
    • Intersection
    • Partial Cylinders
    • Surface Area
  • Disks
    • Construction
    • Bounding
    • Intersection
    • Surface Area
  • Other Quadrics
    • Cones
    • Paraboloids
    • Hyperboloids
  • Triangles and Meshes
    • Triangle
    • Triangle Intersection
    • Surface Area
    • Shading Geometry
  • Subdivision Surfaces †
    • Mesh Representation
    • Bounds
    • Subdivison
  • Further Reading
  • Exercises

CHAPTER 04. PRIMITIVES AND INTERSECTION ACCELERATION

  • Primitive Interface and Geometric Primitives
    • Geometric Primitives
    • TransformedPrimitive: Object Instancing and Animated Primitives
  • Aggregates
    • Ray-Box Intersections
  • Grid Accelerator
    • Creation
    • Traversal
  • Bounding Volume Hierarchies
    • BVH Construction
    • The Surface Area Heuristic
    • Compact BVH for Traversal
    • Traversal
  • Kd-Tree Accelerator
    • Tree Representation
    • Tree Construction
    • Traversal
  • Debugging Aggregates
    • Finding Bugs in Aggregates
    • Fixing Bugs in Aggregates
    • Aggregate Performance Bugs
  • Further Reading
  • Exercises

CHAPTER 05. COLOR AND RADIOMETRY

  • Spectral Representation
    • The Spectrum Type
    • CoefficientSpectrum Implementation
  • The SampledSpectrumClass
    • XYZ Color
    • RGB Color
  • RGBSpectrum Implementation
  • Basic Radiometry
    • Basic Quantities
    • Incident and Exitant Radiance Functions
    • Luminance and photometry
  • Working with Radiometric Integrals
    • Integrals over Projected Solid Angle
    • Integrals over Spherical Coordinates
    • Integrals over Area
  • Surface Reflection
    • The BRDF
    • The BSSRDF
  • Further Reading
  • Exercises

CHAPTER 06. CAMERA MODELS

  • Camera Model
    • Camera Coordinate Spaces
  • Projective Camera Models
    • Orthographic Camera
    • Perspective Camera
    • Depth of Field
  • Environment Camera
  • Further Reading
  • Exercises

CHAPTER 07. SAMPLING AND RECONSTRUCTION

  • Sampling Theory
    • The Frequency Domain and the Fourier Transform
    • Ideal Sampling and Reconstruction
    • Aliasing
    • Antialiasing Techniques
    • Application to Image Synthesis
    • Sources of Aliasing in Rendering
    • Understanding Pixels
  • Image Sampling Interface
    • Sample Representation and Allocation
  • Stratified Sampling
  • Low-Discrepancy Sampling †
    • Definition of Discrepancy
    • Hammersley and Halton Sequences
    • (0,2)-Sequences
    • The Low-Discrepancy Sampler
  • Best-Candidate Sampling Patterns †
  • Adaptive Sampling
  • Image Reconstruction
    • Filter Functions
  • Film and the Imaging Pipeline
    • Film Interface
    • ImageFilm
  • Further Reading
  • Exercises

CHAPTER 08. REFLECTION MODELS

  • Basic Interface
    • Reflectance
    • BRDF>BTDF Adapter
    • BxDF Scaling Adapter
  • Specular Reflection and Transmission
    • Fresnel Reflectance
    • Specular Reflection
    • Specular Transmission
  • Lambertian Reflection
  • Microfacet Models
    • Oren-Nayar Diffuse Reflection
    • Torrance-Sparrow Model
    • Blinn Microfacet Distribution
    • Anisotropic Microfacet Model
  • Fresnel Incidence Effects
  • Measured BRDFs
    • Irregular Isotropic Measured BRDF
    • Regular Halfangle Format
  • Further Reading
  • Exercises

CHAPTER 09. MATERIALS

  • BSDFs
    • BSDF Memory Management
  • Material Interface and Implementations
    • MatteMaterial
    • PlasticMaterial
    • Mix Material
    • Measured Material
    • Additional Materials
  • Bump Mapping
  • Further Reading
  • Exercises

CHAPTER 10. TEXTURE

  • Sampling and Antialiasing
    • Finding the Texture Sampling Rate
    • Filtering Texture Functions
    • Ray Differentials for Specular Reflection and Transmission †
  • Texture Coordinate Generation
    • 2D (u, v) Mapping
    • Spherical Mapping
    • Cylindrical Mapping
    • Planar Mapping
    • 3DMapping
  • Texture Interface and Basic Textures
    • Constant Texture
    • Scale Texture
    • Mix Textures
    • Bilinear Interpolation
  • Image Texture
    • Texture Caching
    • MIPMaps
    • Isotropic Triangle Filter
    • Elliptically Weighted Average
  • Solid and Procedural Texturing
    • UV Texture
    • Checkerboard
    • Solid Checkerboard
  • Noise
    • Perlin Noise
    • Random Polka Dots
    • Noise Idioms and Spectral Synthesis
    • Bumpy and Wrinkled Textures
    • Windy Waves
    • Marble
  • Further Reading
  • Exercises

CHAPTER 11. VOLUME SCATTERING †

  • Volume Scattering Processes
    • Absorption
    • Emission
    • Out-Scattering and Extinction
    • In-scattering
  • Phase Functions
  • Volume Interface and Homogeneous Media
    • Homogeneous Volumes
  • Varying-Density Volumes
    • 3D Grids
    • Exponential Density
  • Volume Aggregates
  • The BSSRDF
    • Subsurface Scattering Materials
  • Further Reading
  • Exercises

CHAPTER 12. LIGHT SOURCES

  • Light Interface
    • Visibility Testing
  • Point Lights
    • Spotlights
    • Texture Projection Lights
    • Goniophotometric Diagram Lights
  • Distant Lights
  • Area Lights
  • Infinite Area Lights
  • Further Reading
  • Exercises

CHAPTER 13. MONTE CARLO INTEGRATION I: BASIC CONCEPTS

  • Background and Probability Review
    • Continuous Random Variables
    • Expected Values and Variance
  • The Monte Carlo Estimator
  • Sampling Random Variables
    • The Inversion Method
    • The Rejection Method
  • Metropolis Sampling †
    • Basic Algorithm
    • Choosing Mutation Strategies
    • Start-up bias
    • Estimating Integrals with Metropolis Sampling
    • Example: One-Dimensional Setting
  • Transforming between Distributions
    • Transformation in Multiple Dimensions
    • Example: Polar Coordinates
    • Example: Spherical Coordinates
  • 2D Sampling with Multidimensional Transformations
    • Example: Uniformly Sampling a Hemisphere
    • Example: Sampling a Unit Disk
    • Example: Cosine-Weighted Hemisphere Sampling
    • Example: Sampling a Triangle
    • Example: Piecewise-Constant 2D Distributions
  • Further Reading
  • Exercises

CHAPTER 14. MONTE CARLO INTEGRATION II: IMPROVING EFFICIENCY

  • Russian Roulette and Splitting
    • Splitting
  • Careful Sample Placement
    • Stratified Sampling
    • Quasi Monte Carlo
    • Warping Samples and Distortion
  • Bias
  • Importance Sampling
    • Multiple Importance Sampling
  • Sampling Reflection Functions
    • Sampling the Blinn Microfacet Distribution
    • Sampling the Anisotropic Microfacet Model
    • Sampling FresnelBlend
    • Specular Reflection and Transmission
    • Application: Estimating Reflectance
    • Sampling BSDFs
  • Sampling Light Sources
    • Basic Interface
    • Lights with Singularities
    • Area Lights
    • ShapeSet Sampling
    • Infinite Area Lights
  • Volume Scattering †
    • Sampling Phase Functions
    • Computing Optical Thickness
  • Further Reading
  • Exercises

CHAPTER 15. LIGHT TRANSPORT I: SURFACE REFLECTION

  • Direct Lighting
    • Estimating the Direct Lighting Integral
  • The Light Transport Equation
    • Basic Derivation
    • Analytic Solutions to the LTE
    • The Surface Form of the LTE
    • Integral over Paths
    • Delta Distributions in the Integrand
    • Partitioning the Integrand
    • The Measurement Equation and Importance
  • Path Tracing
    • Overview
    • Path Sampling
    • Incremental Path Construction
    • Implementation
    • Bidirectional Path Tracing †
  • Instant Global Illumination
    • Creating The Virtual Light Sources
    • Rendering With Virtual Light Sources
  • Irradiance Caching
    • Rendering With The Irradiance Cache
    • Lookup and Interpolation
    • Adding New Values
  • Particle Tracing and Photon Mapping
    • Theoretical Basis for Particle Tracing †
    • Photon Integrator
    • Building the Photon Maps
    • Using the Photon Map
    • Photon Interpolation and Density Estimation
  • Metropolis Light Transport †
    • Sample Representation
    • Mutations
    • Generating Paths
    • Path Contributions
    • MetropolisRenderer Implementation
    • Rendering
  • Further Reading
  • Exercises

CHAPTER 16. LIGHT TRANSPORT II: VOLUME RENDERING †

  • The Equation of Transfer
  • Volume Integrator Interface
  • Emission-Only Integrator
  • Single Scattering Integrator
  • Subsurface Scattering
    • Poisson Distribution of Sample Points
    • Building The Sample Point Octree
    • The Dipole Diffusion Approximation
    • Rendering With Hierarchical Integration
    • Setting Scattering Properties
  • Further Reading
  • Exercises

CHAPTER 17. LIGHT TRANSPORT III: PRECOMPUTED LIGHT TRANSPORT †

  • Basis Functions: Theory
    • A Piecewise-Constant Basis
    • Projection Onto A Basis
    • Orthonormal Basis Functions
  • Spherical Harmonics
    • Efficient Evaluation
    • Projecting Light Sources
    • Projecting Incident Radiance Functions
    • Reducing Ringing
    • Rotations
  • Radiance Probes
    • Creating Radiance Probes
    • Using Radiance Probes
  • Precomputed Diffuse Transfer
  • Precomputed Glossy Transfer
    • The Transfer Matrix
    • The BSDF Matrix
    • GlossyPRTIntegrator Implementation
  • Further Reading
  • Exercises

CHAPTER 18. SUMMARY AND CONCLUSION

  • Design Retrospective
    • Abstraction versus Efficiency
    • Design Alternatives: Triangles Only
    • Increased Scene Complexity
  • Throughput Processors
    • The Future
    • Further Resources
  • Conclusion

APPENDIXES

  • Utilities
  • Scene Description Interface
  • Index of Fragments
  • Index of Classes and their Members
  • Index of Identifiers

    REFERENCES
    INDEX
    COLOPHON

  •  
     

    © Copyright 2004-2010 Matt Pharr & Greg Humphreys. All rights reserved.