slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
T. Ritschel T. Grosch M. H. Kim H.-P. Seidel C. Dachsbacher J. Kautz Presented by Bo-Yin Yao PowerPoint Presentation
Download Presentation
T. Ritschel T. Grosch M. H. Kim H.-P. Seidel C. Dachsbacher J. Kautz Presented by Bo-Yin Yao

Loading in 2 Seconds...

play fullscreen
1 / 50

T. Ritschel T. Grosch M. H. Kim H.-P. Seidel C. Dachsbacher J. Kautz Presented by Bo-Yin Yao - PowerPoint PPT Presentation


  • 148 Views
  • Uploaded on

Real-Time Rendering Paper Presentation Imperfect Shadow Maps for Efficient Computation of Indirect Illumination. T. Ritschel T. Grosch M. H. Kim H.-P. Seidel C. Dachsbacher J. Kautz Presented by Bo-Yin Yao 2010.3.25. Outlines. Introduction Related work Imperfect shadow maps

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'T. Ritschel T. Grosch M. H. Kim H.-P. Seidel C. Dachsbacher J. Kautz Presented by Bo-Yin Yao' - gisela


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Real-Time Rendering Paper Presentation Imperfect Shadow Maps for Efficient Computation of Indirect Illumination

T. Ritschel

T. Grosch

M. H. Kim

H.-P. Seidel

C. Dachsbacher

J. Kautz

Presented by Bo-Yin Yao

2010.3.25

outlines
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
outlines1
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
introduction
Introduction
  • Interactive compute the indirect illumination in large and fully dynamic scenes
  • Approximate visibility for indirect illumination with imperfect shadow maps (ISMs)
    • Low-resolution
    • Rendered from crude point-based representation of the scene
  • Use ISMs with a global illumination algorithm based on virtual point lights (VPLs) – instant-radiosity
main steps
Main steps

1. Scene preprocessing

2. VPL generation

3. Point-based depth maps (ISMs)

4. Pull-push to fill holes of ISMs

5. Shading

outlines2
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
global illumination methods
Global Illumination Methods
  • Use accurate visibility
    • By intersecting rays with the scene geometry
      • Path tracing
      • Photon mapping
      • Ray-tracing
    • Through shadow volumes / maps or ray-casting (Based on VPLs)
      • Instant radiosity

[Keller 1997]

      • Instant global illumination

[Wald et al. 2002]

global illumination methods1
Global Illumination Methods
  • Use visibility approximations
    • Lightcuts method

[Walter et al. 2005]

    • Incident lighting from nearby geometry is integrated without computing visibility

[Arikan et al. 2005]

    • Reduce the geometric complexity

[Rushmeieret al. 1993; Christensen et al. 2003; Tabellion and Lamorlette 2004]

real time global illumination
Real-Time Global Illumination
  • Precomputed radiance transfer (PRT)
    • Only support lighting changes, restricted to static scene

[Sloan et al. 2002]

    • Only allow movement of rigid objects

[Iwasaki et al. 2007; Wang et al. 2007]

  • Neglect the visibility for indirect illumination, allow dynamic models

[Dachsbacher and Stamminger 2005; Dachsbacher and Stamminger 2006]

real time global illumination1
Real-Time Global Illumination
  • Approximate visibility by ambient occlusion

[Bunnell 2005]

  • Iterative process using antiradiance (negative light)

[Dachsbacher et al. 2007]

instant radiosity
Instant Radiosity

Direct light

VPL

Indirect

light

VPL

VPL

Virtual point light

instant radiosity bottleneck
Instant Radiosity bottleneck

32

  • 1024 VPLs
  • 100k 3D model
  • 32x32 depth map
  • ~300M transforms
  • 100x overdraw

32

Virtual point light

outlines3
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
point based representation of the scene
Point-based representation of the scene
  • Approximate the 3D scene by a set of points
  • Each point is created by randomly selecting a triangle with probability proportional to its area, and then pick a random location on it
  • Also store the barycentric coordinate
    • To support dynamic scenes without recomputing the point representation
    • To retrieve the normal and reflectance
outlines4
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
direct light vpls
Direct light VPLs
  • The 3D position of each VPL is determined by rendering a cube map from the viewpoint of the direct point light source
  • Select Nvpl VPLs by importance sampling
direct light vpls1
Direct light VPLs

Direct lightVPLs!

Light

Normal

Position

indirect light vpls for multiple bounces
Indirect light VPLs (for multiple bounces)
  • Generalize ISMs to imperfect reflective shadow maps (IRSMs)
    • Instead of rendering the shaded geometry, render shaded points into the IRSMs
    • Each paraboloid map stores its own indirect illumination (instead of depth values)
    • Use importance sampling to generate the second bounce VPLs
outlines5
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
point based depth maps isms
Point based depth maps (ISMs)
  • ISM is created by splatting the point representation into the depth buffer
    • Box splatting kernel
    • Point splat size is base on its squared distance to the VPL position
  • Use parabolic maps
    • Oriented along the normal of the surface
    • VPLs emit light over a hemisphere

→ need to cover a full hemisphere of depth information

point based depth maps isms1
Point based depth maps (ISMs)
  • Non-uniform point distributions
  • Many low-resolution ISMs are stored in a single, large texture
ism compared with classic shadow map
ISM compared with classic shadow map

Classic

Imperfect

Imperfect

Smallerpoints

Lesspoints

in dynamic scenes
In dynamic scenes
  • Deform the point distributions according to the deformation of the corresponding triangles

Frame t

Frame t+1

outlines6
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
pull push approach
Pull-push approach
  • Use a sparse set of points

→ holes in the depth map

Classic

Without pull-push

pull push approach1
Pull-push approach
  • Pull phase
    • Create an image pyramid where the image is downsampled by a factor of two (mipmap)
    • Only valid pixels are used for averaging the pixels in the coarser level
    • Only combine depth values that are close to each other
  • Push phase
    • Fill the holes top-down by interpolating the pixels from the coarser level
    • Only replace depth values that are far from the coarse depth values pushed down
depth maps comparison
Depth maps comparison

3D

2D

Classic

Without pull-push

With pull-push

depth maps comparison1
Depth maps comparison

Classic

Without pull-push

With pull-push

depth maps comparison2
Depth maps comparison

Without pull-push

With pull-push

outlines7
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
direct and indirect illumination with isms
Direct and indirect illumination with ISMs
  • Separate direct and indirect, both use deferred shading
    • Sum up the contribution of all VPLs
    • Take into account shadowing

Direct + Indirect

Direct only

Indirect only

g buffer applying
G-buffer applying
  • Reduce the rendering cost

→ use G-buffer to gather from VPLs (indirect illumination)

    • Interleaved sampling
    • With geometry aware blur

Simple blur

Edge-ware

g buffer applying1
G-buffer applying

Indirect only (origin)

Using G-Buffer

outlines8
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
outlines9
Outlines
  • Introduction
  • Related work
  • Imperfect shadow maps
    • Scene preprocessing
    • VPL generation
    • Point based depth maps
    • Pull push
    • Shading
  • Results
  • Conclusion
advantage
Advantage
  • Interactive (real-time?) global illumination in large and fully dynamic scenes allowing for light, geometry, and material changes
  • Sacrifice a little accuracy to gain a significant performance enhancing
  • Can be used for direct illumination in certain cases, such as textured area lights or environment map illumination
disadvantage
Disadvantage
  • Indirect illumination is restricted to point and spotlight illumination (with using reflective shadow maps to generate VPLs)
  • Low-resolution ISMs cannot resolve indirect shadows from small geometry
  • Without sufficient number of VPLs and point samples
    • Temporal flickering
    • Light leaking due to shadow biasing
  • Not fully automatic – parameters need to be chosen by the user