Presentation is loading. Please wait.

Presentation is loading. Please wait.

Paper by Alexander Keller

Similar presentations


Presentation on theme: "Paper by Alexander Keller"— Presentation transcript:

1 Paper by Alexander Keller
Instant Radiosity Paper by Alexander Keller

2 What is Radiosity? Perfect Diffuse Interaction View-Independent
Must be Followed By Projection Computation May have a post-process Ray Tracing enhancement

3 Process An array of emitting patches
Diffuse-Diffuse Interaction between light patch and all receiving patches Mostly iterative procedure Applied to ENTIRE scene.

4 Output

5 Single Frame

6 Combined Solution

7 Advantages Needs only be calculated once
Only if geometry changes is there a need to recalculate the form factors If lighting changes then only equation needs resolving Viewport changes do not need a form factor recalculation

8 Problems Basic Radiosity Solution is Slow Procedural Process
Must cover entire scene

9 Instant Radiosity Solution
Operates on the textured scene Produce photorealistic images without any finite kernel or solution discretization of underlying integral equation Rendering rates of a few seconds are obtained by Hardware, quasi-random walk, jittered low discrepancy sampling. Does NOT need to evaluate form factors or generate meshes

10 Algorithm Basics Photons are traced from the light source into the scene At the origin of the path of the photon, and where it hits a scene a point light is placed The scene is rendered several times for each light source Resulting image is composited in the accumulation buffer (hardware)

11 Algorithm Basics Generates a particle approximation of the diffuse radiant scene using Quasi-random walk based on quasi-Monte Carlo integration Hardware renders an image with shadows for each particle used as point light source Illumination is obtained by summing up the single images in an accumulation buffer and displaying the result

12 The Algorithm Calculate the average radiance passing through a pixel
Add that to a discrete density of point light sources Evaluated for all pixels of the image matrix

13 In Mathematical Terms The Radiance of m to n is an approximation of
Source Radiance * Avg Radiance from m to n + The Sum from 0 to M – 1 points of light of Reflectiveness(BRDF) * Radiance of light i * Kronecker delta function of The point on the surface – the position of light i

14 Pseudocode Variable Defs
N – Number of Particles – average reflectivity w – attenuation L – radiance of a point y – point on the surface – aligned normal to y

15 Pseudocode 1st Level Loop
Фn(i) – Base n Halton Sequence yo(Ф2(i), Ф3(i)) – Isometry from unit square to onto each light source Le(y) * supp Le – Sum of source radiance for y * support of the light sources

16 Pseudocode 2nd Level Loop
- Shoot A ray into direction - Return the first point hit when shooting a ray from y into - Reflectivity of the diffuse surface texture /

17 GL Calls glRenderShadowedScene(LightPower,LightPosition)
2d image that doesn't 'see' that light is black, otherwise it is colored as usual (hard shadows) glAccum(GL_ACCUM, weight) 2d image that was rendered in previous step added to current accumulated buffer Repeated for different bright spots until N iterations are complete. Result is a soft shadowed scene that can be rendered very quickly in OpenGL

18 Result

19 Disadvantages View-dependency
Rendering tens to hundreds of light sources each frame is too costly Somewhat more suitable for generating quick previews than interactive walkthroughs Not very precise Many point sources have to be rendered for accurate images Problematic! Accumulation buffer only has a limited precision!

20 Walkthroughs They are possible
We could render each lit surface into a texture, and use these as light maps Very time consuming since for every texture a lot of images have to be composited Keep last N images from the last N paths in memory, while the system keeps rendering new images for new paths When an image is finished, the oldest image is replaced by the new one. Suited for extremely slow walkthroughs

21 Specular Effects Specular Effects
Let the algorithm use a full BRDF in the hardware lighting pass, enabling specular highlights In The particle generation phase, random surfaces are tested to be specular or diffuse. Virtual Lights for specular object

22 Conclusions Provides quickly rendered images for the Global Illumination problem Low precision Inherent upper bounds issues with respect to hardware

23 OpenGL Implementation
2D Points and the Depth Buffer Shadow Maps Software Restraints Accumulation Buffer Hardware Issues Results

24 2D Points and the Depth Buffer

25 Applications Stored Z Values for an X,Y point
Clamped [0, 1] Crude vector-object collision detection Special Cases Shadow Maps Hardware Restraints Software Restraints

26 Hardware Shadow Vs. Software Shadows

27 Accumulation Buffer Not Hardware Accelerated (Most Cases)
Average execution time N = 300 ~265 seconds total ~270 for Software Render ~264 seconds in accumulator

28 Original Scene

29 Results: N=75

30 Results: N=150

31 Results: N=300


Download ppt "Paper by Alexander Keller"

Similar presentations


Ads by Google