Transcript lecture19
Computer Graphics (Fall 2003)
COMS 4160, Lecture 19: Global Illumination
Ravi Ramamoorthi
http://www.cs.columbia.edu/~cs4160
Effects needed for Realism
Global Illumination
• Diffuse Interreflections
• Color Bleeding
Illumination Models
• So far considered mainly local illumination
– Light directly from light sources to surface
• Global Illumination: multiple bounces
– Already ray tracing: reflections/refractions
Some images courtesy Henrik Wann Jensen
Global Illumination
• Diffuse interreflection (radiosity) [Cornell box]
Global Illumination
• Caustics: Focusing through specular surface
• Major research effort in 80s, 90s till today
Light Transport
• Reflectance Equation
Lr ( x; r )
f ( x; , ) L ( x; ) cos d
i
r
i
i
i
i
i
• Global Illumination
Li( x; i) Lr y[ x; i]; i V ( x, y)
• Rendering Equation […, Kajiya 86]
Lr ( x; r ) Le( x; r ) f ( x; i, r ) Lr y[ x; i]; i V ( x, y) cos idi
i
Rendering Equation (Kajiya 86)
Rendering Equation
Lr ( x; r ) Le( x; r ) f ( x; i, r ) Lr y[ x; i]; i V ( x, y) cos idi
i
• Switch to Area param (over surfaces)
d i
dA cos o
x y
2
cos i cos o
dA
Lr ( x; r ) Le( x; r ) f ( x; i, r ) Lr y[ x; i]; i V ( x, y )
2
x y
S
• Global Illumination tries to solve this equation
– Too hard for analytic solution
– General theory of Integral equations
– Monte Carlo (ray tracing), finite elements (radiosity)
Ray Tracing: History
• Appel 68
• Whitted 80 [recursive ray tracing] (picture)
– Landmark in computer graphics
• Lots of work on various geometric primitives
• Lots of work on accelerations
• Current Research
– Real-Time raytracing (historically, slow technique)
– Ray tracing architecture
Operator Notation
cos i cos o
dA
Lr ( x; r ) Le( x; r ) f ( x; i, r ) Lr y[ x; i]; i V ( x, y )
2
x y
S
• Linear System L = E + K L
– Will later reduce to matrices.
• Explanation of Various Algorithms
– Radiosity: Finite element discretization, compute form
factors. Reduce to matrix equation and solve iteratively
– Ray Tracing: Monte Carlo sampling of integrals
• (I – K) L = E ; L = E + KE + K2E + …
• Corresponds to sum of direct, single bounce, multiple bounce
• Distribution Ray Tracing, Path tracing, etc.
Operator Notation
• Linear System L = E + K L
• Explanation of Various Algorithms
– Radiosity: Finite element discretization,
– Ray Tracing: Monte Carlo sampling of integrals
• (I – K) L = E ; L = E + KE + K2E + …
• Corresponds to sum of direct, single bounce,
multiple bounce