An Advanced Volume Raycasting Technique using GPU Stream Processing

Jörg Mensmann, Timo Ropinski, Klaus Hinrichs
Computer Graphics Theory and Applications, page 190--198 - 2010
Download the publication : VolumeRaycastingUsingGPUStreamProcessing.pdf [1.9Mo]  
GPU-based raycasting is the state-of-the-art rendering technique for interactive volume visualization. The ray traversal is usually implemented in a fragment shader, utilizing the hardware in a way that was not originally intended. New programming interfaces for stream processing, such as CUDA, support a more general programming model and the use of additional device features, which are not accessible through traditional shader programming.
In this paper we propose a slab-based raycasting technique that is modeled specifically to use these features to accelerate volume rendering. This technique is based on experience gained from comparing fragment shader implementations of basic raycasting to implementations directly translated to CUDA kernels. The comparison covers direct volume rendering with a variety of optional features, e.g., gradient and lighting calculations. Our findings are supported by benchmarks of typical volume visualization scenarios. We conclude that new stream processing models can only gain a small performance advantage when directly porting the basic raycasting algorithm. However, they can be advantageous through novel acceleration methods which use the hardware features not available to shader implementations.

Images and movies


See also

Note: The version of this paper published in the GRAPP proceedings was incorrectly reformatted by the editors without approval from the authors, therefore taking up 9 pages instead of 8 and using a defective citation format. The PDF available for download here contains the correctly formatted version as approved by the authors.

BibTex references

  author       = {Mensmann, J{\"o}rg and Ropinski, Timo and Hinrichs, Klaus},
  title        = {{An Advanced Volume Raycasting Technique using GPU Stream Processing}},
  booktitle    = {Computer Graphics Theory and Applications},
  pages        = {190--198},
  year         = {2010}

Author publication list