Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Parallel MDOM for Rendering Participating Media Ajit Hakke Patil – Daniele Bernabei Charly Collin – Ke Chen – Sumanta Pattanaik Fabio Ganovelli."— Presentation transcript:

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

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

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

4 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.

5 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.

6 Related work

7 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.

8 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.

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

10 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

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

12 Direct component computation

13

14

15

16

17

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

19 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

20 Indirect component computation

21 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:

22 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

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

24 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

25 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: https://parasol.tamu.edu/dsmft/research/sweeps/ https://parasol.tamu.edu/dsmft/research/sweeps/

26 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

27 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

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

29 Results GPU LPM 996 propagation directions Our method 120 propagation directions

30 Results Multiple scattering Single scattering

31 Results

32 Thank you


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

Similar presentations


Ads by Google