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

Ruicheng Xiong1, Yang Lu2, Cong Chen2, Jiaming Zhu1, Yajun Zeng1, Ligang Liu1
  1University of Science and Technology of China
2Sheyun Technology, China
 

ACM Transactions on Graphics (Proc. SIGGRAPH), 42(4), 2023

 


Teaser: Our elastic tessellation framework, ETER, enables the rendering of NURBS models with pixel accuracy while maintaining real-time frame rates. By utilizing on-the-fly computation of pixel-accurate tessellation factors and our novel crack-filling algorithm, we are able to achieve sufficient mesh density and high rendering quality without cracks at arbitrary zoom levels, as shown in the green and yellow boxes. The performance of our ETER is demonstrated in the histogram on the right, which shows the FPS of rendering according to various scales of four NURBS models (upper right, the numbers #P below the models indicate the numbers of the Bézier patches respectively). The horizontal axis represents the duplication count (#D) and the triangle count (#T, in millions) of the models respectively. The results show that ETER is able to render millions of Bézier patches with 0.25 billion triangles in real-time on an RTX 3090 Ti GPU.

 


Abstract We present ETER, an elastic tessellation framework for rendering largescale 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, a nd 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.
Keywords
NURBS, adaptive tessellation, GPU-based algorithms, real-time rendering
Motivation

Non-uniform rational B-splines curves and surfaces (NURBS) are the industry standard for modeling. Efficient rendering of large-scale NURBS Models without visual artifacts is highly desirable and regarded as a hard problem.

Existing commercial CAD systems deal with this problem by pre-tessellating NURBS models and discretizing them into LOD (level-of-detail) triangle meshes in an offline manner. However, the pre-tessellation nature of those solutions leads to three defects:
(1) the resolution of the tessellated triangle meshes is fixed once generated, for which unpleasing faceted shading effects and rough polygonal silhouette might be perceived at certain viewing angles.
(2) cracks between adjacent patches/LOD levels are difficult to deal with and most likely will be revealed at close-up views if not handled well.
(3) CAD users are obliged to configure a smaller tolerance value to limit object-space sampling error for favorable rendering quality, resulting in substantially increasing file size and memory usage, putting heavy burden on I/O bandwidth and affecting rendering performance eventually.

Goal

Instead of tessellating in a pre-processing step, we turn to pursue an on the fly adaptive tessellation framework for real-time rendering of large-scale NURBS models. Up to the present, no NURBS rendering framework has achieved pixel accuracy, crack-free, and real-time frame rate at the same time when handling large-scale NURBS models.

Method

We present a novel adaptive tessellation framework, named ETER, for achieving pixel-accurate, crack-free, and real-time rendering at the same time for large-scale NURBS models. We develop a highly parallel adaptive tessellation algorithm, a CUDA-based and Tensor Cores accelerated NURBS evaluation algorithm, and an efficient crack-filling algorithm. To evaluate ETER's capability,we implement a prototype rendering system that integrates ETER with hybrid rasterization and generates the output into the visibility buffer.

To the best of our knowledge, this work is the first in the literature to achieve pixel-accurate, crack-free, and real-time rendering at the same time for large-scale NURBS models. We are also the first to utilize Tensor Cores, Mesh Shaders, and hybrid software/hardware rasterization in NURBS model rendering.

Fig. 2: Overview of our rendering pipeline. Boxes with background in orange represent our proposed algorithms.

Fig. 3: Triangle meshes are decomposed into meshlets. Each color block represents a single meshlet, which corresponds to an 8x8 sampling grid. When zooming in, pixel accuracy is ensured through an increase in the tessellation factor, resulting in the generation of additional meshlets.

Fig. 4: (a) Using independent tessellation factor estimation and uniform sampling grid result in cracks, as shown in white pixels. (b) Directly applying conservative rasterization fills the cracks, but also results in severe jagged effects. (c) Our algorithm not only fills the cracks, but also avoids conservative rasterization induced jagged effects.

Results

Fig. 5: The breakdown of the frame time for each stage of the models. It shows the percentage of the total frame time allocated to each stage, including tessellation factor estimation (TPE), evaluation (Eval), rasterization (RAS), trimming test (TRI), crack filling (CRK), shading (SHD), and others.

Paper
PDF & Suppl. mat. & Demo (*.mp4)

 

Bibtex @article {ETER2023,
title = {ETER: Elastic Tessellation for Real-Time Pixel-Accurate Rendering of Large-Scale NURBS Models},
author = {Ruicheng Xiong, Yang Lu, Cong Chen, Jiaming Zhu, Yajun Zeng, Ligang Liu},
journal = {ACM Transactions on Graphics (SIGGRAPH)},
volume = {42},
number = {4},
year = {2023},
}
 

Back to Homepage


 

 

Copyright and disclaimer:
The SOFTWARE provided at this page is provided "as is", without any guarantee made as to its suitability or fitness for any particular use. It may contain bugs, so use of this tool is at your own risk. We take no responsibility for any damage that may unintentionally be caused through its use.

Copyright © 2023 GCL , USTC