Presentation is loading. Please wait.

Presentation is loading. Please wait.

Using Interactive Ray Tracing for Interactive Global Illumination Computer Graphics Lab Saarland University, Germany

Similar presentations


Presentation on theme: "Using Interactive Ray Tracing for Interactive Global Illumination Computer Graphics Lab Saarland University, Germany"— Presentation transcript:

1 Using Interactive Ray Tracing for Interactive Global Illumination Computer Graphics Lab Saarland University, Germany http://graphics.cs.uni-sb.de

2 Februar 3th, 2003Interactive Global Illumination1 Interactive Global Illumination - Goals Support for all relevant features –Complete direct & indirect diffuse illumination –Specular Effects: Refractions, Reflections, Caustics ● Be independent of geometry (scalability) ! ● Interactive: > 1 fps at video resolution (640x480) ● Full recomputation every frame ➢ Lights, Materials, Geometry, Camera, … ➢ No approximative or image-based techniques Interactive, user-controllable speed/quality tradeoff –E.g. trade some flickering or aliasing for speed … –Automatic and progressive convergence to high-quality solution when possible (e.g within 2-5 sec)

3 Februar 3th, 2003Interactive Global Illumination1 Interactive Global Illumination - Goals

4 Februar 3th, 2003Interactive Global Illumination1 Previous solutions: –Image-Based approaches  Artifacts –Radiosity + OpenGL  Missing specularities, Meshing artifacts, … High-quality Global Illumination uses ray tracing anyway Ray Tracing is now interactive

5 Februar 3th, 2003Interactive Global Illumination1 Previous solutions: –Image-Based approaches  Artifacts –Radiosity + OpenGL  Missing specularities, Meshing artifacts, … High-quality Global Illumination uses ray tracing anyway Ray Tracing is now interactive Simplisitic Idea: “Interactive ray tracing” +“Ray-traced global illumination” = Interactive global illumination

6 Februar 3th, 2003Interactive Global Illumination1 But: Real World isn’t simplistic… Problem: GlobIllum often doesn’t scale (shared-memory)… Radiosity: -Shared global data for radiosities, geometry-dependency Photon Map: -KD-Tree reconstruction every frame, global photon map data, … Have to live with extremely low sample rates -Even 16 MRays/sec is only 16 rays/pixel at 640x480x3Hz… -Path-Tracing and Bidirectional Path-Tracing too noisy …  Need another approach …

7 Februar 3th, 2003Interactive Global Illumination1 Instant Global Illumination Our approach: “Instant Global Illumination” Done in cooperation with Kaiserslautern University (Alex Keller and Thomas Kollig) –Most of the algorithms are based on their work ! several, different  Idea: Combine advantages of several, different algorithms: –Instant Radiosity: smooth diffuse lighting –Ray Tracing: reflections, refractions, visibility testing –Interleaved Sampling (ILS): better quality, easy to parallelize –Discontinuity Buffer: removes ILS artifacts –Caustic Photon Mapping: the only way for sensible caustics Our approach: “Instant Global Illumination” Done in cooperation with Kaiserslautern University (Alex Keller and Thomas Kollig) –Most of the algorithms are based on their work ! several, different  Idea: Combine advantages of several, different algorithms: –Instant Radiosity: smooth diffuse lighting –Ray Tracing: reflections, refractions, visibility testing –Interleaved Sampling (ILS): better quality, easy to parallelize –Discontinuity Buffer: removes ILS artifacts –Caustic Photon Mapping: the only way for sensible caustics

8 Februar 3th, 2003Interactive Global Illumination1 Basic Ingredient: Instant Radiosity [Keller] Trace few (10-20) particles from (area) light sources Use these to light the scene as ‘virtual point lights’ (VPLs) –Contains both direct and indirect diffuse illumination –Shadows originally with OpenGL, now with Ray Tracing –Raytracing gives reflections/refractions for free Inherently smooth, since radiosity-based –Artifacts for few VPLs –Converges, but at only 10-20 VPLs clearly visible Plus: Add PhotonMap for Caustics –Hack for faster query…

9 Februar 3th, 2003Interactive Global Illumination1 Too few samples  Add Interleaved Sampling Use different sets of virtual point lights for diff. Pixels –Every SxS’th pixel uses same set of VPLs and caustic photons –Recomputing VPL’s and photons for every pixel too costly… Better quality: –9 times as many VPLs per image than without –Same for photons ! –Still cheap pixels ! Easily parallelizable –Each CPU needs only 1 set  Scales with #CPUs !!! Aliasing –Can see SxS grid …

10 Februar 3th, 2003Interactive Global Illumination1 ILS Aliasing  Add Filtering Discontinuity Buffer [Keller, Kollig] –Filter irradiances of neighbouring pixels  Smoothing/removal of ILS-artifacts  Like irradiance caching, but more stable –Only filter in smooth regions, detect discontinuities Criterion: normal & distance Problem: Clients don’t have neighboring pixels ! –Server has to filter  High server load –Server has to get required data Normal, irradiance, distance  High network bandwidth !

11 Februar 3th, 2003Interactive Global Illumination1 Finally, add QMC Use Randomized Quasi Monte Carlo [Keller et al] –Much faster convergence, especially for such small sample rates ! –Can be combined easily with Interleaved sampling Plus: ‘Technical’ advantages of QMC –Fast random number generation (table lookup + bit-ops) –Can reproduce any sequence of samples based on single seed value  Can easily synchronize different clients on same data  Each client can easily reproduce the sample set of any other client –Avoid ‘jumping’ of VPLs:  Just start with same seed every frame –For progressive convergence, just advance the seed value… QMC sequences perfectly combine into the future…

12 Februar 3th, 2003Interactive Global Illumination1 Summary Base ingredient –Instant Radiosity + Ray Tracing –Plus fast caustic photon maps Combine with Interleaved Sampling –Better quality –Parallelizable Remove ILS artifacts with Disco-Buffer –Faster convergence –Better parallelizability Use randomized QMC –Low sampling rates, parallelizability Result: Definitely not perfect –But not too bad for only ~20 rays/pixel !

13 Februar 3th, 2003Interactive Global Illumination1 Parallelization & Scalability Adapt Scheduler to ILS: –Different clients work on different sets –Same client preferably works on same set  In theory, each client only has to compute one sample set –In practice, its still about only 1.5-2 out of 9  Very small overhead (few redundant operations) But: Server Bottleneck due to Disco-Buffer –Filtering cost and Network bandwidth limit max. framerate –Currently: On dual-Athlon 1800+: max. framerate of ~5 fps.. –But: Can still scale in quality Twice #CPUs = Twice #VPLs/pixel at same framerate !  Limited only by max. framerate, not by number of clients !

14 Februar 3th, 2003Interactive Global Illumination1 Results Up to 5 fps at video resolution (640x480) With 8+ dual Athlon MP 1800+ All targeted effects –Reflections, refractions and caustics –Smooth direct and indirect diffuse illumination Everything recomputed every frame  No limitation on interaction types All parameters can be changed interactively –Sampling rate, photon query radius, filter size, … Automatic convergence to high-quality solution –high good quality in about 2-5 sec.

15 Februar 3th, 2003Interactive Global Illumination1 Current Research Have implemented a new improved system from scratch Main Features: –2-3 times faster through ray packet traversal and streaming architecture –Removed photon shooting –Support for accumulation on client side, necessary for providing high quality during interaction and animation –Nearly linear scalability up to 22 fps at 640x480 with reduced quality –Sub-linear costs in image resolution –Fully programmable shading

16 Februar 3th, 2003Interactive Global Illumination1 Example Images

17 Februar 3th, 2003Interactive Global Illumination1 Remaining Problems & Future Work Still to slow (it’s always too slow…) Incorporate glossyness/arbitrary BRDF’s Emission properties for light sources Caustics Main Limitation: Inefficient in highly occluded scenes ! –We’re working on it …

18 Februar 3th, 2003Interactive Global Illumination1 Questions ?

19 Februar 3th, 2003Interactive Global Illumination1 Missing Caustics:  Add Caustic Photon Map Basically just like standard photon mapping [Jensen] –Shoot directly at ‘caustic generators’ –But: too slow for our purpose : (Cost(Query)=10Rays)  Fix query radius to a fixed R –Can be interactively changed by the user … –Store photons in grid with width 2R  Have to touch only 8 voxels for each query ! –Can use hashing to keep reduce storage cost Fast, but not perfect… –Can afford only few photons (reconstruction cost too high) –Looks bad if R is chosen bad


Download ppt "Using Interactive Ray Tracing for Interactive Global Illumination Computer Graphics Lab Saarland University, Germany"

Similar presentations


Ads by Google