The F-buffer: a rasterization-order FIFO buffer for multi-pass rendering
Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware
R-buffer: a pointerless A-buffer hardware architecture
Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware
Transparency and Antialiasing Algorithms Implemented with the Virtual Pixel Maps Technique
IEEE Computer Graphics and Applications
The A -buffer, an antialiased hidden surface method
SIGGRAPH '84 Proceedings of the 11th annual conference on Computer graphics and interactive techniques
A subdivision algorithm for computer display of curved surfaces.
A subdivision algorithm for computer display of curved surfaces.
Proceedings of the 2005 symposium on Interactive 3D graphics and games
GPU-accelerated high-quality hidden surface removal
Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware
Fast Scene Voxelization and Applications
ACM SIGGRAPH 2006 Sketches
Multi-fragment effects on the GPU using the k-buffer
Proceedings of the 2007 symposium on Interactive 3D graphics and games
ACM SIGGRAPH 2007 sketches
Coherent layer peeling for transparent high-depth-complexity scenes
Proceedings of the 23rd ACM SIGGRAPH/EUROGRAPHICS symposium on Graphics hardware
FreePipe: a programmable parallel rendering architecture for efficient multi-fragment effects
Proceedings of the 2010 ACM SIGGRAPH symposium on Interactive 3D Graphics and Games
Fast soft shadow by depth peeling
ACM SIGGRAPH 2010 Posters
Coherent depth test scheme in FreePipe
Proceedings of the 9th ACM SIGGRAPH Conference on Virtual-Reality Continuum and its Applications in Industry
Horizon-based screen-space ambient occlusion using mixture sampling
ACM SIGGRAPH ASIA 2010 Posters
Proceedings of the ACM SIGGRAPH Symposium on High Performance Graphics
Technical Section: A survey of raster-based transparency techniques
Computers and Graphics
International Journal of High Performance Computing Applications
Depth-presorted triangle lists
ACM Transactions on Graphics (TOG) - Proceedings of ACM SIGGRAPH Asia 2012
Fragment-parallel composite and filter
EGSR'10 Proceedings of the 21st Eurographics conference on Rendering
Interactive, multiresolution image-space rendering for dynamic area lighting
EGSR'10 Proceedings of the 21st Eurographics conference on Rendering
Real-time concurrent linked list construction on the GPU
EGSR'10 Proceedings of the 21st Eurographics conference on Rendering
Short paper: approximating distance fields in image space
EGVE - JVRC'10 Proceedings of the 16th Eurographics conference on Virtual Environments & Second Joint Virtual Reality
Direct rendering of Boolean combinations of self-trimmed surfaces
Computer-Aided Design
Multi-layer depth peeling by single-pass rasterisation for faster isosurface raytracing on GPUs
EuroVis'10 Proceedings of the 12th Eurographics / IEEE - VGTC conference on Visualization
Multi-layer screen-space ambient occlusion using hybrid sampling
Proceedings of the 12th ACM SIGGRAPH International Conference on Virtual-Reality Continuum and Its Applications in Industry
Layered depth-of-field rendering using color spreading
Proceedings of the 12th ACM SIGGRAPH International Conference on Virtual-Reality Continuum and Its Applications in Industry
k+-buffer: fragment synchronized k-buffer
Proceedings of the 18th meeting of the ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games
Proceedings of the 18th meeting of the ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games
Hi-index | 0.00 |
In this paper we present an efficient algorithm for multi-layer depth peeling via bucket sort of fragments on GPU, which makes it possible to capture up to 32 layers simultaneously with correct depth ordering in a single geometry pass. We exploit multiple render targets (MRT) as storage and construct a bucket array of size 32 per pixel. Each bucket is capable of holding only one fragment, and can be concurrently updated using the MAX/MIN blending operation. During the rasterization, the depth range of each pixel location is divided into consecutive subintervals uniformly, and a linear bucket sort is performed so that fragments within each subintervals will be routed into the corresponding buckets. In a following fullscreen shader pass, the bucket array can be sequentially accessed to get the sorted fragments for further applications. Collisions will happen when more than one fragment is routed to the same bucket, which can be alleviated by multi-pass approach. We also develop a two-pass approach to further reduce the collisions, namely adaptive bucket depth peeling. In the first geometry pass, the depth range is redivided into non-uniform subintervals according to the depth distribution to make sure that there is only one fragment within each subinterval. In the following bucket sorting pass, there will be only one fragment routed into each bucket and collisions will be substantially reduced. Our algorithm shows up to 32 times speedup to the classical depth peeling especially for large scenes with high depth complexity, and the experimental results are visually faithful to the ground truth. Also it has no requirement of pre-sorting geometries or post-sorting fragments, and is free of read-modify-write (RMW) hazards.