Informationen für


Ambient Volume Scattering

IEEE SciVis 2013 Honorable Mention Award

IEEE Transactions on Visualization and Computer Graphics, 19(12): 2936-2945, 2013.

M. Ament, F. Sadlo, D. Weiskopf

VISUS, University of Stuttgart, Germany.


This work was partially funded by Deutsche Forschungsgemeinschaft (DFG) under grant WE 2836/2-1 ("Astrographik") and the Cluster of Excellence in Simulation Technology (EXC 310/1). The authors thank the U.S. National Library of Medicine, OsiriX, Dr. John Blondin, and Prof. Ulrich Rist for providing data sets.


We present ambient scattering as a preintegration method for scattering on mesoscopic scales in direct volume rendering. Far-range scattering effects usually provide negligible contributions to a given location due to the exponential attenuation with increasing distance. This motivates our approach to preintegrating multiple scattering within a finite spherical region around any given sample point. To this end, we solve the full light transport with a Monte-Carlo simulation within a set of spherical regions, where each region may have different material parameters regarding anisotropy and extinction. This precomputation is independent of the data set and the transfer function, and results in a small preintegration table. During rendering, the look-up table is accessed for each ray sample point with respect to the viewing direction, phase function, and material properties in the spherical neighborhood of the sample. Our rendering technique is efficient and versatile because it readily fits in existing ray marching algorithms and can be combined with local illumination and volumetric ambient occlusion. It provides interactive volumetric scattering and soft shadows, with interactive control of the transfer function, anisotropy parameter of the phase function, lighting conditions, and viewpoint. A GPU implementation demonstrates the benefits of ambient scattering for the visualization of different types of data sets, with respect to spatial perception, high-quality illumination, translucency, and rendering speed.



Volume renderings of a supernova simulation with different optical models. (a) Standard emission–absorption model (64 fps). (b) Volumetric ambient occlusion (27 fps). (c) Our ambient scattering model with a light source in the center of the supernova (20 fps).

Visible Human

Visualization of the Visible Human data set with different optical models. (a) Single scattering model with isotropic scattering g = 0.0 using shadow rays. (b) Volumetric ambient occlusion with a radius of r = 14 voxels. (c) The same lighting conditions as in (a), but with ambient scattering g = 0.0 and a radius of r = 14 voxels. (d) Additional specular highlights with gradient-based shading. (e) Additional light with ambient occlusion.

Manix (Tissue)

Visualization of the Manix data set with ambient scattering and varying anisotropy values. The first light source is located in front of the data set and the second one is located behind. The anisotropy parameter of the HG phase function varies with (a) g = -0.8, (b) g = -0.6, (c) g = 0.0, (d) g = 0.6, and (e) g = 0.8. All other parameters remain constant.

Manix (Skeleton)

Visualization of the skeleton of the Manix data set with strong forward scattering g = 0.8. The light source is located behind the data set.


The Mecanix data set with strong forward scattering g = 0.8. (a) Single scattering leads to strong darkening and hard shadows. Ambient scattering with a radius of (b) r =6 and (c) r =14 voxels illuminates subtle details by means of translucency and soft shadows.

Buoyancy Flow

Visualization of one time step of the time-dependent Buoyancy Flow data set. Cool air (blue) drops from the ceiling, while hot air (red) raises from the floor. Due to convection, the flow becomes time-dependent. (a) Emission–absorption model. (b) Ambient scattering g = 0.5 with two light sources and a radius of r = 10 voxels.

Boundary Layer

Visualization of the time-dependent lambda-2 field of the Boundary Layer data set with different optical models. (a) Ambient occlusion with a radius of r = 14 voxels. (b) Illumination with single scattering (g = 0.5) and additional specular highlights. (c) Ambient scattering (g = 0.5) and a radius of r = 14 voxels together with specular highlights.

Comparison with Path Tracing (Visible Human)

Comparison of volumetric path tracing (top row) with ambient volume scattering (bottom row). Path tracing is terminated deterministically after (a) 1, (b) 2, and (c) 4 bounces. (d) Unbiased path tracing using Russian roulette for stochastic termination. (e) Single scattering with ray casting. Ambient volume scattering with an ambient radius of (f) 2, (g) 6, and (h) 8 voxels.

Comparison with Path Tracing (Supernova)

(a) Unbiased path tracing using Russian roulette for termination. (b) Ambient volume scattering using a radius of 15 voxels.

Table Loader

This C++ program implements a class AVSTable2D that loads one 2D slice of the 3D preintegration table from disk into memory. The main routine of the program loads all slice files of a 3D table and plots the 2D radiance distribution of each slice into separate image files (.ppm file format). Please read the README file in the zip archive for more details.

Download source code (7.2 KB)

Table Data

Each of the following 3D tables samples the parameter ranges θ in [0,π], σ in [0,20], and g in [-0.9,0.9] uniformly with a resolution of 256 x 256 x 19 data points. The albedo of each 3D table remains constant. We provide table data for albedo values ranging from 0.1 to 0.9. An albedo value of 0.0 corresponds to the emission-absorption model without scattering, whereas a value of 1.0 is non-physical.

Download albedo 0.9 (4.4 MB) [This table was used in the paper]

Download albedo 0.8 (4.4 MB)

Download albedo 0.7 (4.4 MB)

Download albedo 0.6 (4.5 MB)

Download albedo 0.5 (4.5 MB)

Download albedo 0.4 (4.5 MB)

Download albedo 0.3 (4.5 MB)

Download albedo 0.2 (4.5 MB)

Download albedo 0.1 (4.5 MB)

Table Visualization

Visualization of the entire Table Data obtained with the Table Loader. The albedo (a) is constant in each row, whereas the anisotropy parameter (g) of the Henyey-Greenstein phase function is constant in each column.