|
Hardware-Assisted Visibility Sorting for Unstructured Volume Rendering
by
Steven Callahan
Advised by
Claudio Silva
Harvesting the power of modern graphics hardware to solve the
complex problem of real-time rendering of large unstructured meshes
is a major research goal in the volume visualization community.
While for regular grids, texture-based techniques are well suited
for current GPUs, the steps necessary for rendering unstructured
meshes are not so easily mapped to current hardware.
We propose a novel volume rendering technique that simplifies the
CPU-based processing and shifts much of the sorting burden to the
GPU, where it can be performed more efficiently. Our
hardware-assisted visibility sorting algorithm is a hybrid technique
that operates in both object-space and image-space. In object-space,
the algorithm performs a partial sort of the 3D primitives in
preparation for rasterization. The goal of the partial sort is to
create a list of primitives that generate fragments in nearly sorted
order. In image-space, the fragment stream is incrementally sorted
using a fixed-depth sorting network. In our algorithm, the
object-space work is performed by the CPU and the fragment-level
sorting is done completely on the GPU\@. A prototype implementation
of the algorithm demonstrates that the fragment-level sorting
achieves rendering rates of between one and six million tetrahedral
cells per second on an ATI~Radeon~9800.
|