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 |
|