skip to main content
research-article

In-Depth Buffers

Published:25 July 2018Publication History
Skip Abstract Section

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.

References

  1. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  2. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  3. L. Bavoil and K. Myers. 2008. Order Independent Transparency with Dual Depth Peeling. NVIDIA whitepaper.Google ScholarGoogle Scholar
  4. 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 ScholarGoogle ScholarCross RefCross Ref
  5. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  6. L. Carpenter. 1984. The A-buffer, an Antialiased Hidden Surface Method. Computer Graphics (Proceedings of ACM SIGGRAPH 1984) 18, 3 (1984), 103--108. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  8. E. Catmull. 1974. A Subdivision Algorithm for Computer Display of Curved Surfaces. Ph.D. Dissertation. Dept. Computer Science. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  10. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  11. C. Everitt. 2001. Interactive Order-Independent Transparency. NVIDIA whitepaper.Google ScholarGoogle Scholar
  12. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  13. Michael Garland and Paul S. Heckbert. 1997. Surface simplification using quadric error metrics. In Proceedings of ACM SIGGRAPH 97. 209--216. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. C. Goad. 1982. Special purpose automatic programming for hidden surface elimination. Computer Graphics (Proceedings of ACM SIGGRAPH 1982) 16, 3 (1982), 167--178. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. N. K. Govindaraju, M. C. Lin, and D. Manocha. 2004. Vis-Sort: Fast Visibility Ordering of 3-D Geometric Primitives. Technical Report. UNC.Google ScholarGoogle Scholar
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. H. Hoppe. 1999. Optimization of mesh locality for transparent vertex caching. In Proceedings of ACM SIGGRAPH 99. 269--276. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. 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 ScholarGoogle Scholar
  19. J. Jansen and L. Bavoil. 2010. Fourier opacity mapping. In Proceedings of ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. 165--172. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  21. T.-Y. Kim and U. Neumann. 2001. Opacity Shadow Maps. In Proceedings of the Eurographics Workshop on Rendering. 177--182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Pyarelal Knowles, Geoff Leach, and Fabio Zambetta. 2012. Efficient Layered Fragment Buffer Techniques. In OpenGL Insights. A K Peters/CRC Press, 279--292.Google ScholarGoogle Scholar
  23. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  24. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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 ScholarGoogle Scholar
  26. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  27. Jarosław Konrad Lipowski. 2010. Multi-layered Framebuffer Condensation: The l-buffer Concept. In Computer Vision and Graphics. Springer Berlin Heidelberg, 89--97. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. 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 ScholarGoogle Scholar
  29. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  30. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  31. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  32. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  33. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  34. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  35. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  36. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  37. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  38. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  39. C. Peeper. 2008. Prefix sum pass to linearize A-buffer storage. US Patent Application 11/766,091.Google ScholarGoogle Scholar
  40. T. Porter and T. Duff. 1984. Compositing Digital Images. Computer Graphics (Proceedings of ACM SIGGRAPH 1984) 18, 3 (1984), 253--259. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. M. Salvi, J. Montgomery, and A. Lefohn. 2011. Adaptive transparency. In High Performance Graphics. 119--126. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  43. 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 ScholarGoogle Scholar
  44. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  45. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  46. 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 ScholarGoogle Scholar
  47. 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 ScholarGoogle Scholar
  48. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  49. C. M. Wittenbrink. 2001. R-buffer: a pointerless A-buffer hardware architecture. In Proceedings of Graphics Hardware. 73--80. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. 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 ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. In-Depth Buffers

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Article Metrics

        • Downloads (Last 12 months)12
        • Downloads (Last 6 weeks)4

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!