Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

ETER: Elastic Tessellation for Real-Time Pixel-Accurate Rendering of Large-Scale NURBS Models

Published: 26 July 2023 Publication History

Abstract

We present ETER, an elastic tessellation framework for rendering large-scale NURBS models with pixel-accurate and crack-free quality at real-time frame rates. We propose a highly parallel adaptive tessellation algorithm to achieve pixel accuracy, measured by the screen space error between the exact surface and its triangulation. To resolve a bottleneck in NURBS rendering, we present a novel evaluation method based on uniform sampling grids and accelerated by GPU Tensor Cores. Compared to evaluation based on hardware tessellation, our method has achieved a significant speedup of 2.9 to 16.2 times depending on the degrees of the patches. We develop an efficient crack-filling algorithm based on conservative rasterization and visibility buffer to fill the tessellation-induced cracks while greatly reducing the jagged effect introduced by conservative rasterization. We integrate all our novel algorithms, implemented in CUDA, into a GPU NURBS rendering pipeline based on Mesh Shaders and hybrid software/hardware rasterization. Our performance data on a commodity GPU show that the rendering pipeline based on ETER is capable of rendering up to 3.7 million patches (0.25 billion tessellated triangles) in real-time (30FPS). With its advantages in performance, scalability, and visual quality in rendering large-scale NURBS models, a real-time tessellation solution based on ETER can be a powerful alternative or even a potential replacement for the existing pre-tessellation solution in CAD systems.

Supplementary Material

ZIP File (papers_580-supplemental.zip)
supplemental material
MP4 File (papers_580_VOD.mp4)
presentation

References

[1]
Jeremy Appleyard and Scott Yokim. 2017. Programming Tensor Cores in CUDA 9. Retrieved October 17, 2017 from https://developer.nvidia.com/blog/programming-tensor-cores-cuda-9/
[2]
Louis Bavoil, Miguel Sainz, and Rouslan Dimitrov. 2008. Image-Space Horizon-Based Ambient Occlusion. In ACM SIGGRAPH 2008 Talks (Los Angeles, California) (SIGGRAPH '08). Association for Computing Machinery, New York, NY, USA, Article 22, 1 pages.
[3]
Robert M. Blomgren and David J. Kasik. 2002. Early Investigation, Formulation and Use of NURBS at Boeing. SIGGRAPH Comput. Graph. 36, 3 (aug 2002), 27--32.
[4]
Christoph Buchenau and Michael Guthe. 2021. Real-Time Curvature-aware Re-Parametrization and Tessellation of Bézier Surfaces. In Vision, Modeling, and Visualization. The Eurographics Association.
[5]
Christopher A Burns and Warren A Hunt. 2013. The visibility buffer: a cache-friendly approach to deferred shading. Journal of Computer Graphics Techniques (JCGT) 2, 2 (2013), 55--69.
[6]
Frédéric Claux, Loïc Barthe, David Vanderhaeghe, Jean-Pierre Jessel, and Mathias Paulin. 2014. Crack-free rendering of dynamically tesselated B-rep models. Computer Graphics Forum 33, 2 (2014), 263--272.
[7]
Raquel Concheiro, Margarita Amor, Emilio J. Padrón, and Michael Doggett. 2014. Interactive rendering of NURBS surfaces. Computer-Aided Design 56 (2014), 34--44.
[8]
Robert L. Cook, Loren Carpenter, and Edwin Catmull. 1987. The Reyes Image Rendering Architecture. In Proceedings of the 14th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH '87). Association for Computing Machinery, New York, NY, USA, 95--102.
[9]
Christopher Dyken, Martin Reimers, and Johan Seland. 2009. Semi-Uniform Adaptive Patch Tessellation. Computer Graphics Forum 28, 8 (2009), 2255--2263.
[10]
Christian Eisenacher, Quirin Meyer, and Charles Loop. 2009. Real-Time View-Dependent Rendering of Parametric Surfaces. In Proceedings of the 2009 Symposium on Interactive 3D Graphics and Games. Association for Computing Machinery, New York, NY, USA, 137--143.
[11]
Randima Fernando. 2005. Percentage-Closer Soft Shadows. In ACM SIGGRAPH 2005 Sketches (Los Angeles, California) (SIGGRAPH '05). Association for Computing Machinery, New York, NY, USA, 35--es.
[12]
Daniel Filip, Robert Magedson, and Robert Markot. 1986. Surface algorithms using bounds on derivatives. Computer Aided Geometric Design 3, 4 (1986), 295--311.
[13]
Stepan Yu. Gatilov. 2016. Vectorizing NURBS surface evaluation with basis functions in power basis. Computer-Aided Design 73 (2016), 26--35.
[14]
Michael Guthe, Aákos Balázs, and Reinhard Klein. 2005. GPU-Based Trimming and Tessellation of NURBS and T-Spline Surfaces. ACM Trans. Graph. 24, 3 (jul 2005), 1016--1023.
[15]
Ulrich Haar and Sebastian Aaltonen. 2015. Gpu-driven rendering pipelines. Lecturer on SIGGRAPH (2015).
[16]
Jon Hjelmervik. 2014. Direct pixel-accurate rendering of smooth surfaces. In Mathematical Methods for Curves and Surfaces. Springer Berlin Heidelberg, Berlin, Heidelberg, 238--247.
[17]
Jorge Jimenez, Jose I. Echevarria, Tiago Sousa, and Diego Gutierrez. 2012. SMAA: Enhanced Subpixel Morphological Antialiasing. Comput. Graph. Forum 31, 2pt1 (may 2012), 355--364.
[18]
Brian Karis, Rune Stubbe, and Graham Wihlidal. 2021. A Deep Dive into Nanite Virtualized Geometry. In ACM SIGGRAPH, Vol. 21.
[19]
Adarsh Krishnamurthy, Rahul Khardekar, and Sara McMains. 2009. Optimized GPU evaluation of arbitrary degree NURBS curves and surfaces. Computer-Aided Design 41, 12 (2009), 971--980.
[20]
Christoph Kubisch. 2018. Introduction to Turing Mesh Shaders. Retrieved September 17, 2018 from https://developer.nvidia.com/blog/introduction-turing-mesh-shaders/
[21]
Subodh Kumar, Dinesh Manocha, and Anselmo Lastra. 1995. Interactive Display of Large-Scale NURBS Models (I3D '95). Association for Computing Machinery, New York, NY, USA, 51--ff.
[22]
Samuli Laine and Tero Karras. 2011. High-Performance Software Rasterization on GPUs. In Proceedings of the ACM SIGGRAPH Symposium on High Performance Graphics (Vancouver, British Columbia, Canada) (HPG '11). Association for Computing Machinery, New York, NY, USA, 79--88.
[23]
Fang Liu, Meng-Cheng Huang, Xue-Hui Liu, and En-Hua Wu. 2010. FreePipe: A Programmable Parallel Rendering Architecture for Efficient Multi-Fragment Effects. In Proceedings of the 2010 ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games (Washington, D.C.) (I3D '10). Association for Computing Machinery, New York, NY, USA, 75--82.
[24]
Stephen Mann and Tony DeRose. 1995. Computing values and derivatives of Bézier and B-spline tensor products. Computer Aided Geometric Design 12, 1 (1995), 107--110.
[25]
McNeel. 2020. Rhino Mesh Settings - Detailed Info. Retrieved August 14, 2020 from https://wiki.mcneel.com/rhino/meshfaqdetails
[26]
M. Nießner, B. Keinert, M. Fisher, M. Stamminger, C. Loop, and H. Schäfer. 2016. Real-Time Rendering Techniques with Hardware Tessellation. Computer Graphics Forum 35, 1 (2016), 113--137.
[27]
Hiroyuki Ootomo and Rio Yokota. 2022. Recovering single precision accuracy from Tensor Cores while surpassing the FP32 theoretical peak performance. The International Journal of High Performance Computing Applications 36, 4 (2022), 475--491.
[28]
Les Piegl and Wayne Tiller. 1997. The NURBS Book (2nd Ed.). Springer-Verlag, Berlin, Heidelberg.
[29]
David F Rogers. 2001. An introduction to NURBS: with historical perspective. Morgan Kaufmann.
[30]
Andre Schollmeyer and Bernd Froehlich. 2018. Efficient and anti-aliased trimming for rendering large NURBS models. IEEE Transactions on Visualization and Computer Graphics 25, 3 (2018), 1489--1498.
[31]
Andre Schollmeyer and Bernd Fröhlich. 2009. Direct Trimming of NURBS Surfaces on the GPU. ACM Trans. Graph. 28, 3 (jul 2009).
[32]
Michael Schwarz and Marc Stamminger. 2009. Fast GPU-based Adaptive Tessellation with CUDA. Computer Graphics Forum 28, 2 (2009), 365--374.
[33]
Leon A. Shirmun and Salim S. Abi-Ezzi. 1993. The Cone of Normals Technique for Fast Processing of Curved Patches. Computer Graphics Forum 12, 3 (1993), 261--272.
[34]
Werner Strathaus. 2008. Building a Sportscar Exterior to Class-A Surfacing Standards. Autodesk, Inc., San Rafael, CA 94903, USA.
[35]
Wei Sun, Ang Li, Tong Geng, Sander Stuijk, and Henk Corporaal. 2022. Dissecting Tensor Cores via Microbenchmarks: Latency, Throughput and Numerical Behaviors. arXiv preprint arXiv:2206.02874 (2022).
[36]
Dassault Systèmes. 2023. SOLIDWORKS Help. https://help.solidworks.com/2023/English/SolidWorks/sldworks/HIDD_OPTIONS_IMAGE_QUALITY_display.htm?verRedirect=1
[37]
Young In Yeo, Lihan Bin, and Jörg Peters. 2012. Efficient Pixel-Accurate Rendering of Curved Surfaces. In Proceedings of the ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. Association for Computing Machinery, New York, NY, USA, 165--174.
[38]
Jianmin Zheng and Thomas W. Sederberg. 2000. Estimating Tessellation Parameter Intervals for Rational Curves and Surfaces. ACM Trans. Graph. 19, 1 (jan 2000), 56--77.

Index Terms

  1. ETER: Elastic Tessellation for Real-Time Pixel-Accurate Rendering of Large-Scale NURBS Models

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Transactions on Graphics
      ACM Transactions on Graphics  Volume 42, Issue 4
      August 2023
      1912 pages
      ISSN:0730-0301
      EISSN:1557-7368
      DOI:10.1145/3609020
      Issue’s Table of Contents
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 26 July 2023
      Published in TOG Volume 42, Issue 4

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. NURBS
      2. adaptive tessellation
      3. GPU-based algorithms
      4. real-time rendering

      Qualifiers

      • Research-article

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • 0
        Total Citations
      • 271
        Total Downloads
      • Downloads (Last 12 months)233
      • Downloads (Last 6 weeks)6
      Reflects downloads up to 12 Sep 2024

      Other Metrics

      Citations

      View Options

      Get Access

      Login options

      Full Access

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media