Lightcuts: A Scalable Approach to Illumination Authored by: Bruce - - PowerPoint PPT Presentation

lightcuts a scalable approach to illumination
SMART_READER_LITE
LIVE PREVIEW

Lightcuts: A Scalable Approach to Illumination Authored by: Bruce - - PowerPoint PPT Presentation

Lightcuts: A Scalable Approach to Illumination Authored by: Bruce Walter, Sebastian Fernandez, Adam Arbree, Kavita Bala, Michael Donikian, Donald P. Greenberg Presented by: Brian Phlipot and Sean Ryan Outline Introduction o What is


slide-1
SLIDE 1

Lightcuts: A Scalable Approach to Illumination

Presented by: Brian Phlipot and Sean Ryan Authored by: Bruce Walter, Sebastian Fernandez, Adam Arbree, Kavita Bala, Michael Donikian, Donald P. Greenberg

slide-2
SLIDE 2

Outline

  • Introduction
  • What is Lightcuts and why do we need it?
  • Light Tree
  • How to cluster lights
  • How to make a lightcut
  • Implementation
  • Calculating error bounds
  • Converting to point lights
  • Results
slide-3
SLIDE 3

Lots of Lights!

slide-4
SLIDE 4

Why do we want Lightcuts?

  • Direct illumination is linear in number of lights
  • Lightcuts estimates clusters of lights
slide-5
SLIDE 5

Useful with few lights too!

  • Represent complex lighting with many lights.
  • Environment map as a sphere of directional lights.
  • Divide area lights into grids of oriented lights.
  • Instant Radiosity
  • Simulates indirect illumination as direct illumination
  • Flood the scene with rays, place virtual point lights

(VPLs) where they hit surfaces

All of this will be explained in detail later...

slide-6
SLIDE 6

Aside: Supported Point Lights

  • Omni: equally in all directions.
  • e.g. Spherical lights
  • Oriented: lobe based emission.
  • e.g. Area lights, indirect lights
  • Directional: fixed direction
  • e.g. Env maps, sun/sky
slide-7
SLIDE 7

How do we Cluster?

  • Clustering Criterion
  • Only cluster lights of the same type.
  • Similar positions and orientations.
  • Forming a Cluster
  • Randomly pick representative light.
  • Boost its radiance to the sum of all constituents.
slide-8
SLIDE 8

The Light Tree

  • Hierarchy of lights and clusters.
  • Computed once per image.
  • Each sample ray makes its own "lightcut".

Clusters Individual Lights

slide-9
SLIDE 9

Making Cuts

  • Maintain a set of included nodes.
  • Start at the root node.
  • While the error in a node is >2%
  • Replace that node with its two children.
  • We get a partition of the set of lights.
slide-10
SLIDE 10

Three Example Cuts

slide-11
SLIDE 11

Calculating Error Bounds

  • We must consider the three outside terms.

Visibility (Vi):

  • In the range [0, 1].
  • Hard to bound when dealing with

semitransparent surfaces.

  • Just say it's always 1.
slide-12
SLIDE 12

The Geometric Term (Gi)

  • Variables:
  • yi: location of point light.
  • x: where we are computing illumination.
  • phi: angle between viewing vector and vector of

greatest emission.

  • Directional lights are trivial.
  • Omni lights are bounded by min distance.
slide-13
SLIDE 13

Bounding Oriented Lights

  • Want to minimize the angle phi.
  • Translate all (x, y) pairs such that each y is

at the origin. Area of lights => area of points.

  • Find angle to new bounding volume and

subtract angle of orientation bounding cone.

  • Get distance term like we did for Omni lights.
slide-14
SLIDE 14

The Material Term (Mi)

  • Product of the BSDF and cosine factor.
  • Already know how to bound a cosine.
  • BSDF Bounds:
  • Lambertian: constant value.
  • Phong: depends on cosine of reflection angle.
  • Ward: asymmetric, depends on half-angle. See

(Walter 2005) for a bounding algorithm.

slide-15
SLIDE 15

Converting to Point Lights

  • Area Lights
  • Pick uniformly distributed point lights
  • Env Maps
  • Pick with respect to intensity [Agarwal et al. 2003]
  • Threshold the map into levels of constant radiance
  • Spread points throughout each level.
slide-16
SLIDE 16

Indirect Illumination

  • Instant Radiosity [Keller et al. 1997]
  • Shoot random rays from lights into the scene.
  • Create VPLs at scatter points.
  • 1,000-1,000,000 VPLs => use full BRDF
  • Clamp individual VPLs to reduce noise
  • Supports glossy surfaces but not caustics.
slide-17
SLIDE 17

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

slide-18
SLIDE 18

Temple: 2.1M polygons, 505,064 lights, 225 seconds

slide-19
SLIDE 19

Video

slide-20
SLIDE 20

¿Questions?

slide-21
SLIDE 21

References

  • Lightcuts
  • http://www.cs.cornell.edu/~kb/projects/lightcuts/
  • Structured Importance Sampling of Env Maps
  • http://www.cs.berkeley.edu/~ravir/papers/structured/
  • Instant Radiosity
  • http://dl.acm.org/citation.cfm?id=258769