bruce walter, sebastian fernandez, adam arbree, mike donikian,...

82
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: 이성호

Upload: others

Post on 10-Feb-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

  • 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