TopologyCaching for Dynamic Particle Volume Raycasting Jens Orthmann

  • Slides: 13
Download presentation
Topology-Caching for Dynamic Particle Volume Raycasting Jens Orthmann, Maik Keller and Andreas Kolb, University

Topology-Caching for Dynamic Particle Volume Raycasting Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen

Outline Motivation Recent Techniques GPU Raycasting System Node-Cache Influence-Cache Slab-Cache Video & Results Conclusion

Outline Motivation Recent Techniques GPU Raycasting System Node-Cache Influence-Cache Slab-Cache Video & Results Conclusion Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen 2

Motivation Real-time particle-based flow simulations: Particles carry physical flow properties like density, concentration, etc.

Motivation Real-time particle-based flow simulations: Particles carry physical flow properties like density, concentration, etc. Rendering color-coded sprites is insufficient. Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen 3

Recent Techniques Image-based Rendering Surface reconstruction Fast: 64 K around 55 -20 fps No

Recent Techniques Image-based Rendering Surface reconstruction Fast: 64 K around 55 -20 fps No Volume-Rendering Splatting Standard for particles Fast: 200 K around 43 fps Blurred images W. van der Laan et. al. , 2009: “Screen Space Fluid Rendering with Curvature Flow“ P. Schlegel et al. , 2009: “Layered Volume Splatting“ Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen Texture-based Raycasting High quality Large datasets up to 42 M Requires pre-computation Fraedrich et. al. , to appear: “Efficient High-Quality Volume Rendering of SPH Data“ 4

GPU Volume Raycasting In each frame: K. Zhou et al. , 2010: “Data Parallel

GPU Volume Raycasting In each frame: K. Zhou et al. , 2010: “Data Parallel Octrees for Surface Reconstruction“ Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen 5

Tree Traversal: Node Cache Assumption: the packet’s extend is smaller than the size of

Tree Traversal: Node Cache Assumption: the packet’s extend is smaller than the size of a node Implication: Node pre-fetching Neighbor traversal Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen J. Wilhelms et al. , 1992: “Octrees for faster isosurface generation“ 6

Sampling: Influence Cache Assumption: field reconstruction works with particles in the local neighborhood: P.

Sampling: Influence Cache Assumption: field reconstruction works with particles in the local neighborhood: P. Koumoutsakos et al. , 2008: “Flow Simulation using Particles“ Implication: redundant particle assignment. G. Guennebaud et al. , 2008: “Dynamic Sampling and Rendering of Algebraic Point Set Surfaces“ Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen 7

Sampling: Influence Cache Problem: Undersampling at higher distances. M. Zwicker et al. , 2003:

Sampling: Influence Cache Problem: Undersampling at higher distances. M. Zwicker et al. , 2003: “EWA Splatting“ [Nyquist Theorem] Solution: Buttom-up merging of particles. Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen W. Hong et al. , 2008: “Adaptive particles for incompressible fluid simulation“ 8

Compositing: Slab-Cache Problem: same particles are sampled multiple times (gradients). Solution: Slab-based front-to-back compositing

Compositing: Slab-Cache Problem: same particles are sampled multiple times (gradients). Solution: Slab-based front-to-back compositing Particles scatter to several slices at once Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen J. Mensmann et al. , 2010: “An advanced volume raycasting technique using GPU stream processing” 9

Compositing: Slab-Cache [Recently] Observation: too many samples in distant regions Solution: adaptive step size

Compositing: Slab-Cache [Recently] Observation: too many samples in distant regions Solution: adaptive step size with opacity correction Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen Fraedrich et al. , to appear: “Efficient High-Quality Volume Rendering of SPH Data“ 10

Results Errors of the packet traversal: [Recently] Adaptive Steps, 8 x 8 Packets, CUDA

Results Errors of the packet traversal: [Recently] Adaptive Steps, 8 x 8 Packets, CUDA on GTX 400 [unoptimized ]: 450 400 Millisecond 350 300 250 200 150 100 50 13 30 60 17 40 60 23 Tree 110 27 Em/Ads Gradient 0 60 k 130 k 250 k Number of Particles 500 k Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen 11

Conclusion Raycasting Pipeline : three optimization strategies [Per Slab] Node-Cache [Per Node] Influence-Cache [Per

Conclusion Raycasting Pipeline : three optimization strategies [Per Slab] Node-Cache [Per Node] Influence-Cache [Per Slab] Slab-Cache Future Work Optimization for GTX 400 (Occupancy) Automatic transfer-functions Splitting kernel into several distinct steps Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen 12

Thank you for your attention Jens Orthmann, Maik Keller and Andreas Kolb, University of

Thank you for your attention Jens Orthmann, Maik Keller and Andreas Kolb, University of Siegen 13