Title: RealTime Relighting
1Real-Time Relighting
- Digital Image Synthesis
- Yung-Yu Chuang
- 1/10/2008
with slides by Ravi Ramamoorthi, Robin Green and
Milos Hasan
2Realistic rendering
- We have talked about photorealistic rendering for
complex materials, complex geometry and complex
lighting. They are realistic but slow.
3Real-time rendering
- Its goal is to achieve interactive rendering with
reasonable quality. Its important in many
applications such as games, visualization,
computer-aided design,
4Real-Time relighting
- Lighting is the process of adjusting lights. It
is an important but time-consuming step in
animation production pipeline. - Relighting algorithms for two kinds of lights
- Distant environment lights
- Near-field lights for production
5Relighting algorithms for distant environment
lights
6Natural illumination
- People perceive materials more easily under
natural illumination than simplified illumination.
Images courtesy Ron Dror and Ted Adelson
7Natural illumination
- Rendering with natural illumination is more
expensive compared to using simplified
illumination
directional source
natural illumination
8Reflection maps
Blinn and Newell, 1976
9Environment maps
Miller and Hoffman, 1984
10HDR lighting
11Examples of complex environment light
12Examples of complex environment light
13Direct lighting with complex illumination
q
p
14Function approximation
- G(x) the function to approximate
- B1(x), B2(x), Bn(x) basis functions
- We want
- Storing a finite number of coefficients ci gives
an approximation of G(x)
15Function approximation
- How to find coefficients ci?
- Minimize an error measure
- What error measure?
- L2 error
- Coefficients
16Function approximation
- Basis Functions are pieces of signal that can be
used to produce approximations to a function
17Function approximation
- We can then use these coefficients to reconstruct
an approximation to the original signal
18Function approximation
- We can then use these coefficients to reconstruct
an approximation to the original signal
19Orthogonal basis functions
- Orthogonal Basis Functions
- These are families of functions with special
properties - Intuitively, its like functions dont overlap
each others footprint - A bit like the way a Fourier transform breaks a
functions into component sine waves
20Integral of product
21Basis functions
- Transform data to a space in which we can capture
the essence of the data better - Spherical harmonics, similar to Fourier transform
in spherical domain, is used in PRT.
22Real spherical harmonics
- A system of signed, orthogonal functions over the
sphere - Represented in spherical coordinates by the
function - where l is the band and m is the index within the
band
23Real spherical harmonics
24Reading SH diagrams
Thisdirection
Not thisdirection
25Reading SH diagrams
Thisdirection
Not thisdirection
26The SH functions
27The SH functions
28Spherical harmonics
29Spherical harmonics
m
0
l
1
2
-1
-2
0
1
2
30SH projection
- First we define a strict order for SH functions
- Project a spherical function into a vector ofSH
coefficients
31SH reconstruction
- To reconstruct the approximation to a function
- We truncate the infinite series of SH functions
to give a low frequency approximation
32Examples of reconstruction
33An example
- Take a function comprised of two area light
sources - SH project them into 4 bands 16 coefficients
34Low frequency light source
- We reconstruct the signal
- Using only these coefficients to find a low
frequency approximation to the original light
source
35Harr wavelets
- Scaling functions (Vj)
- Wavelet functions (Wj)
- The set of scaling functions and wavelet
functions forms an orthogonal basis
36Harr wavelets
37Example for wavelet transform
- Delta functions, f(9,7,3,5) in V2
38Wavelet transform
39Example for wavelet transform
40Example for wavelet transform
41Quadratic Bspline scaling and wavelets
422D Harr wavelets
43Example for 2D Harr wavelets
44Applications
19 5 L2
1 15 L2
3 10 L2
45Relighting algorithms for animation production
46Relighting for production
- Lighting is a time-consuming process.
- Artists adjust lighting parameters and wait for a
couple of hours or days to get feedback. - Local shading with complex scene and many lights
- Interactive relighting
- Interative visual eedback
- Fixed scene and camera
- Lower quality
- Scalable with sene complexity and number of lights
47Deep framebuffer
- Gershbein and Hanrahan, SIGGRAPH 2000
48Deep framebuffer
49Deep framebuffer
50LPICS
- Pixar, SIGGRPH 2005. A practical realization for
the deep framebuffer approach on GPUs
LPICS 0.1s
Final renderer 2,000s
video
51Lightspeed
- ILM, SIGGRAPH 2007
- An even more practical system with automatic
shader conversion. (2.7s v.s. 57m)
52Direct-to-indirect transfer
- Hasan et. al. SIGGRAPH 2006
- Deep framebuffer approaches only support local
shading, but not indirect lighting
direct lighting
With indirect lighting
53Concept
- Distribute gather samples on scene surfaces
54Concept
- Direct illumination on both gather samples and
view samples
55Concept
- Inter-reflections between gather samples
56Concept
- Final gather on view samples
57Inter-reflections between gather samples
gather sample
gather sample
58Inter-reflections between gather samples
- Assume all gather samples are diffuse
59Inter-reflections between gather samples
60Inter-reflections between gather samples
61Final gathering
62Concept
Direct on view
Transfer matrix
Final
Direct on gather
Indirect on view
63Scene Still Life
Precomputation 1.6 hours
Polygon 107k
11.4 18.7 fps
64Scene Temple
Precomputation 2.5 hours
8.5 25.8 fps
Polygon 2M
65Scene Hair Ball
Precomputation 2.9 hours
9.7 24.7 fps
Polygon 320k
66Scene Sponza Atrium
Precomputation 1.5 hours
13.7 24.9 fps
Polygon 66k
67Comparison
DTI 8-25 fps (2.5 hr precomputation)
Monte Carlo path tracer 32 hours