“Tessellation-free displacement mapping for ray tracing” by Thonat, Beaune, Sun, Carr and Boubekeur
Conference:
Type(s):
Title:
- Tessellation-free displacement mapping for ray tracing
Session/Category Title: Real-time Rendering
Presenter(s)/Author(s):
Abstract:
Displacement mapping is a powerful mechanism for adding fine to medium geometric details over a 3D surface using a 2D map encoding them. While GPU rasterization supports it through the hardware tessellation unit, ray tracing surface meshes textured with high quality displacement requires a significant amount of memory. More precisely, the input surface needs to be pre-tessellated at the displacement map resolution before being enriched with its mandatory acceleration data structure. Consequently, designing displacement maps interactively while enjoying a full physically-based rendering is often impossible, as simply tiling multiple times the map quickly saturates the graphics memory. In this work we introduce a new tessellation-free displacement mapping approach for ray tracing. Our key insight is to decouple the displacement from its base domain by mapping a displacement-specific acceleration structures directly on the mesh. As a result, our method shows low memory footprint and fast high resolution displacement rendering, making interactive displacement editing possible.
References:
1. Lionel Baboud, Elmar Eisemann, and Hans-Peter Seidel. 2011. Precomputed safety shapes for efficient and accurate height-field rendering. IEEE transactions on visualization and computer graphics 18, 11 (2011), 1811–1823.
2. Carsten Benthin, Sven Woop, Matthias Nießner, Kai Selgrad, and Ingo Wald. 2015. Efficient Ray Tracing of Subdivision Surfaces Using Tessellation Caching. In Proceedings of the 7th Conference on High-Performance Graphics. 5–12.
3. James F Blinn. 1978. Simulation of wrinkled surfaces. ACM SIGGRAPH computer graphics 12, 3 (1978), 286–292.
4. J. Burgess. 2020. RTX on—The NVIDIA Turing GPU. IEEE Micro 40, 2 (2020), 36–44.
5. Nathan A Carr, Jared Hoberock, Keenan Crane, and John C Hart. 2006. Fast GPU ray tracing of dynamic meshes using geometry images.. In Graphics Interface, Vol. 2006. Citeseer, 203–209.
6. Ying-Chieh Chen and Chun-Fa Chang. 2008. A Prism-Free Method for Silhouette Rendering in Inverse Displacement Mapping. Comput. Graph. Forum 27 (10 2008), 1929–1936.
7. Per H. Christensen, David M. Laur, Julia Fong, Wayne L. Wooten, and Dana Batali. 2003. Ray Differentials and Multiresolution Geometry Caching for Distribution Ray Tracing in Complex Scenes. Computer Graphics Forum 22, 3 (2003), 543–552. arXiv:https://onlinelibrary.wiley.com/doi/pdf/10.1111/1467-8659.t01-1-00702
8. Robert L Cook. 1984. Shade trees. In Proceedings of the 11th annual conference on Computer graphics and interactive techniques. 223–231.
9. C. Dachsbacher and Natalya Tatarchuk. 2007. Prism Parallax Occlusion Mapping with Accurate Silhouette Generation.
10. Luiz Henrique De Figueiredo and Jorge Stolfi. 2004. Affine arithmetic: concepts and applications. Numerical Algorithms 37, 1-4 (2004), 147–158.
11. Peter Djeu, Warren Hunt, Rui Wang, Ikrima Elhassan, Gordon Stoll, and William R. Mark. 2011. Razor: An Architecture for Dynamic Multiresolution Ray Tracing. ACM Trans. Graph. 30, 5, Article 115 (Oct. 2011), 26 pages.
12. William Donnelly. 2005. Per-pixel displacement mapping with distance functions. GPU gems 2, 22 (2005), 3.
13. Tom Duff, James Burgess, Per Christensen, Christophe Hery, Andrew Kensler, Max Liani, and Ryusuke Villemin. 2017. Building an orthonormal basis, revisited. Journal of Computer Graphics Techniques (JCGT) 6, 1 (2017).
14. Jonathan Dummer. 2006. Cone step mapping: An iterative ray-heightfield intersection algorithm. URL: http://www.lonesock.net/files/ConeStepMapping.pdf 2, 3 (2006), 4.
15. Elmer G Gilbert, Daniel W Johnson, and S Sathiya Keerthi. 1988. A fast procedure for computing the distance between complex objects in three-dimensional space. IEEE Journal on Robotics and Automation 4, 2 (1988), 193–203.
16. Johannes Hanika, Alexander Keller, and Hendrik P. A. Lensch. 2010. Two-Level Ray Tracing with Reordering for Highly Complex Scenes. In Proceedings of Graphics Interface 2010 (Ottawa, Ontario, Canada) (GI ’10). Canadian Information Processing Society, CAN, 145–152.
17. John C Hart. 1996. Sphere tracing: A geometric method for the antialiased ray tracing of implicit surfaces. The Visual Computer 12, 10 (1996), 527–545.
18. W. Heidrich and H. Seidel. 1998. Ray-tracing Procedural Displacement Shaders. In Graphics Interface.
19. Johannes Hirche, Alexander Ehlert, Stefan Guthe, and Michael Doggett. 2004. Hardware Accelerated Per-Pixel Displacement Mapping. In Proceedings of Graphics Interface 2004 (London, Ontario, Canada) (GI ’04). Canadian Human-Computer Communications Society, Waterloo, CAN, 153–158.
20. Qiming Hou, Hao Qin, Wenyao Li, Baining Guo, and Kun Zhou. 2010. Micropolygon Ray Tracing with Defocus and Motion Blur. In ACM SIGGRAPH 2010 Papers (Los Angeles, California) (SIGGRAPH ’10). Association for Computing Machinery, New York, NY, USA, Article 64, 10 pages.
21. Warren Hunt, William R. Mark, and Don Fussell. 2007. Fast and Lazy Build of Acceleration Structures from Scene Hierarchies. In 2007 IEEE Symposium on Interactive Ray Tracing. 47–54.
22. Stefan Jeschke, Stephan Mantler, and Michael Wimmer. 2007. Interactive Smooth and Curved Shell Mapping. In Proceedings of the 18th Eurographics Conference on Rendering Techniques (Grenoble, France) (EGSR’07). Eurographics Association, Goslar, DEU, 351–360.
23. Tomomichi Kaneko, Toshiyuki Takahei, Masahiko Inami, Naoki Kawakami, Yasuyuki Yanagida, Taro Maeda, and Susumu Tachi. 2001. Detailed shape representation with parallax mapping. In Proceedings of ICAT, Vol. 2001. 205–208.
24. Khronos. 2020. Vulkan Ray Tracing specification. https://www.khronos.org/blog/vulkan-ray-tracing-final-specification-release
25. L. Lee, Shih-Wei Tseng, and W. Tai. 2009. Improved Relief Texture Mapping Using Minmax Texture. 2009 Fifth International Conference on Image and Graphics (2009), 547–552.
26. Alexander Lier, Magdalena Martinek, Marc Stamminger, and Kai Selgrad. 2018. A High-Resolution Compression Scheme for Ray Tracing Subdivision Surfaces with Displacement. Proceedings of the ACM on Computer Graphics and Interactive Techniques 1, 2 (2018), 1–17.
27. Songrun Liu, Zachary Ferguson, Alec Jacobson, and Yotam Gingold. 2017. Seamless: Seam erasure and seam-aware decoupling of shape from mesh resolution. ACM Transactions on Graphics (TOG) 36, 6, Article 216 (Nov. 2017), 15 pages.
28. The-Kiet Lu, K. Low, and J. Zheng. 2009. Fast visualization of complex 3D models using displacement mapping. In Graphics Interface.
29. Jeffrey A. Mahovsky. 2005. Ray Tracing with Reduced-Precision Bounding Volume Hierarchies. Ph.D. Dissertation. CAN.
30. William Martin, Elaine Cohen, Russell Fish, and Peter Shirley. 2000. Practical ray tracing of trimmed NURBS surfaces. Journal of Graphics Tools 5, 1 (2000), 27–52.
31. Tomas Möller and Ben Trumbore. 1997. Fast, minimum storage ray-triangle intersection. Journal of graphics tools 2, 1 (1997), 21–28.
32. Henry Moreton. 2001. Watertight Tessellation Using Forward Differencing. In Proceedings of the ACM SIGGRAPH/EUROGRAPHICS Workshop on Graphics Hardware (Los Angeles, California, USA) (HWWS ’01). Association for Computing Machinery, New York, NY, USA, 25–32.
33. K. Moule and M. McCool. 2002. Efficient Bounded Adaptive Tessellation of Displacement Maps. In Graphics Interface.
34. J. Munkberg, J. Hasselgren, Robert Toth, and T. Akenine-Möller. 2010. Efficient bounding of displaced Bézier patches. In HPG ’10.
35. M. Nießner and C. Loop. 2013. Analytic Displacement Mapping using Hardware Tessellation. ACM Transactions on Graphics (TOG) 32, 3 (2013), 26.
36. Matthias Nießner, Charles Loop, Mark Meyer, and Tony Derose. 2012. Feature-Adaptive GPU Rendering of Catmull-Clark Subdivision Surfaces. ACM Trans. Graph. 31, 1, Article 6 (Feb. 2012), 11 pages.
37. NVIDIA. 2020. RTX Technology – RT Cores. https://developer.nvidia.com/rtx/raytracing#rtcores
38. Kyoungsu Oh, Hyunwoo Ki, and Cheol-Hi Lee. 2006. Pyramidal displacement mapping: a gpu based artifacts-free ray tracing through an image pyramid. In Proceedings of the ACM symposium on Virtual reality software and technology. 75–82.
39. Manuel Oliveira and Fabio Policarpo. 2005. An Efficient Representation for Surface Details. UFRGS Technical Report RP-351 (01 2005).
40. Afonso Paiva, Filipe de Carvalho Nascimento, Luiz Henrique de Figueiredo, and Jorge Stolfi. 2012. Approximating implicit curves on triangulations with affine arithmetic. In 2012 25th SIBGRAPI Conference on Graphics, Patterns and Images. IEEE, 94–101.
41. Matt Pharr and Pat Hanrahan. 1996. Geometry Caching for Ray-Tracing Displacement Maps. In Proceedings of the Eurographics Workshop on Rendering Techniques ’96 (Porto, Portugal). Springer-Verlag, Berlin, Heidelberg, 31–ff.
42. M. Pharr, Craig E. Kolb, Reid Gershbein, and P. Hanrahan. 1997. Rendering complex scenes with memory-coherent ray tracing. Proceedings of the 24th annual conference on Computer graphics and interactive techniques (1997).
43. Fabio Policarpo and Manuel M Oliveira. 2007. Relaxed cone stepping for relief mapping. GPU gems 3 (2007), 409–428.
44. Fábio Policarpo, Manuel M Oliveira, and Joäo LD Comba. 2005. Real-time relief mapping on arbitrary polygonal surfaces. In Proceedings of the 2005 symposium on Interactive 3D graphics and games. 155–162.
45. Serban D. Porumbescu, Brian Budge, Louis Feng, and Kenneth I. Joy. 2005. Shell Maps. ACM Trans. Graph. 24, 3 (July 2005), 626–633.
46. Andreas Reich, Tobias Günther, and Thorsten Grosch. 2015. Illumination-driven Mesh Reduction for Accelerating Light Transport Simulations. Computer Graphics Forum 34, 4 (2015), 165–174.
47. Siegfried M Rump and Masahide Kashiwagi. 2015. Implementation and improvements of affine arithmetic. Nonlinear Theory and Its Applications, IEICE 6, 3 (2015), 341–359.
48. Kai Selgrad, Alexander Lier, Magdalena Martinek, Christoph Buchenau, Michael Guthe, Franziska Kranz, Henry Schäfer, and Marc Stamminger. 2016. A Compressed Representation for Ray Tracing Parametric Surfaces. ACM Trans. Graph. 36, 1, Article 5 (2016), 13 pages.
49. Christian Sigg and Markus Hadwiger. 2005. Fast third-order texture filtering. GPU gems 2 (2005), 313–329.
50. Brian Smits, Peter Shirley, and Michael M Stark. 2000. Direct ray tracing of displacement mapped triangles. In Eurographics Workshop on Rendering Techniques. Springer, 307–318.
51. L. Szirmay-Kalos and Tamás Umenhoffer. 2008. Displacement Mapping on the GPU — State of the Art. Computer Graphics Forum 27 (2008).
52. László Szirmay-Kalos, Tamás Umenhoffer, Gustavo Patow, László Szécsi, and Mateu Sbert. 2009. Specular effects on the gpu: State of the art. In Computer Graphics Forum, Vol. 28. Wiley Online Library, 1586–1617.
53. Natalya Tatarchuk. 2006. Dynamic parallax occlusion mapping with approximate soft shadows. In Proceedings of the 2006 symposium on Interactive 3D graphics and games. 63–69.
54. Art Tevs, Ivo Ihrke, and Hans-Peter Seidel. 2008. Maximum mipmaps for fast, accurate, and scalable dynamic height field rendering. In Proceedings of the 2008 symposium on Interactive 3D graphics and games. 183–190.
55. Ingo Wald, Sven Woop, Carsten Benthin, Gregory S Johnson, and Manfred Ernst. 2014. Embree: a kernel framework for efficient CPU ray tracing. ACM Transactions on Graphics (TOG) 33, 4 (2014), 1–8.
56. Lifeng Wang, Xi Wang, Xin Tong, Stephen Lin, Shimin Hu, Baining Guo, and Heung-Yeung Shum. 2003. View-dependent displacement mapping. ACM Transactions on graphics (TOG) 22, 3 (2003), 334–339.
57. X. Wang, J. Maillot, E. Fiume, V. Ng-Thow-Hing, Andrew Woo, and S. Bakshi. 2000. Feature-based Displacement Mapping. In Rendering Techniques.
58. Xi Wang, Xin Tong, Stephen Lin, Shimin Hu, Baining Guo, and Heung-Yeung Shum. 2004. Generalized displacement maps. In Proceedings of the Fifteenth Eurographics conference on Rendering Techniques. 227–233.
59. Amy Williams, Steve Barrus, R Keith Morley, and Peter Shirley. 2005. An efficient and robust ray-box intersection algorithm. In ACM SIGGRAPH 2005 Courses. 9–es.
60. Keith Yerex and Martin Jägersand. 2004. Displacement mapping with ray-casting in hardware.. In SIGGRAPH sketches. 149.


