Download presentation
Presentation is loading. Please wait.
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.