Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Bruce Walter, Sebastian Fernandez, Adam Arbree, Mike Donikian,
Kavita Bala, Donald Greenberg Copyright of figures and other materials in the paper belong to original authors.
Presenter: 이성호
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 2 KUCG |
Rendering equation
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 3 KUCG |
BRDF (Bidirectional reflectance distribution function)
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 4 KUCG |
Quiz (yes or no)
• (매질이 빛을 흡수하거나 산란하지 않는 경우) 관찰자가 광원에 가까워질수록 측정되는 빛의 세기가 세짂다?
아 눈부셔
이카루스의 추락
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 5 KUCG |
Illumination Equation (Simplified)
result = Mi Gi Vi Ii S lights
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 6 KUCG |
Illumination Equation
result = Mi Gi Vi Ii S lights
(BRDF)
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 7 KUCG |
Illumination Equation
result = Mi Gi Vi Ii S lights
cos 𝜃
𝑑
𝑑 𝜃
for oriented light
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 8 KUCG |
Types of Point Lights
• Omni
Spherical lights
• Oriented
Area lights, indirect lights
• Directional
HDR env maps, sun&sky
X=측정지점 𝑦𝑖=i번째 광원의 위치 𝜙𝑖=i번째 광원의 방향과 측정지점과의 각도
X
𝜙𝑖
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 9 KUCG |
Quiz
result = Mi Gi Vi Ii S lights
𝑑 𝜃
• 빛의 세기는 광원과의 거리와 상관 없다며?
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 10 KUCG |
Quiz
L = Mi Gi Vi Ii S lights
어느 텀을 연산하는 것이 가장 오래 걸리는가?
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 11 KUCG |
Lightcuts Problem
Visible surface
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 12 KUCG |
Lightcuts Problem
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 13 KUCG |
Lightcuts Problem
Camera
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 14 KUCG |
Key Concepts
• Light Cluster
Approximate many lights by a single brighter light (the representative light)
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 15 KUCG |
Illumination Equation revisited
L = Mi Gi Vi Ii S lights
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 16 KUCG |
Cluster Approximation
Cluster
𝐿 ≈ 𝐿 = Mj Gj Vj Ii 𝑖
j is the representative light
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 17 KUCG |
Key Concepts
• Light Cluster
• Light Tree
Binary tree of lights and clusters
Clusters
Individual Lights
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 18 KUCG |
Constructing lightcut
is the total intensity of the cluster
(oriented light only)
Create the smallest cluster according to this metric:
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 19 KUCG |
Key Concepts
• Light Cluster
• Light Tree
• A Cut
A set of nodes that partitions the lights into clusters
Simple Example
#1 #2 #3 #4
1 2 3 4
1 4
Light Tree
Clusters
Individual Lights
Representative Light
4
Three Example Cuts
1 2 3 4
1 4
4
1 2 3 4
1 4
4
1 2 3 4
1 4
4
Three Cuts
#1 #2 #4 #1 #3 #4 #1 #4
회색 영역: 에러가 있는 부분
Three Example Cuts
1 2 3 4
1 4
4
1 2 3 4
1 4
4
1 2 3 4
1 4
4
Three Cuts
#1 #2 #4 #1 #3 #4 #1 #4
Good Bad Bad
Three Example Cuts
1 2 3 4
1 4
4
1 2 3 4
1 4
4
1 2 3 4
1 4
4
Three Cuts
#1 #2 #4 #1 #3 #4 #1 #4
Bad Good Bad
Three Example Cuts
1 2 3 4
1 4
4
1 2 3 4
1 4
4
1 2 3 4
1 4
4
Three Cuts
#1 #2 #4 #1 #3 #4 #1 #4
Good Good Good
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 25 KUCG |
Cluster Approximation
Cluster
result ~ Mj Gj Vj Ii S lights
~
j is the representative light
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 26 KUCG |
error≤ 𝐿 𝑗= Mub Gub Vub Ii
Cluster Error Bound
Cluster j
S lights
ub == upper bound
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 27 KUCG |
Perceptual Metric
• Weber’s Law
Contrast visibility threshold is fixed percentage of signal
Used 2% in our results
• Ensure each cluster’s error < visibility threshold
Transitions will not be visible
Used to select cut
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 28 KUCG |
Cut Selection Algorithm
Cut
• Start with coarse cut (eg, root node)
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 29 KUCG |
Cut Selection Algorithm
Cut
• Select cluster with largest error bound
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 30 KUCG |
Cut Selection Algorithm
Cut
• Refine if error bound 𝐿 𝑗> 2% of 𝐿 𝑗𝑗
𝐿 𝑗 = Mj Gj Vj Ii 𝑖
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 31 KUCG |
Cut Selection Algorithm
Cut
Maximum 𝐿 𝑗
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 32 KUCG |
Cut Selection Algorithm
Cut
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 33 KUCG |
Cut Selection Algorithm
Cut
Maximum 𝐿 𝑗
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 34 KUCG |
Cut Selection Algorithm
Cut
• Repeat until cut obeys 2% threshold
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 35 KUCG |
Scalable
• Scalable solution for many point lights
0
100
200
300
400
500
600
0 1000 2000 3000 4000
Number of Point Lights
Tim
e (
secs)
Standard
Ward
Lightcut
Tableau Scene
Sub-linear cost
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 36 KUCG |
Algorithm Overview
• Pre-process
Convert illumination to point lights
Build light tree
• For each eye ray
Choose a cut to approximate the illumination
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 37 KUCG |
Convert Illumination
• HDR environment map
Apply captured light to scene
Convert to directional point lights using [Agarwal et al. 2003]
• Indirect Illumination
Convert indirect to direct illumination using Instant Radiosity [Keller 97] • Caveats: no caustics, clamping, etc.
More lights = more indirect detail
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 38 KUCG |
Instant Radiosity
• Simulate indirect lighting
by placing a big number of point lights • where direct lighting hits the scene
• Research in this field tried hard
to keep the number of Virtual Point Lights low • while maintaining the indirect lighting effect
• Use a big number of VPLs without worrying
thanks to Lightcuts
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 39 KUCG |
Lightcuts (128s) Reference (1096s)
Kitchen, 388K polygons, 4608 lights (72 area sources)
Lightcuts (128s) Reference (1096s)
Error Error x16
Kitchen, 388K polygons, 4608 lights (72 area sources)
Combined Illumination
Lightcuts 128s
4 608 Lights (Area lights only)
Lightcuts 290s
59 672 Lights (Area + Sun/sky + Indirect)
Combined Illumination
Lightcuts 128s
4 608 Lights (Area lights only)
Avg. 259 shadow rays / pixel
Lightcuts 290s
59 672 Lights (Area + Sun/sky + Indirect)
Avg. 478 shadow rays / pixel (only 54 to area lights)
Lightcuts Reference
Error x 16 Cut size
Kitchen, 388K polygons, 59,672 Lights
Kitchen, shadow ray false color
0 750 1500
Tableau, shadow ray false color
0 750 1500
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 48 KUCG |
Talk Overview
• Lightcuts
Scalable accurate solution for complex illumination
• Reconstruction cuts
Builds on lightcuts
Use smart interpolation to further reduce cost
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 49 KUCG |
Reconstruction Cuts
• Subdivide image into blocks
Generate samples at corners
• Within blocks
Interpolate smooth illumination
Use shadow rays when needed to preserve features • Shadow boundaries, glossy highlights, etc.
• Anti-aliasing
(5-50 samples per pixel)
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 50 KUCG |
Image Subdivision
• Divide into max block size (4x4 blocks)
4x4 block
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 51 KUCG |
Image Subdivision
• Divide into max block size (4x4 blocks)
• Trace multiple eye rays per pixel
• Subdivide blocks if needed
Based on material, surface normal, and local shadowing configuration
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 52 KUCG |
Image Subdivision
• Divide into max block size (4x4 blocks)
• Trace multiple eye rays per pixel
• Subdivide blocks if needed
Based on material (same),
surface normal (30 degreees), and local shadowing configuration • (cone test)
• Compute samples at corners
Samples
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 53 KUCG |
Cone test
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 54 KUCG |
Image Subdivision
• Divide into max block size (4x4 blocks)
• Trace multiple eye rays per pixel
• Subdivide blocks if needed
Based on material, surface normal, and local shadowing configuration
• Compute samples at corners
• Shade eye rays using reconstruction cuts
Samples Reconstruction cut
Temple, 2.1M polygons, 505 064 lights, (Sun/sky+Indirect)
Temple, reconstruction cut block size
Kitchen with sample locations marked
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 58 KUCG |
Sample Construction
• Compute a lightcut at each sample
• For each node on or above the cut
Create impostor light (directional light)
Reproduce cluster’s effect at sample
Cluster
Impostor Directional light
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 59 KUCG |
Notation
For each sample k of the node of the cut n, store
Imposter’s intensity
Total radiance
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 60 KUCG |
Computing reconstruction cut
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 61 KUCG |
Reconstruction Cut
• Top-down traversal of light tree
Comparing impostors from nearby samples
Not visited
Recurse
Occluded
Interpolate
Shadow ray
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 62 KUCG |
Reconstruction Cut
• Recurse if samples differ significantly
Not visited
Recurse
Occluded
Interpolate
Shadow ray
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 63 KUCG |
Reconstruction Cut
• Discard if cluster occluded at all samples
Not visited
Recurse
Occluded
Interpolate
Shadow ray
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 64 KUCG |
Reconstruction Cut
Not visited
Recurse
Occluded
Interpolate
Shadow ray
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 65 KUCG |
Reconstruction Cut
Not visited
Recurse
Occluded
Interpolate
Shadow ray
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 66 KUCG |
Reconstruction Cut
• Interpolate if sample impostors are similar
Not visited
Recurse
Occluded
Interpolate
Shadow ray
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 67 KUCG |
Reconstruction Cut
• If cluster contribution small enough, shoot shadow ray to representative light
Lightcut-style evaluation
Not visited
Recurse
Occluded
Interpolate
Shadow ray
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 68 KUCG |
Reconstruction Cut
Not visited
Recurse
Occluded
Interpolate
Shadow ray
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 69 KUCG |
Result Statistics
• Temple model (2.1M polys, 505 064 lights)
Image algorithm Avg. eye rays
per pixel Image time
Lightcuts only 1 225s
Combined (anti-aliased) 5.5 189s
Cut type Avg. shadow rays per
cut
Lightcut 373
Reconstruction cut 9.4
Grand Central, 1.46M polygons, 143 464 lights, (Area+Sun/sky+Indirect)
Avg. shadow rays per eye ray 46 (0.03%)
Tableau, 630K polygons, 13 000 lights, (EnvMap+Indirect)
Avg. shadow rays per eye ray 17 (0.13%)
Bigscreen, 628K polygons, 639 528 lights, (Area+Indirect)
Avg. shadow rays per eye ray 17 (0.003%)
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 73 KUCG |
Conclusions
• Lightcuts
Scalable, unified framework for complex illumination
Analytic cluster error bounds & perceptual visibility metric
• Reconstruction cuts
Exploits coherence
High-resolution, anti-aliased images
0
100
200
300
400
500
600
0 1000 2000 3000 4000
Number of Point Lights
Tim
e (
secs)
Standard
Ward
Lightcut
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 74 KUCG |
Future Work
• Visibility bounds
• More light types
Spot lights etc.
• More BRDF types
Need cheap tight bounds
• Other illumination types
Eg, caustics
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 75 KUCG |
• 아직 안 끝났다
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 76 KUCG |
error≤ 𝐿 𝑗= Mub Gub Vub Ii
Cluster Error Bound
Cluster j
S lights
ub == upper bound
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 77 KUCG |
Visibility term
Vub =1
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 78 KUCG |
Geometric term
• Directional and omni
Trivial
• Oriented
Max(cos 𝜃)=1
However, tighter bound can be found
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 79 KUCG |
Max(cos 𝜃)
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 80 KUCG |
Max(cos 𝜃)
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 81 KUCG |
Upper bound of oriented light
Korea University Computer Graphics Lab.
이성호| 26 July 2011 | # 82 KUCG |
Material term
• Diffuse
1
𝜋
• Phong Exploit max(cos 𝜃)
• Ward Refer [Walter 2005]
• Theoretically, any BRDF can be handled If it has cheap and tight bound