Issue No.02 - Feb. (2014 vol.20)
Nan Zhang , Environ. Modeling & Visualization Lab., Lockheed Martin Co., Chapel Hill, NC, USA
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TVCG.2013.72
The (k)-buffer algorithm is an efficient GPU-based fragment level sorting algorithm for rendering transparent surfaces. Because of the inherent massive parallelism of GPU stream processors, this algorithm suffers serious read-after-write memory hazards now. In this paper, we introduce an improved (k)-buffer algorithm with error correction coding to combat memory hazards. Our algorithm results in significantly reduced artifacts. While preserving all the merits of the original algorithm, it requires merely OpenGL 3.x support from the GPU, instead of the atomic operations appearing only in the latest OpenGL 4.2 standard. Our algorithm is simple to implement and efficient in performance. Future GPU support for improving this algorithm is also proposed.
graphics processor, volume visualization, Transparency rendering, visibility sort, memory hazard, error checking code,
Nan Zhang, "Memory-Hazard-Aware K-Buffer Algorithm for Order-Independent Transparency Rendering", IEEE Transactions on Visualization & Computer Graphics, vol.20, no. 2, pp. 238-248, Feb. 2014, doi:10.1109/TVCG.2013.72