Realtime Caustics using Distributed Photon Mapping Johannes Günther Ingo Wald * Philipp Slusallek Computer Graphics Group Saarland University ( * now at.

Slides:



Advertisements
Similar presentations
Exploration of advanced lighting and shading techniques
Advertisements

Sven Woop Computer Graphics Lab Saarland University
Computer graphics & visualization Global Illumination Effects.
Zhao Dong 1, Jan Kautz 2, Christian Theobalt 3 Hans-Peter Seidel 1 Interactive Global Illumination Using Implicit Visibility 1 MPI Informatik Germany 2.
Interactive Rendering using the Render Cache Bruce Walter, George Drettakis iMAGIS*-GRAVIR/IMAG-INRIA Steven Parker University of Utah *iMAGIS is a joint.
Photon Mapping. How did I use it 10 years ago? Why might you want to use it tomorrow?
Efficient Importance Sampling Techniques for the Photon Map Ingo Wald University of Saarbrücken Alexander Keller University of Kaiserslautern.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
Experiences with Streaming Construction of SAH KD Trees Stefan Popov, Johannes Günther, Hans-Peter Seidel, Philipp Slusallek.
Paper Presentation - An Efficient GPU-based Approach for Interactive Global Illumination- Rui Wang, Rui Wang, Kun Zhou, Minghao Pan, Hujun Bao Presenter.
Afrigraph 2004 Interactive Ray-Tracing of Free-Form Surfaces Carsten Benthin Ingo Wald Philipp Slusallek Computer Graphics Lab Saarland University, Germany.
Real-Time Rendering Paper Presentation Imperfect Shadow Maps for Efficient Computation of Indirect Illumination T. Ritschel T. Grosch M. H. Kim H.-P. Seidel.
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
CSCE 641: Photon Mapping Jinxiang Chai. Outline Rendering equation Photon mapping.
Photon Tracing with Arbitrary Materials Patrick Yau.
Hokkaido University Efficient Rendering of Lightning Taking into Account Scattering Effects due to Clouds and Atmospheric Particles Tsuyoshi Yamamoto Tomoyuki.
Introduction to Volume Rendering Presented by Zvi Devir.
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
Final Gathering on GPU Toshiya Hachisuka University of Tokyo Introduction Producing global illumination image without any noise.
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
Everything on Global Illumination Xavier Granier - IMAGER/UBC.
Paper by Alexander Keller
Real-Time Ray Tracing 3D Modeling of the Future Marissa Hollingsworth Spring 2009.
Outline Reprojection and data reuse Reprojection and data reuse – Taxonomy Bidirectional reprojection Bidirectional reprojection.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
Ray Tracing and Photon Mapping on GPUs Tim PurcellStanford / NVIDIA.
Computer graphics & visualization REYES Render Everything Your Eyes Ever Saw.
Today More raytracing stuff –Soft shadows and anti-aliasing More rendering methods –The text book is good on this –I’ll be using images from the CDROM.
Interactive Virtual Relighting and Remodelling of Real Scenes C. Loscos 1, MC. Frasson 1,2,G. Drettakis 1, B. Walter 1, X. Granier 1, P. Poulin 2 (1) iMAGIS*
-Global Illumination Techniques
Accelerating Ray Tracing using Constrained Tetrahedralizations Ares Lagae & Philip Dutré 19 th Eurographics Symposium on Rendering EGSR 2008Wednesday,
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
CS447/ Realistic Rendering -- Radiosity Methods-- Introduction to 2D and 3D Computer Graphics.
Photon Mapping on Programmable Graphics Hardware
Computer graphics & visualization Photon Mapping.
Computer Graphics Global Illumination: Photon Mapping, Participating Media Lecture 12 Taku Komura.
Global Illumination with a Virtual Light Field Mel Slater Jesper Mortensen Pankaj Khanna Insu Yu Dept of Computer Science University College London
Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.
1 Photon-driven Irradiance Cache J. BrouillatP. GautronK. Bouatouch INRIA RennesUniversity of Rennes1.
Collaborative Visual Computing Lab Department of Computer Science University of Cape Town Graphics Topics in VR By Shaun Nirenstein.
Real-time Graphics for VR Chapter 23. What is it about? In this part of the course we will look at how to render images given the constrains of VR: –we.
1 Implicit Visibility and Antiradiance for Interactive Global Illumination Carsten Dachsbacher 1, Marc Stamminger 2, George Drettakis 1, Frédo Durand 3.
Interactive Rendering With Coherent Ray Tracing Eurogaphics 2001 Wald, Slusallek, Benthin, Wagner Comp 238, UNC-CH, September 10, 2001 Joshua Stough.
Using Interactive Ray Tracing for Interactive Global Illumination Computer Graphics Lab Saarland University, Germany
Department of Computer Science 1 Beyond CUDA/GPUs and Future Graphics Architectures Karu Sankaralingam University of Wisconsin-Madison Adapted from “Toward.
Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting Romain Pacanowski and M. Raynaud X. Granier P. Reuter C. Schlick P. Poulin.
Global Illumination: Radiosity, Photon Mapping & Path Tracing Rama Hoetzlein, 2009 Lecture Notes Cornell University.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Memory Management and Parallelization Paul Arthur Navrátil The University of Texas at Austin.
University of Montreal & iMAGIS A Light Hierarchy for Fast Rendering of Scenes with Many Lights E. Paquette, P. Poulin, and G. Drettakis.
Ray Tracing Animated Scenes using Motion Decomposition Johannes Günther, Heiko Friedrich, Ingo Wald, Hans-Peter Seidel, and Philipp Slusallek.
On robust Monte Carlo algorithms for multi-pass global illumination Frank Suykens – De Laet 17 September 2002.
Monte-Carlo Ray Tracing and
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Hybrid Algorithms K. H. Ko School of Mechatronics Gwangju Institute.
Pure Path Tracing: the Good and the Bad Path tracing concentrates on important paths only –Those that hit the eye –Those from bright emitters/reflectors.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
State of the Art in Realtime Ray Tracing & Interactive Global Illumination Ingo Wald Carsten Benthin Joerg Schmittler Philipp Slusallek Saarland University.
02/12/03© 2003 University of Wisconsin Last Time Intro to Monte-Carlo methods Probability.
Bounding Volume Hierarchy. The space within the scene is divided into a grid. When a ray travels through a scene, it only passes a few boxes within the.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Stochastic Path Tracing Algorithms K. H. Ko School of Mechatronics Gwangju.
University of Texas at Austin CS395T - Advanced Image Synthesis Spring 2007 Don Fussell Photon Mapping and Irradiance Caching.
Fast Global Illumination Including Specular Effects Xavier Granier 1 George Drettakis 1 Bruce J. Walter 2 1 iMAGIS -GRAVIR/IMAG-INRIA iMAGIS is a joint.
Global Illumination (3) Photon Mapping (1). Overview Light Transport Notation Path Tracing Photon Mapping –Photon Tracing –The Photon Map.
Radiance Cache Splatting: A GPU-Friendly Global Illumination Algorithm P. Gautron J. Křivánek K. Bouatouch S. Pattanaik.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Atmospheric Effects Interactive Rendering of Atmospheric Scattering Effects Using Graphics Hardware Tsuyoshi Yamamoto Tomoyuki Nishita Tokyo University.
Real-Time Soft Shadows with Adaptive Light Source Sampling
(c) 2002 University of Wisconsin
(c) 2002 University of Wisconsin
Efficient Importance Sampling Techniques for the Photon Map
Presentation transcript:

Realtime Caustics using Distributed Photon Mapping Johannes Günther Ingo Wald * Philipp Slusallek Computer Graphics Group Saarland University ( * now at MPII Saarbrücken)

June 21, 2004EGSR 2004, Norrköping, Sweden2 Introduction What is wrong with this picture? What is wrong with this picture?

June 21, 2004EGSR 2004, Norrköping, Sweden3 Introduction With caustic illumination With caustic illumination

June 21, 2004EGSR 2004, Norrköping, Sweden4 Outline Introduction & Motivation Introduction & Motivation Previous Work Previous Work Analysis of Photon Mapping Analysis of Photon Mapping Faster Photon Mapping Faster Photon Mapping Parallelization Issues Parallelization Issues Results & Examples Results & Examples

June 21, 2004EGSR 2004, Norrköping, Sweden5 Previous Work Caustics (Bidirectional) path tracing [Lafortune, Veach] (Bidirectional) path tracing [Lafortune, Veach] –Need many samples  too slow / too noisy Density estimation [Shirley, Walter] Density estimation [Shirley, Walter] –Use of pre-computed, view-independent illumination representation  Not interactive Particles in hierarchical radiosity system [Granier] Particles in hierarchical radiosity system [Granier] –Particle tracing accelerated by exploiting HR structure –Still too slow for interactive use Hardware based projection [Wand] Hardware based projection [Wand] –Implemented via texture lookups on GFX –Limited to far lights and no occluders considered –Only reflective caustic generators

June 21, 2004EGSR 2004, Norrköping, Sweden6 Previous Work Photon Mapping Photon map [Jensen] Photon map [Jensen] –Preferred tool for caustics –Independent of scene geometry –But problematic for interactive use (later) Hashed photon mapping [Wald] Hashed photon mapping [Wald] –Approximation  lower quality On programmable graphics hardware [Purcell] On programmable graphics hardware [Purcell] –Also approximative –Limited performance (interactive only at low resolution) –No caustics during interaction –Simple scenes

June 21, 2004EGSR 2004, Norrköping, Sweden7 Outline Introduction & Motivation Introduction & Motivation Previous Work Previous Work Analysis of Photon Mapping Analysis of Photon Mapping Faster Photon Mapping Faster Photon Mapping Parallelization Issues Parallelization Issues Results & Examples Results & Examples

June 21, 2004EGSR 2004, Norrköping, Sweden8 Analysis – Overview Photon Map: Preprocessing Preprocessing –Photon generation –Construction of kd-tree Queries during rendering Queries during rendering –Search k-nearest photons  Density estimation

June 21, 2004EGSR 2004, Norrköping, Sweden9 Analysis Interactivity: now ‘pre’processing every frame Interactivity: now ‘pre’processing every frame High quality caustic: > 100K photons High quality caustic: > 100K photons No problem with realtime ray tracing (>4Mrays/s) ? No problem with realtime ray tracing (>4Mrays/s) ? Low caustic photon yield Low caustic photon yield –Several rays per photon –Only few photons contribute to caustics (in many cases below 10%) Slow photon shooting Slow photon shooting –Incoherent rays  slow ray tracing, no SSE –Costly light source and BRDF sampling (up to 60% of total shooting time)  4-15 times slower

June 21, 2004EGSR 2004, Norrköping, Sweden10 Analysis Building kd-tree – –Serious problem with many photons complexity O(n log n) – –Hard to parallelize – –Small changes in map  complete rebuild Queries are costly – –Traversal of kd-tree – –Density estimation  About 10 times as expensive as tracing a ray  Have to address all of these problems

June 21, 2004EGSR 2004, Norrköping, Sweden11 Outline Introduction & Motivation Introduction & Motivation Previous Work Previous Work Analysis of Photon Mapping Analysis of Photon Mapping Faster Photon Mapping Faster Photon Mapping Parallelization Issues Parallelization Issues Results & Examples Results & Examples

June 21, 2004EGSR 2004, Norrköping, Sweden12 Selective Photon Tracing [Dmitriev] Adaptive sampling in path space Adaptive sampling in path space Exploiting similarity property of Halton numbers Exploiting similarity property of Halton numbers Indirect caustics captured Indirect caustics captured Improve yield by factor 4 Improve yield by factor 4

June 21, 2004EGSR 2004, Norrköping, Sweden13 Improve kd-tree Balancing kd-tree requires costly median finding Balancing kd-tree requires costly median finding Instead: “split in middle” Instead: “split in middle” –Spatial center of current voxel –Now unbalanced  Construction times faster

June 21, 2004EGSR 2004, Norrköping, Sweden14 Improve kd-tree Balancing kd-tree requires costly median finding Balancing kd-tree requires costly median finding Instead: “split in middle” Instead: “split in middle” –Spatial center of current voxel –Now unbalanced  Construction times faster Not intuitive: also traversal faster [Wald ’04] Not intuitive: also traversal faster [Wald ’04] –Better adaptation to photon density  Query times faster

June 21, 2004EGSR 2004, Norrköping, Sweden15 Accumulation of Photons Performance still not enough for high quality Performance still not enough for high quality  Improve quality by accumulation across frames kd-tree with “split in middle” allows augmentation kd-tree with “split in middle” allows augmentation Accumulated result is view-independent! Accumulated result is view-independent!  High quality walkthrough

June 21, 2004EGSR 2004, Norrköping, Sweden16 Outline Introduction & Motivation Introduction & Motivation Previous Work Previous Work Analysis of Photon Mapping Analysis of Photon Mapping Faster Photon Mapping Faster Photon Mapping Parallelization Issues Parallelization Issues Results & Examples Results & Examples

June 21, 2004EGSR 2004, Norrköping, Sweden17 Interleaved Sampling & Filtering [Keller] 5x5 interleaving 27k photons filtered Quality comparable to 25 x 27k = 680k photons Quality comparable to 25 x 27k = 680k photons

June 21, 2004EGSR 2004, Norrköping, Sweden18 Filtering Caustic Illumination Originally: restrict filtering to smooth regions Originally: restrict filtering to smooth regions –Continuity tests on server limits to 5fps (IGI [Wald ’02]) But: Only filter caustic illumination Only filter caustic illumination –Potential artifacts less visible  No need for costly discontinuity checks New: Simple box filter  efficient implementation Simple box filter  efficient implementation –SSE, cache friendly, independent of filter size Performance: CPU 300 fps, network now ~22 fps Performance: CPU 300 fps, network now ~22 fps

June 21, 2004EGSR 2004, Norrköping, Sweden19 Outline Introduction & Motivation Introduction & Motivation Previous Work Previous Work Analysis of Photon Mapping Analysis of Photon Mapping Faster Photon Mapping Faster Photon Mapping Parallelization Issues Parallelization Issues Results & Examples Results & Examples

June 21, 2004EGSR 2004, Norrköping, Sweden20 Performance Scalability: roughly linear Scalability: roughly linear Upper limit: about 22 fps (network bounded) Upper limit: about 22 fps (network bounded)

June 21, 2004EGSR 2004, Norrköping, Sweden21 Comparison to IGI [Wald ’02] Same #clients (9) and frame rate (4.8 fps) Same #clients (9) and frame rate (4.8 fps) 2600 phs 2500 phs phs 8000 phs IGI system new system

June 21, 2004EGSR 2004, Norrköping, Sweden22 Examples Indirect caustics Indirect caustics No performance drop No performance drop

June 21, 2004EGSR 2004, Norrköping, Sweden23 Examples Headlight simulation Headlight simulation Complex model Complex model Many layers of glass Many layers of glass Pointlights inside bulbs Pointlights inside bulbs Using 18 Dual clients Using 18 Dual clients 250k phs / 3 fps 25M phs / 11 fps

June 21, 2004EGSR 2004, Norrköping, Sweden24 Examples Headlight simulation Headlight simulation Complex model Complex model Many layers of glass Many layers of glass Pointlights inside bulbs Pointlights inside bulbs Using 18 Dual clients Using 18 Dual clients 250k phs / 3 fps 25M phs / 11 fps photo

June 21, 2004EGSR 2004, Norrköping, Sweden25 Video

June 21, 2004EGSR 2004, Norrköping, Sweden26 Conclusion Improvements on all aspects of the photon map Improvements on all aspects of the photon map –Improved yield by Selective Photon Tracing –Optimized kd-tree (construction and traversal) Efficient parallelization Efficient parallelization –Interleaved Sampling –Faster filtering  Realtime caustic simulation  High quality walkthrough  Linear scalability, up to 22 fps

June 21, 2004EGSR 2004, Norrköping, Sweden27 Questions ?

June 21, 2004EGSR 2004, Norrköping, Sweden28

June 21, 2004EGSR 2004, Norrköping, Sweden29 No discontinuity buffer? 5x5 filter, blurring over edges hardly visible 5x5 filter, blurring over edges hardly visible

June 21, 2004EGSR 2004, Norrköping, Sweden30

June 21, 2004EGSR 2004, Norrköping, Sweden31 Photon Map Two pass approach: Preprocessing Preprocessing –Generation Emit photons into sceneEmit photons into scene Trace path until absorptionTrace path until absorption –Construction of kd-tree For fast retrieval of hit pointsFor fast retrieval of hit points During rendering (ray tracing) During rendering (ray tracing) –At each point to shade: do query Search k-nearest photonsSearch k-nearest photons Accumulate power & divide by occupied areaAccumulate power & divide by occupied area  Density estimation Concentrate on caustics

June 21, 2004EGSR 2004, Norrköping, Sweden32 Client-Server Approach High computational cost  need parallelization High computational cost  need parallelization –even more necessary with photon mapping Commodity PCs Commodity PCs –24 Dual-AthlonMP For ray tracingFor ray tracing “Thin” clients: 100 Mbit Ethernet, no graphics card,...“Thin” clients: 100 Mbit Ethernet, no graphics card,... –1 server node Runs application, controls clients, etc.Runs application, controls clients, etc. Fully switched 100MBit network Fully switched 100MBit network –Gigabit uplink to server

June 21, 2004EGSR 2004, Norrköping, Sweden33 Outlook Combination with Instant Radiosity / IGI2 to add indirect illumination Combination with Instant Radiosity / IGI2 to add indirect illumination Further improve sampling and caustic photon yield Further improve sampling and caustic photon yield Still need a cluster Still need a cluster  Special Hardware (e.g. SaarCOR)

June 21, 2004EGSR 2004, Norrköping, Sweden34 Goal Generate and visualize caustic light effects Generate and visualize caustic light effects Interactive frame rates Interactive frame rates –At video resolution 640x480 Support complex scenes Support complex scenes Preview quality acceptable during scene modifications Preview quality acceptable during scene modifications High quality walkthroughs High quality walkthroughs

June 21, 2004EGSR 2004, Norrköping, Sweden35 Improve Yield of Caustic Photons Cannot help on #rays per photon path Cannot help on #rays per photon path But: improve efficiency of sampling But: improve efficiency of sampling Jensen: Jensen: –Project caustic generators onto (hemisphere of) light sources, sample only occupied solid angle –Captures only direct caustics –Mesh dependent, not in realtime Wald: Wald: –Project only bounding volume –Geometry independent –Bounding volume often too coarse approximation –Requires manual user interaction / scene preparation

June 21, 2004EGSR 2004, Norrköping, Sweden36 Distribution Options Generate same photon map on each client Generate same photon map on each client –Inefficient, only rendering/queries in parallel –Not scalable Generate different parts of photon map on clients Generate different parts of photon map on clients –Need exchange of photons –But: network bandwidth too small –Rendering can only start after receiving all photons  latency Generate different photon maps on clients Generate different photon maps on clients –Combine illumination on server by interleaving pixels –Reduce noise by filtering in image space  Interleaved sampling & discontinuity buffering [Keller]