GPU Accelerated Isosurface Volume Rendering Using Depth-Based Coherence

Colin Braley,Robert Hagan,Yong Cao,Denis Gracanin
DOI: https://doi.org/10.1145/1666778.1666820
2010-01-01
Abstract:With large scientific and medical datasets, visualization tools have trouble maintaining a high enough frame-rate to remain interactive. In this paper, we present a novel GPU based system that permits visualization of isosurfaces in large data sets in real time. In particular, we present a novel use of a depth buffer to speed up the operation of rotating around a volume data set. As the user rotates the viewpoint around the 3D volume data, there is much coherence between depth buffers from two sequential renderings. We utilize this coherence in our novel prediction buffer approach, and achieve a marked increase in speed during rotation. The authors of [Klein et al. 2005] used a depth buffer based approach, but they did not alter their traversal based on the prediction value. Our prediction buffer is a 2D array in which we store a single floating point value for each pixel. If a particular pixel pij has some positive depth value dij, this indicates that the ray Rij, which was cast through pij on the previous render, intersected an isosurface at depth dij. The prediction buffer also handles three special cases. When the ray Rij misses the isosurface, but hits the bounding box containing the volume data, we store a negative flag value, dhitBoxMissSurf in pij. When Rij misses the bounding box, we store the value dmissBox. Lastly, when we have no prediction stored in the buffer, we store the value dnoInfo.
What problem does this paper attempt to address?