Efficient Splatting Using Modern Graphics Hardware
Daqing Xue and Roger Crawfis
Department of Computer and Information Science, The Ohio State University
This paper appears in issue Volume 8, Number 3.
Purchase this issue from the akpeters.com web site.
Abstract
Interactive volume rendering for data set sizes larger than one million samples requires either dedicated hardware, such as three-dimensional texture mapping, or a sparse representation and rendering algorithm. Consumer graphics cards have seen a rapid explosion of performance and capabilities over the past few years. This paper presents a splatting algorithm for direct volume rendering that utilizes the new capabilities of vertex programs and the OpenGL imaging extensions. This paper presents three techniques: immediate mode rendering, vertex shader rendering, and point convolution rendering, to implement splatting on a PC equipped with an NVIDIA GeForce4 display card. Per-splat and per-voxel render-time analysis is conducted for these techniques. The results show that vertex-shader rendering offers an order of magnitude speed-up over immediate mode rendering and that interactive volume rendering is becoming feasible on these consumer-level graphics cards for complex volumes with millions of voxels.
Author Information
Daqing Xue, Department of Computer and Information Science, The Ohio State University, 395 Dreese Labs, 2015 Neil Avenue, Columbus, OH 43210-1277 xue@cis.ohio-state.edu
Roger Crawfis, Department of Computer and Information Science, The Ohio State University, 395 Dreese Labs, 2015 Neil Avenue, Columbus, OH 43210-1277 crawfis@cis.ohio-state.edu
Source Code
Glut-based C++ source code for the three rendering methods, along with sample data and results, is available here: tsplat.zip (1.1Mb ZIP archive)
BibTeX Entry
@article{XueCrawfis03,
author = "Daqing Xue and Roger Crawfis",
title = "Efficient Splatting Using Modern Graphics Hardware",
journal = "journal of graphics, gpu, and game tools",
volume = "8",
number = "3",
pages = "1-21",
year = "2003",
}
