Fast Isosurface Rendering on a GPU by Cell Rasterization
This paper presents a fast, high-quality, GPU-based isosurface rendering pipeline for implicit surfaces defined by a regular volumetric grid. GPUs are designed primarily for use with polygonal primitives, rather than volume primitives, but here we directly treat each volume cell as a single rendering primitive by designing a vertex program and fragment program on a commodity GPU. Compared with previous raycasting methods, ours has a more effective memory footprint (cache locality) and better coherence between multiple parallel SIMD processors. Furthermore, we extend and speed up our approach by introducing a new view-dependent sorting algorithm to take advantage of the early-z-culling feature of the GPU to gain significant performance speed-up. As another advantage, this sorting algorithm makes multiple transparent isosurfaces rendering available almost for free. Finally, we demonstrate the effectiveness and quality of our techniques in several real-time rendering scenarios and include analysis and comparisons with previous work.
isosurface raycasting graphics hardware marching cubes