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

Bruce Walter, Sebastian Fernandez, Adam Arbree, Mike Donikian, …kucg.korea.ac.kr/new/seminar/2011/ppt/ppt-2011-07-13.pdf · 2002. 1. 17. · Korea University Computer Graphics Lab

  • 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