Informationen für

Logo VISUS



Texture-Based Visualization of 3D Unsteady Flow by Real-Time Advection and Volumetric Illumination

This web page contains additional material accompanying the IEEE Transactions on Visualization and Computer Graphics paper "Texture-Based Visualization of 3D Unsteady Flow by Real-Time Advection and Volumetric Illumination" by Daniel Weiskopf, Tobias Schafhitzel, and Thomas Ertl.

Abstract

This paper presents an interactive technique for the dense texture-based visualization of unsteady 3D flow, taking into account issues of computational efficiency and visual perception. High efficiency is achieved by a 3D GPU-based texture advection mechanism that implements logical 3D grid structures by physical memory in the form of 2D textures. This approach results in fast read and write access to physical memory, independent of GPU architecture. Slice-based direct volume rendering is used for the final display. We investigate two alternative methods for the volumetric illumination of the result of texture advection: first, gradient-based illumination that employs a real-time computation of gradients and, second, line-based lighting based on illumination in codimension 2. In addition to the Phong model, perception-guided rendering methods are considered, such as cool/warm shading, halo rendering, or color-based depth cueing. The problems of clutter and occlusion are addressed by supporting a volumetric importance function that enhances features of the flow and reduces visual complexity in less interesting regions. GPU implementation aspects, performance measurements, and the discussion of results are included to demonstrate our visualization approach.

Publication Download

A PDF version can be found here.

Comparison of Illumination Models

The following videos and images compare different illumination models applied to 3D advection. If needed, gradients are computed on-the-fly, based on the current advection result.

Animated visualization of 3D advection of a tornado data set. No volumetric illumination is applied. [Hires JPEG image]

Film of 3D advection of noise and dye. No volumetric illumination is applied.

Animated 3D advection with volumetric Phong illumination based on gradients. [Hires JPEG image]

Animated 3D advection with volumetric cool/warm shading based on gradients. [Hires JPEG image]

3D advection image with depth-cueing. [Hires JPEG image]

3D advection image with halo rendering based on gradients. [Hires JPEG image]

Comparison Between Gradient-Based and Line-Based Illumination

Volume rendering of 3D advection without any illumination. This image serves as comparison basis for the following two videos. [Hires JPEG image]

Animated visualization of 3D advection with gradient-based Phong illumination. [Hires JPEG image]

Animated visualization of 3D advection with line-based Phong illumination. [Hires JPEG image]

Feature-Based Visualization

Animated feature-based visualization of a fluid streaming through a tube equipped with interior obstacles. The obstacles are not shown in order to reduce visual occlusion. Regions of high velocity are rendered in yellow-red colors and emphasized by high opacities. The context, which has lower velocity, is shown with more transparent green-blue colors.

Recording of an interactive visualization of a tornado data set. The flow is animated via 3D texture advection while the user is changing the camera position. High and medium-range velocities are emphasized by feature-based visualization.

Benard flow, displayed by lambda-2 based focus-and-context visualization. Swirling features are emphasized by high opacities, the context is illustrated by highly transparent colors. [Hires JPEG image]

HLSL Code

Our implementation of the texture-based surface flow visualization exploits the functionality and speed of graphics hardware by making extensive use of fragment programs. The implementation is based on C++ and DirectX 9. The fragment programs are formulated as HLSL shader programs. GPU programming is strictly separated from CPU programming by using effect files (fx files).

The part of the fx file that implements the relevant aspects of advection and mapping between logical and physical memory can be downloaded.