Existing line drawing algorithms for volumes extract feature lines by tracing randomly selected seeds, which is known to have severe temporal coherence problems. We propose a GPU-based line drawing algorithm framework for volume data. The algorithm extracts all feature lines in every frame, eliminating the discontinuity artifacts in successive frames. Firstly, we propose a parallel algorithm to extract feature line segments in each cell in the geometry shader. To determine the visibility of feature lines, we use splatting to render a depth map for each frame, achieving much higher performance than the ray-casting method adopted in previous approaches. Correct visibility is obtained by using adaptive depth offsets. To store the large volume data in the high-speed video memory, we propose efficient data pruning and encoding schemes, which remarkably reduce the memory consumption and bandwidth, while maintaining the line drawing quality. Experimental results show that, our method can render high quality line drawings with temporal coherence, with a rendering speed that is an order of magnitude faster than previous CPU-based methods using seed-and-traversal.
Read full abstract