Parallel MDOM for Rendering Participating Media Ajit Hakke Patil – Daniele Bernabei Charly Collin – Ke Chen – Sumanta Pattanaik Fabio Ganovelli.

Slides:



Advertisements
Similar presentations
Realistic Simulation and Rendering of Smoke CSE Class Project Presentation Oleksiy Busaryev TexPoint fonts used in EMF. Read the TexPoint manual.
Advertisements

Fast Approximation of Multiple Scattering in Inhomogeneous Participating Media Szirmay-Kalos László Liktor Gábor Tamás Umenhoffer Tóth Balázs EG 2009.
Computer graphics & visualization Global Illumination Effects.
A Computational Approach to Simulate Light Diffusion in Arbitrarily Shaped Objects Tom Haber, Tom Mertens, Philippe Bekaert, Frank Van Reeth University.
Advanced Computer Graphics
Subsurface scattering Model of light transport in translucent materials Marble, jade, milk, skin Light penetrates material and exits at different point.
William Moss Advanced Image Synthesis, Fall 2008.
CSCE 641: Photon Mapping Jinxiang Chai. Outline Rendering equation Photon mapping.
Admission to CS 184 Enrollment priorities are 1. CS/EECS majors, 2. CS/EECS minors (this category includes applied math majors) 3. anyone else with a declared.
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 10: Global Illumination Ravi Ramamoorthi Some images courtesy.
Rendering General BSDFs and BSSDFs Randy Rauwendaal.
The Radiosity Method Donald Fong February 10, 2004.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 21: Radiosity
EGWR 2000 Metropolis Light Transport for Participating Media Mark Pauly Thomas KolligAlexander Keller ETH ZürichUniversity of Kaiserslautern.
Computer Graphics (Spring 2008) COMS 4160, Lecture 22: Global Illumination
Participating Media Illumination using Light Propagation Maps Raanan Fattal Hebrew University of Jerusalem, Israel.
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.
Optical Models Jian Huang, CS 594, Spring 2002 This set of slides are modified from slides used by Prof. Torsten Moeller, at Simon Fraser University, BC,
Attenuation by absorption and scattering
02/25/05© 2005 University of Wisconsin Last Time Meshing Volume Scattering Radiometry (Adsorption and Emission)
Multiple Scattering in Vision and Graphics Lecture #21 Thanks to Henrik Wann Jensen.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
-Global Illumination Techniques
02/16/05© 2005 University of Wisconsin Last Time Re-using paths –Irradiance Caching –Photon Mapping.
CS447/ Realistic Rendering -- Radiosity Methods-- Introduction to 2D and 3D Computer Graphics.
Volume radiosity Michal Roušal University of West Bohemia, Plzeň Czech republic.
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
Global Illumination CMSC 435/634. Global Illumination Local Illumination – light – surface – eye – Throw everything else into ambient Global Illumination.
1 Implicit Visibility and Antiradiance for Interactive Global Illumination Carsten Dachsbacher 1, Marc Stamminger 2, George Drettakis 1, Frédo Durand 3.
Introduction to Radiosity Geometry Group Discussion Session Jiajian (John) Chen 9/10/2007.
111/17/ :21 Graphics II Global Rendering and Radiosity Session 9.
Computation of Polarized Subsurface BRDF for Rendering Charly Collin – Sumanta Pattanaik – Patrick LiKamWa Kadi Bouatouch.
Radiosity Jian Huang, CS594, Fall 2002 This set of slides reference the text book and slides used at Ohio State.
Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting Romain Pacanowski and M. Raynaud X. Granier P. Reuter C. Schlick P. Poulin.
Green's function solution to subsurface light transport for BRDF computation Charly Collin – Ke Chen – Ajit Hakke-Patil Sumanta Pattanaik – Kadi Bouatouch.
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.
Volume Visualization with Ray Casting
Discontinuous Displacement Mapping for Volume Graphics, Volume Graphics 2006, July 30, Boston, MA Discontinuous Displacement Mapping for Volume Graphics.
Slide 1Lastra, 2/14/2016 Monte-Carlo Methods. Slide 2Lastra, 2/14/2016 Topics Kajiya’s paper –Showed that existing rendering methods are approximations.
Computer Graphics (Fall 2003) COMS 4160, Lecture 20: Radiosity Ravi Ramamoorthi
Global Illumination (3) Photon Mapping (1). Overview Light Transport Notation Path Tracing Photon Mapping –Photon Tracing –The Photon Map.
02/07/03© 2003 University of Wisconsin Last Time Finite element approach Two-pass approaches.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
01/27/03© 2002 University of Wisconsin Last Time Radiometry A lot of confusion about Irradiance and BRDFs –Clarrified (I hope) today Radiance.
Distributed Ray Tracing. Can you get this with ray tracing?
Graphics Lecture 14: Slide 1 Interactive Computer Graphics Lecture 14: Radiosity - Computational Issues.
Distributed Ray Tracing. Can you get this with ray tracing?
(A) Future of Radiation Parameterizations in CAM Bill Collins National Center for Atmospheric Research
Light Animation with Precomputed Light Paths on the GPU László Szécsi, TU Budapest László Szirmay-Kalos, TU Budapest Mateu Sbert, U of Girona.
Computer graphics III – Rendering equation and its solution
Advanced Computer Graphics
Advanced Computer Graphics
Parallel Solution to the Radiative Transport
Appendix C Radiation Modeling
The Rendering Equation
Radiative Transfer & Volume Path Tracing
Path Tracing (some material from University of Wisconsin)
Introduction to Computer Graphics with WebGL
Introduction to Computer Graphics with WebGL
Computer Graphics (Spring 2003)
Virtual Spherical Lights for Many-Light Rendering of Glossy Scenes
CSc4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Lecture 25 Radiosity.
Metropolis Light Transport for Participating Media
Foundations of Computer Graphics (Spring 2012)
Radiosity Sung-Eui Yoon (윤성의) CS580: Course URL:
Smoother Subsurface Scattering
Presentation transcript:

Parallel MDOM for Rendering Participating Media Ajit Hakke Patil – Daniele Bernabei Charly Collin – Ke Chen – Sumanta Pattanaik Fabio Ganovelli

Our goal: rendering participating media Such a medium can: Absorb Scatter Emit light For example: Smoke Cloud Fire Marble

Our goal: rendering participating media Interaction between light and the medium is modeled through the Radiative Transfer Equation (RTE):

Related work RTE solvers mainly classified as: – Stochastic : Monte Carlo methods [Pattanaik et al. 1993, Jensen et al. 1998] – trace a number of random photon paths in the medium and follow their interaction to determine a solution for any given medium. Bidirectional path tracing [Lafortune et al. 1996, Pauly et. al. 2000] – extends the MC approach by tracing random paths starting from both light and view points. – Deterministic: Zonal Method [Rushmeier et. al. 1987, Silion 1995] – a radiosity-like solution for light transport in uniform scattering media. Sillion improves this method to include a hierarchical radiosity approach. DOM [Chandrasekhar 1960] – Employs spatial and angular discretization of the domain and solves RTE using an iterative method.

DOM Spatial and angular discretization of the domain. Each grid element captures the scattered light in a finite set of discrete ordinate directions. The arrows along the grid element boundaries represent one of many light propagation directions.

Related work

Other GPU based volumetric scattering methods: – Diffusion approximation based: Lattice Boltzmann solution. [Bernabei et. al] Works well for homogeneous media. – DOM based approaches: GPU port of Fattal’s LPM method [Gruson et. al] Cannot handle directional light sources as it is based on regular DOM.

MDOM – The Modified Discrete Ordinate Method (MDOM) is the computationally efficient version of the DOM where the final solution to radiative intensity field is broken into a direct (Idir) and an indirect component (Idif) Helps in overcoming the ray effect present in traditional DOM allows visualization of only the single scattering approximation Its deterministic and iterative nature makes it suitable for parallelization.

satisfies And its solution is expressed as Direct Component satisfies We use DOM to solve it: Where: Indirect Component

MDOM approach and challenges Our goal is to compute the source function terms (G m ) at each voxel for each DOM direction m. We do so in 2 steps, – the direct source contributions are added by ray marching light rays – And the indirect contributions are added by solving the indirect DOM eq. iteratively. Finally, for rendering we use the integral form of RTE. Challenges: – For high rendering quality results, DOM requires finer angular and spatial discretizations. So, the memory requirements for a DOM based solution are very high and often exceed the memory available on the GPU

Our method MDOM based parallel, scalable and interactive pipeline. Provide streaming mechanism for transferring data between the CPU and the GPU

Direct component computation

For big volumes, streaming is needed. This is done through 4 tables: Block request table Block dirty table Block index table Block memory pool

Direct component computation GPUCPU Write the scattering information for requested blocks March the rays and: Write an source update Request new blocks Sorts of the update tables Write the source information for requested blocks Update the source values Read the updated source values

Indirect component computation

We reduce the storage requirements of the DOM by detaching the propagation angular resolution from the storage angular resolution. Where With a phase function normalization factor, to maintain energy conservation:

Indirect component computation How do we update the source function G in each voxel? Incoming Outgoing The updated radiance inside a voxel is: At each voxel: – Determine radiance at each incoming face – Compute the outgoing radiance at each outgoing face – Compute the average radiance at the center of the voxel – Update the source function at the center of the voxel

Indirect component computation Outgoing radiance is a linear combination of incoming radiances: Similarly, the average radiance is: And the source is updated :

Indirect component computation Parallelization is done by carefully chosing the propagation directions Propagate all the directions in an octant simultaneously: “Wavefront propagation” Each scattering iteration consists of the propagation of eight wavefronts: one for each corner of the volume

Indirect component computation Parallelization is done by carefully chosing the propagation directions Propagate all the directions in an octant simultaneously: “Wavefront propagation” Each scattering iteration consists of the propagation of eight wavefronts: one for each corner of the volume image courtesy:

Indirect component computation Streaming is achieved using a nested wavefront approach: Wavefront of blocks further decomposed into wavefront of voxels on the GPU. Use global interfaces for storing outgoing radiances at block boundaries Use shared memory on a GPU multiprocessor to store outgoing radiances for voxels not on block boundary

Visualization Volume ray marching Use the integral form of the RTE: I E will be substituted by the background color. Anti-aliasing using jittering and tri-linear interpolation. On-demand streaming is used, similar to the direct computation

Results Ground truth (several hours) Our method (68 secs) Diffusion method (10 FPS)

Results GPU LPM 996 propagation directions Our method 120 propagation directions

Results Multiple scattering Single scattering

Results

Thank you