Lightcuts: A Scalable Lightcuts: A Scalable Approach to - - PowerPoint PPT Presentation

lightcuts a scalable lightcuts a scalable approach to
SMART_READER_LITE
LIVE PREVIEW

Lightcuts: A Scalable Lightcuts: A Scalable Approach to - - PowerPoint PPT Presentation

Lightcuts: A Scalable Lightcuts: A Scalable Approach to Illumination Approach to Illumination Bruce Walter, Sebastian Fernandez, Adam Arbree, Mike Donikian, Kavita Bala, Donald Greenberg Program of Computer Graphics, Cornell University


slide-1
SLIDE 1

Lightcuts: A Scalable Approach to Illumination Lightcuts: A Scalable Approach to Illumination

Bruce Walter, Sebastian Fernandez, Adam Arbree, Mike Donikian, Kavita Bala, Donald Greenberg

Program of Computer Graphics, Cornell University

slide-2
SLIDE 2

LIGHTCUTS

SIGGRAPH 2005

2

Lightcuts Lightcuts

  • Efficient, accurate complex illumination

Environment map lighting & indirect Time 111s Textured area lights & indirect Time 98s

(640x480, Anti-aliased, Glossy materials)

slide-3
SLIDE 3

LIGHTCUTS

SIGGRAPH 2005

3

Scalable Scalable

  • Scalable solution for many point lights

– Thousands to millions – Sub-linear cost

100 200 300 400 500 600 1000 2000 3000 4000

Number of Point Lights Time (secs) Standard Ward Lightcut

Tableau Scene

slide-4
SLIDE 4

LIGHTCUTS

SIGGRAPH 2005

4

Complex Lighting Complex Lighting

  • Simulate complex illumination using point lights

– Area lights – HDR environment maps – Sun & sky light – Indirect illumination

  • Unifies illumination

– Enables tradeoffs

between components

Area lights + Sun/sky + Indirect

slide-5
SLIDE 5

LIGHTCUTS

SIGGRAPH 2005

5

Related Work Related Work

  • Hierarchical techniques

– Hierarchical radiosity [eg, Hanrahan et al. 91, Smits et al. 94] – Light hierarchy [Paquette et al. 98]

  • Many lights

– [eg, Teller & Hanrahan 93, Ward 94, Shirley et al. 96, Fernandez et al. 2002,

Wald et al. 2003]

  • Illumination coherence

– [eg, Kok & Jensen 92, Ward 92, Scheel et al. 2002, Krivanek et al. 2005]

  • Env map illumination

– [Debevec 98, Agarwal et al. 2003, Kollig & Keller 2003, Ostromoukhov et al.

2004]

  • Instant Radiosity

– [Keller 97, Wald et al. 2002]

slide-6
SLIDE 6

LIGHTCUTS

SIGGRAPH 2005

6

Talk Overview Talk Overview

  • Lightcuts

– Scalable accurate solution for complex illumination

  • Reconstruction cuts

– Builds on lightcuts – Use smart interpolation to further reduce cost

slide-7
SLIDE 7

LIGHTCUTS

SIGGRAPH 2005

7

Lightcuts Problem Lightcuts Problem

Visible surface

slide-8
SLIDE 8

LIGHTCUTS

SIGGRAPH 2005

8

Lightcuts Problem Lightcuts Problem

slide-9
SLIDE 9

LIGHTCUTS

SIGGRAPH 2005

9

Lightcuts Problem Lightcuts Problem

Camera

slide-10
SLIDE 10

LIGHTCUTS

SIGGRAPH 2005

10

Key Concepts Key Concepts

  • Light Cluster

– Approximate many lights by a single brighter light

(the representative light)

slide-11
SLIDE 11

LIGHTCUTS

SIGGRAPH 2005

11

Key Concepts Key Concepts

  • Light Cluster
  • Light Tree

– Binary tree of lights and clusters

Clusters Individual Lights

slide-12
SLIDE 12

LIGHTCUTS

SIGGRAPH 2005

12

Key Concepts Key Concepts

  • Light Cluster
  • Light Tree
  • A Cut

– A set of nodes that partitions the lights into clusters

slide-13
SLIDE 13

LIGHTCUTS

SIGGRAPH 2005

13

Simple Example Simple Example

#1 #2 #3 #4

1 2 3 4 1 4

Light Tree

Clusters Individual Lights Representative Light

4

slide-14
SLIDE 14

LIGHTCUTS

SIGGRAPH 2005

14

Three Example Cuts 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

slide-15
SLIDE 15

LIGHTCUTS

SIGGRAPH 2005

15

Three Example Cuts 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

slide-16
SLIDE 16

LIGHTCUTS

SIGGRAPH 2005

16

Three Example Cuts 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

slide-17
SLIDE 17

LIGHTCUTS

SIGGRAPH 2005

17

Three Example Cuts 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

slide-18
SLIDE 18

LIGHTCUTS

SIGGRAPH 2005

18

Algorithm Overview Algorithm Overview

  • Pre-process

– Convert illumination to point lights – Build light tree

  • For each eye ray

– Choose a cut to approximate the illumination

slide-19
SLIDE 19

LIGHTCUTS

SIGGRAPH 2005

19

Convert Illumination 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

slide-20
SLIDE 20

LIGHTCUTS

SIGGRAPH 2005

20

Algorithm Overview Algorithm Overview

  • Pre-process

– Convert illumination to point lights – Build light tree

  • For each eye ray

– Choose a cut to approximate the local illumination

  • Cost vs. accuracy
  • Avoid visible transition artifacts
slide-21
SLIDE 21

LIGHTCUTS

SIGGRAPH 2005

21

Perceptual Metric 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

slide-22
SLIDE 22

LIGHTCUTS

SIGGRAPH 2005

22

Illumination Equation Illumination Equation

M a t e r i a l t e r m

result =

Mi Gi Vi Ii

Σ

lights

G e

  • m

e t r i c t e r m V i s i b i l i t y t e r m L i g h t i n t e n s i t y

Currently support diffuse, phong, and Ward

slide-23
SLIDE 23

LIGHTCUTS

SIGGRAPH 2005

23

Illumination Equation Illumination Equation

M a t e r i a l t e r m

result =

Mi Gi Vi Ii

Σ

lights

G e

  • m

e t r i c t e r m V i s i b i l i t y t e r m L i g h t i n t e n s i t y

slide-24
SLIDE 24

LIGHTCUTS

SIGGRAPH 2005

24

Illumination Equation Illumination Equation

M a t e r i a l t e r m

result =

Mi Gi Vi Ii

Σ

lights

G e

  • m

e t r i c t e r m V i s i b i l i t y t e r m L i g h t i n t e n s i t y

slide-25
SLIDE 25

LIGHTCUTS

SIGGRAPH 2005

25

Cluster Approximation Cluster Approximation

Cluster

result ~ Mj Gj Vj

Ii

Σ

lights

~

j is the representative light

slide-26
SLIDE 26

LIGHTCUTS

SIGGRAPH 2005

26

error < Mub Gub Vub

Ii

Cluster Error Bound Cluster Error Bound

Cluster

Σ

lights

  • Bound each term

– Visibility <= 1 (trivial) – Intensity is known – Bound material and

geometric terms using cluster bounding volume

ub == upper bound

slide-27
SLIDE 27

LIGHTCUTS

SIGGRAPH 2005

27

Cut Selection Algorithm Cut Selection Algorithm

Cut

  • Start with coarse cut (eg, root node)
slide-28
SLIDE 28

LIGHTCUTS

SIGGRAPH 2005

28

Cut Selection Algorithm Cut Selection Algorithm

Cut

  • Select cluster with largest error bound
slide-29
SLIDE 29

LIGHTCUTS

SIGGRAPH 2005

29

Cut Selection Algorithm Cut Selection Algorithm

Cut

  • Refine if error bound > 2% of total
slide-30
SLIDE 30

LIGHTCUTS

SIGGRAPH 2005

30

Cut Selection Algorithm Cut Selection Algorithm

Cut

slide-31
SLIDE 31

LIGHTCUTS

SIGGRAPH 2005

31

Cut Selection Algorithm Cut Selection Algorithm

Cut

slide-32
SLIDE 32

LIGHTCUTS

SIGGRAPH 2005

32

Cut Selection Algorithm Cut Selection Algorithm

Cut

slide-33
SLIDE 33

LIGHTCUTS

SIGGRAPH 2005

33

Cut Selection Algorithm Cut Selection Algorithm

Cut

  • Repeat until cut obeys 2% threshold
slide-34
SLIDE 34

Lightcuts (128s) Reference (1096s) Kitchen, 388K polygons, 4608 lights (72 area sources)

slide-35
SLIDE 35

Lightcuts (128s) Reference (1096s) Error Error x16 Kitchen, 388K polygons, 4608 lights (72 area sources)

slide-36
SLIDE 36

LIGHTCUTS

SIGGRAPH 2005

36

Combined Illumination Combined Illumination

Lightcuts 128s 4 608 Lights (Area lights only) Lightcuts 290s 59 672 Lights (Area + Sun/sky + Indirect)

slide-37
SLIDE 37

LIGHTCUTS

SIGGRAPH 2005

37

Combined Illumination 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)

slide-38
SLIDE 38

LIGHTCUTS

SIGGRAPH 2005

38

Lightcuts Recap Lightcuts Recap

  • Unified illumination handling
  • Scalable solution for many lights

– Locally adaptive representation (the cut)

  • Analytic cluster error bounds

– Most important lights always sampled

  • Perceptual visibility metric

Lightcuts implementation sketch, Petree Hall C, ~4:30pm

slide-39
SLIDE 39

LIGHTCUTS

SIGGRAPH 2005

39

Talk Overview Talk Overview

  • Lightcuts

– Scalable accurate solution for complex illumination

  • Reconstruction cuts

– Builds on lightcuts – Use smart interpolation to further reduce cost

slide-40
SLIDE 40

LIGHTCUTS

SIGGRAPH 2005

40

Reconstruction Cuts 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)

slide-41
SLIDE 41

LIGHTCUTS

SIGGRAPH 2005

41

Image Subdivision Image Subdivision

  • Divide into max block size (4x4 blocks)

4x4 block

slide-42
SLIDE 42

LIGHTCUTS

SIGGRAPH 2005

42

Image Subdivision 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

slide-43
SLIDE 43

LIGHTCUTS

SIGGRAPH 2005

43

Image Subdivision 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

Samples

slide-44
SLIDE 44

LIGHTCUTS

SIGGRAPH 2005

44

Image Subdivision 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

slide-45
SLIDE 45

LIGHTCUTS

SIGGRAPH 2005

45

Sample Construction 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

slide-46
SLIDE 46

LIGHTCUTS

SIGGRAPH 2005

46

Reconstruction Cut Reconstruction Cut

  • Top-down traversal of light tree

– Comparing impostors from nearby samples

Not visited Recurse Occluded Interpolate Shadow ray

slide-47
SLIDE 47

LIGHTCUTS

SIGGRAPH 2005

47

Reconstruction Cut Reconstruction Cut

  • Recurse if samples differ significantly

Not visited Recurse Occluded Interpolate Shadow ray

slide-48
SLIDE 48

LIGHTCUTS

SIGGRAPH 2005

48

Reconstruction Cut Reconstruction Cut

  • Discard if cluster occluded at all samples

Not visited Recurse Occluded Interpolate Shadow ray

slide-49
SLIDE 49

LIGHTCUTS

SIGGRAPH 2005

49

Reconstruction Cut Reconstruction Cut

Not visited Recurse Occluded Interpolate Shadow ray

slide-50
SLIDE 50

LIGHTCUTS

SIGGRAPH 2005

50

Reconstruction Cut Reconstruction Cut

Not visited Recurse Occluded Interpolate Shadow ray

slide-51
SLIDE 51

LIGHTCUTS

SIGGRAPH 2005

51

Reconstruction Cut Reconstruction Cut

  • Interpolate if sample impostors are similar

Not visited Recurse Occluded Interpolate Shadow ray

slide-52
SLIDE 52

LIGHTCUTS

SIGGRAPH 2005

52

Reconstruction Cut Reconstruction Cut

  • If cluster contribution small enough, shoot

shadow ray to representative light

– Lightcut-style evaluation

Not visited Recurse Occluded Interpolate Shadow ray

slide-53
SLIDE 53

LIGHTCUTS

SIGGRAPH 2005

53

Reconstruction Cut Reconstruction Cut

Not visited Recurse Occluded Interpolate Shadow ray

slide-54
SLIDE 54

Temple, 2.1M polygons, 505064 lights, (Sun/sky+Indirect)

slide-55
SLIDE 55

Temple, reconstruction cut block size

slide-56
SLIDE 56

LIGHTCUTS

SIGGRAPH 2005

56

Result Statistics Result Statistics

  • Temple model (2.1M polys, 505064 lights)

5.5 1

  • Avg. eye rays

per pixel

189s 225s

Image time Image algorithm

Combined (anti-aliased) Lightcuts only Reconstruction cut Lightcut

Cut type

  • Avg. shadow rays per cut

9.4 373

slide-57
SLIDE 57

Grand Central, 1.46M polygons, 143464 lights, (Area+Sun/sky+Indirect)

  • Avg. shadow rays per eye ray 46 (0.03%)
slide-58
SLIDE 58

Tableau, 630K polygons, 13000 lights, (EnvMap+Indirect)

  • Avg. shadow rays per eye ray 17 (0.13%)
slide-59
SLIDE 59

Bigscreen, 628K polygons, 639528 lights, (Area+Indirect)

  • Avg. shadow rays per eye ray 17 (0.003%)
slide-60
SLIDE 60

LIGHTCUTS

SIGGRAPH 2005

60

Conclusions Conclusions

  • Lightcuts

– Scalable, unified framework

for complex illumination

– Analytic cluster error bounds

& perceptual visibility metric

  • Reconstruction cuts

– Exploits coherence – High-resolution, anti-aliased images

100 200 300 400 500 600 1000 2000 3000 4000

Number of Point Lights Time (secs) Standard Ward Lightcut

slide-61
SLIDE 61

LIGHTCUTS

SIGGRAPH 2005

61

Future Work Future Work

  • Visibility bounds
  • More light types

– Spot lights etc.

  • More BRDF types

– Need cheap tight bounds

  • Other illumination types

– Eg, caustics

slide-62
SLIDE 62

LIGHTCUTS

SIGGRAPH 2005

62

Acknowledgements Acknowledgements

  • National Science Foundation grant ACI-0205438
  • Intel corporation for support and equipment
  • The modelers

– Kitchen: Jeremiah Fairbanks – Bigscreen: Will Stokes – Grand Central: Moreno Piccolotto, Yasemin Kologlu, Anne

Briggs, Dana Gettman

– Temple: Veronica Sundstedt, Patrick Ledda, and the graphics

group at University of Bristol

– Stanford and Georgia Tech for Buddha and Horse geometry

slide-63
SLIDE 63

LIGHTCUTS

SIGGRAPH 2005

63

The End The End

  • Questions?

Lightcuts implementation sketch, Petree Hall C, ~4:30pm

slide-64
SLIDE 64

LIGHTCUTS

SIGGRAPH 2005

64

Scalable Scalable

  • Scalable solution for many point lights

– Thousands to millions – Sub-linear cost

100 200 300 400 500 600 1000 2000 3000 4000 5000

Number of Point Lights Time (secs) Standard Ward Lightcuts

100 200 300 400 500 600 1000 2000 3000 4000

Number of Point Lights Time (secs) Standard Ward Lightcut

Tableau Scene Kitchen Scene

slide-65
SLIDE 65

Lightcuts Reference Error x 16 Cut size

slide-66
SLIDE 66

Kitchen, 388K polygons, 59,672 Lights

slide-67
SLIDE 67

Kitchen, shadow ray false color

750 1500

slide-68
SLIDE 68

Tableau, shadow ray false color

750 1500

slide-69
SLIDE 69

Kitchen with sample locations marked

slide-70
SLIDE 70

LIGHTCUTS

SIGGRAPH 2005

70

Types of Point Lights Types of Point Lights

  • Omni

– Spherical lights

  • Oriented

– Area lights, indirect lights

  • Directional

– HDR env maps, sun&sky