Abstract
We present a new approach for rendering all triangles in a model in front-to-back order without the need for sorting at runtime. The method can be used for rendering order-dependent transparency effects, or to minimize overdraw, for example. The key distinguishing component in the approach is its negligible runtime cost and therefore the ease with which it can be incorporated into rendering engines. More specifically, given a viewpoint, the runtime simply selects a presorted triangle list, which we call in-depth buffers, to be rendered at full speed. These in-depth buffers are even optimized for post-transform vertex cache efficiency. The result is unmatched in front-to-back rendering performance. The difficulty is computing the smallest set of in-depth buffers required. This reduces to a graph problem that we prove to be NP-hard. Nevertheless, we have found an optimization heuristic that produces good results, particularly when visually imperceptible fragment ordering mistakes are allowed.
- T. Aila, V. Miettinen, and P. Nordlund. 2003. Delay streams for graphics hardware. ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH 2003) 22, 3 (2003), 792--800. Google Scholar
Digital Library
- L. Bavoil, S. P. Callahan, A. Lefohn, J. L. D. Comba, and C. T. Silva. 2007. Multi-fragment effects on the GPU using the k-buffer. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 94--104. Google Scholar
Digital Library
- L. Bavoil and K. Myers. 2008. Order Independent Transparency with Dual Depth Peeling. NVIDIA whitepaper.Google Scholar
- Alexander Bogomjakov and Craig Gotsman. 2002. Universal Rendering Sequences for Transparent Vertex Caching of Progressive Meshes. Computer Graphics Forum 21, 2 (2002), 137--148.Google Scholar
Cross Ref
- S. P. Callahan, M. Ikits, J. L. D. Comba, and C. T. Silva. 2005. Hardware-assisted visibility sorting for unstructured volume rendering. IEEE Transactions on Visualization and Computer Graphics 11, 3 (2005), 285--295. Google Scholar
Digital Library
- L. Carpenter. 1984. The A-buffer, an Antialiased Hidden Surface Method. Computer Graphics (Proceedings of ACM SIGGRAPH 1984) 18, 3 (1984), 103--108. Google Scholar
Digital Library
- N. Carr, R. Měch, and G. Miller. 2008. Coherent layer peeling for transparent high-depth-complexity scenes. In Proceedings of Graphics Hardware. 33--40. Google Scholar
Digital Library
- E. Catmull. 1974. A Subdivision Algorithm for Computer Display of Curved Surfaces. Ph.D. Dissertation. Dept. Computer Science. Google Scholar
Digital Library
- Ge Chen, Pedro V. Sander, Diego Nehab, Lei Yang, and Liang Hu. 2012. Depth-presorted triangle lists. ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH Asia 2012) 31, 6 (2012), 160. Google Scholar
Digital Library
- E. Enderton, E. Sintorn, P. Shirley, and D. Luebke. 2010. Stochastic transparency. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 157--164. Google Scholar
Digital Library
- C. Everitt. 2001. Interactive Order-Independent Transparency. NVIDIA whitepaper.Google Scholar
- J. D. Foley, A. van Dam, S. K. Feiner, and J. F. Hughes. 1990. Computer Graphics: Principles and Practice (2nd ed.). Addison-Wesley, Chapter 16.5.1. Google Scholar
Digital Library
- Michael Garland and Paul S. Heckbert. 1997. Surface simplification using quadric error metrics. In Proceedings of ACM SIGGRAPH 97. 209--216. Google Scholar
Digital Library
- C. Goad. 1982. Special purpose automatic programming for hidden surface elimination. Computer Graphics (Proceedings of ACM SIGGRAPH 1982) 16, 3 (1982), 167--178. Google Scholar
Digital Library
- N. K. Govindaraju, M. C. Lin, and D. Manocha. 2004. Vis-Sort: Fast Visibility Ordering of 3-D Geometric Primitives. Technical Report. UNC.Google Scholar
- Songfang Han and Pedro V. Sander. 2016. Triangle Reordering for Reduced Overdraw in Animated Scenes. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 23--27. Google Scholar
Digital Library
- H. Hoppe. 1999. Optimization of mesh locality for transparent vertex caching. In Proceedings of ACM SIGGRAPH 99. 269--276. Google Scholar
Digital Library
- M.-C. Huang, F. Liu, X.-H. Liu, and E.-H. Wu. 2010. Multi-Fragment Effects on the GPU Using Bucket Sort. In GPU Pro: Advanced Rendering Techniques, W. Engel (Ed.). A K Peters, Chapter VIII.1, 495--508.Google Scholar
- J. Jansen and L. Bavoil. 2010. Fourier opacity mapping. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 165--172. Google Scholar
Digital Library
- N. P. Jouppi and C.-F. Chang. 1999. Z3: An Economical Hardware Technique for High-Quality Antialiasing and Transparency. In Proceedings of Graphics Hardware. 85--93. Google Scholar
Digital Library
- T.-Y. Kim and U. Neumann. 2001. Opacity Shadow Maps. In Proceedings of the Eurographics Workshop on Rendering. 177--182. Google Scholar
Digital Library
- Pyarelal Knowles, Geoff Leach, and Fabio Zambetta. 2012. Efficient Layered Fragment Buffer Techniques. In OpenGL Insights. A K Peters/CRC Press, 279--292.Google Scholar
- Pyarelal Knowles, Geoff Leach, and Fabio Zambetta. 2014. Fast sorting for exact OIT of complex scenes. The Visual Computer 30, 6 (may 2014), 603--613. Google Scholar
Digital Library
- S. Laine and T. Karras. 2011. Stratified Sampling for Stochastic Transparency. Computere Graphics Forum (Proceedings of Eurographics Symposium on Rendering 2011) 30, 4 (2011). Google Scholar
Digital Library
- Sylvain Lefebvre, Samuel Hornus, and Anass Lasram. 2014. Per-Pixel Lists for Single Pass A-Buffer. In GPU Pro5: Advanced Rendering Techniques, W. Engel (Ed.). A K Peters, Chapter I.1.Google Scholar
- G. Lin and T. P.-Y. Yu. 2006. An Improved Vertex Caching Scheme for 3D Mesh Rendering. IEEE Transactions on Visualization and Computer Graphics 12, 4 (2006), 640--648. Google Scholar
Digital Library
- Jarosław Konrad Lipowski. 2010. Multi-layered Framebuffer Condensation: The l-buffer Concept. In Computer Vision and Graphics. Springer Berlin Heidelberg, 89--97. Google Scholar
Digital Library
- B.-Q. Liu, L.-Y. Wei, and Y.-Q. Xu. 2006. Multi-layer depth peeling via fragment sort. Technical Report MSR-TR-2006-81. Microsoft Research Asia.Google Scholar
- F. Liu, M.-C. Huang, X.-H. Liu, and E.-H. Wu. 2009. Efficient depth peeling via bucket sort. In High Performance Graphics. 51--57. Google Scholar
Digital Library
- F. Liu, M.-C. Huang, X.-H. Liu, and E.-H. Wu. 2010. FreePipe: A programmable parallel rendering architecture for efficient multi-fragment effects. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 75--82. Google Scholar
Digital Library
- A. Mammen. 1989. Transparency and Antialiasing Algorithms Implemented with the Virtual Pixel Maps Technique. IEEE Computer Graphics and Applications 9, 4 (1989), 43--55. Google Scholar
Digital Library
- W. R. Mark and K. Proudfoot. 2001. The F-buffer: A rasterization-order FIFO buffer for multi-pass rendering. In Proceedings of Graphics Hardware. 57--64. Google Scholar
Digital Library
- Marilena Maule, João Comba, Rafael Torchelsen, and Rui Bastos. 2013. Hybrid transparency. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. Google Scholar
Digital Library
- M. Maule, J. L. D. Comba, R. Torchelsen, and R. Bastos. 2014. Memory-optimized order-independent transparency with dynamic fragment buffer. Computers 8 Graphics 38 (2014). Google Scholar
Digital Library
- J. D. Mulder, F. C. A. Groen, and J. J. van Wijk. 1998. Pixel masks for screen-door transparency. In IEEE Visualization. 351--358. Google Scholar
Digital Library
- D. Nehab, J. Barczak, and P. V. Sander. 2006. Triangle Order Optimization for Graphics Hardware Computation Culling. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 207--211. Google Scholar
Digital Library
- M. E. Newell, R. G. Newell, and T. L. Sancha. 1972. A solution to the hidden surface problem. In Proceedings of the ACM annual conference. 443--450. Google Scholar
Digital Library
- A. Patney, S. Tzeng, and J. D. Owens. 2010. Fragment-Parallel Composite and Filter. Computere Graphics Forum (Proceedings of Eurographics Symposium on Rendering 2010) 29, 4 (2010), 1251--1258. Google Scholar
Digital Library
- C. Peeper. 2008. Prefix sum pass to linearize A-buffer storage. US Patent Application 11/766,091.Google Scholar
- T. Porter and T. Duff. 1984. Compositing Digital Images. Computer Graphics (Proceedings of ACM SIGGRAPH 1984) 18, 3 (1984), 253--259. Google Scholar
Digital Library
- M. Salvi, J. Montgomery, and A. Lefohn. 2011. Adaptive transparency. In High Performance Graphics. 119--126. Google Scholar
Digital Library
- P. V. Sander, D. Nehab, and J. Barczak. 2007. Fast Triangle Reordering for Vertex Locality and Reduced Overdraw. ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH 2007) 26, 3 (2007), 89. Google Scholar
Digital Library
- R. A. Schumacker, B. Brand, M. G. Gilliland, and W. H. Sharp. 1969. Study for Applying Computer-Generated Images to visual Simulation. Technical Report AFHRL-TR-69-14. US Airforce Human Resources Laboratory.Google Scholar
- E. Sintorn and U. Assarsson. 2008. Real-time approximate sorting for self shadowing and transparency in hair rendering. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 157--162. Google Scholar
Digital Library
- E. Sintorn and U. Assarsson. 2009. Hair self shadowing and transparency depth ordering using occupancy maps. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 67--74. Google Scholar
Digital Library
- N. Thibieroz. 2008. Robust Order-Independent Transparency via Reverse Depth Peeling in DirectX 10. In ShaderX6: Advanced Rendering Techniques, W. Engel (Ed.). Charles River Media, Chapter 3.7, 211--226.Google Scholar
- Andreas A. Vasilakis and Ioannis Fudos. 2012. S-buffer: Sparsity-aware Multi-fragment Rendering. In Eurographics Short Papers, Carlos Andujar and Enrico Puppo (Eds.).Google Scholar
- D. Wexler, L. Gritz, E. Enderton, and J. Rice. 2005. GPU-accelerated high-quality hidden surface removal. In Proceedings of Graphics Hardware. 7--14. Google Scholar
Digital Library
- C. M. Wittenbrink. 2001. R-buffer: a pointerless A-buffer hardware architecture. In Proceedings of Graphics Hardware. 73--80. Google Scholar
Digital Library
- J. C. Yang, J. Hensley, H. Grün, and N. Thibieroz. 2010. Real-Time Concurrent Linked List Construction on the GPU. Computere Graphics Forum (Proceedings of Eurographics Symposium on Rendering 2010) 29, 4 (2010), 1297--1304. Google Scholar
Digital Library
Index Terms
In-Depth Buffers
Recommendations
Interactive global illumination based on coherent surface shadow maps
GI '08: Proceedings of Graphics Interface 2008Interactive rendering of global illumination effects is a challenging problem. While precomputed radiance transfer (PRT) is able to render such effects in real time the geometry is generally assumed static. This work proposes to replace the precomputed ...
Soft shadows from extended light sources with penumbra deep shadow maps
GI '05: Proceedings of Graphics Interface 2005This paper presents a new method of precomputing high-quality soft shadows that can be cast on a static scene as well as on dynamic objects added to that scene. The method efficiently merges the visibility computed from many shadow maps into a penumbra ...
Radiance interpolants for accelerated bounded-error ray tracing
Ray tracers, which sample radiance, are usually regarded as offline rendering algorithms that are too slow for interactive use. In this article we present a system that exploits object-space, ray-space, image-space, and temporal coherence to accelerate ...






Comments