1 / 16

Direct Illumination with Lazy Visibility Evaluation

This paper presents a method for efficiently computing direct illumination in a three-dimensional scene by determining visibility between surface points and area light sources. The method integrates the incoming radiance function due to the light source and utilizes two phases: visibility function and rendering equation. The technique allows for fast and accurate rendering of soft shadows. The paper discusses the construction of a blocker-map and the use of Monte Carlo integration for analytic integration. Results demonstrate the effectiveness of the approach.

emcclain
Download Presentation

Direct Illumination with Lazy Visibility Evaluation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Direct Illumination with Lazy Visibility Evaluation David Hart Philip Dutré Donald P. Greenberg Cornell University SIGGRAPH 99

  2. Motivation • To compute the direct illumination in a three-dimensional scene: • Determines the visibility between any surface point and an area light source. • An efficient processing of the visibility function is often the key for rendering fast and accurate soft shadows. • Integrates the incoming radiance function due to the light source.

  3. Distinguishing Features • Two phases: • Visibility function • Rendering equation • The visibility pass detects blocker-light source pairs. • Do NOT construct a complete discontinuity mesh in object space. • The second phase clips the light sources according to the stored blockers. • The remaining light source area defines the integration domain for the illumination integral. • We store no visibility information that will not be needed during the illumination computations.

  4. Rendering Equation • Too complex!

  5. Analytic Integration • The luminaires are a (disjoint) set of polygons. • The exitant radiance is a constant for a given light source. • The receiving surface is diffuse. • Use Stoke’s theorem:

  6. Monte Carlo Integration • Regardless of the type of BRDF. • Domain reduction • A fraction of the generated samples will evaluate to zero causing significant noise in the image. • A reduction of the integration domain to the visible parts of the light sources would decrease noise significantly. • Solid angle sampling • The integration domain can be transformed from the area of the light sources to the solid angle subtended by the light sources on the hemisphere around.

  7. Construction of The Blocker-Map

  8. Construction of The Blocker-Map • Shadow rays • A ray is cast through the center of each pixel find the nearest visible point and a number of shadow rays starting from that point are generated for each light source. • If one of these rays hits an intervening object, this blocker-light source pair is stored. • Flood-fill algorithm • The blocker is projected onto the light source and neighboring pixels are examined. • If the two polygons (blocker and light source) overlap, the pair will be added to the blocker-map.

  9. Blocker-Map

  10. Anti-Aliasing • If more than one ray per pixel is generated for illumination computations as part of an anti-aliasing algorithm. • The blocker-light source list might be invalid. • The surface points might be located in very different positions in object space. • The coherency of the penumbra regions over the image plane can again be exploited. Due to the flood-fill, we know that a blocker is at least valid for the center location of all covered pixels. Blah blah … • If we allow the flood-fill algorithm to include the boundary pixels for which the flood-fill test fails, we can safely assume that we have stored all possible blockers. • To generate multiple sample rays for illumination computations, without increasing the number of rays used for constructing the blocker-map. • High-frequency geometry, such as small objects, might be overlooked.

  11. Discussion • Missing blockers. • Increases the number of shadow rays. • Concludes any rather than the nearest intersecting polygon. • Receiver surfaces. • Produces soft shadows on any surface type. • Small blockers. • Clip a very small piece of the light source. • A whole set of small blockers might significantly affect the visibility of a light source, thus they cannot be ignored. • Requires a full clipping operation. • This is a worst-case scenario for our current algorithm.

  12. Results

  13. Results

  14. Results

  15. Results

  16. Results

More Related