Röttger, Kraus, and Ertl [81] use a clever technique
called pre-integration. Their approach is
to store the result of the volume rendering integral for all possible
thickness, luminance, and attenuation parameters in a table for rapid
lookup. Of course, doing this calculation for even the linear solution
(Equation 1.28 on
page
) requires five
independent variables. Creating a five dimensional table with high enough
fidelity is impractical.
|
However, Röttger and colleagues' target applications are those pertaining to scientific visualization. As such, the volumetric parameters of the models they are rendering are specified by scalar information from a physical simulation, such as pressure or temperature, that are mapped to rendering parameters (luminance and attenuation) through a transfer function. Figure 1.13 demonstrates the process of converting scalar values to volume properties to color. By using their lookup table for both classification (converting scalars to rendering properties) and computation of the volume rendering integral enables them to reduce the dimensionality of their lookup table to three. The dashed box in Figure 1.13 shows the scope of the calculation of the pre-integrated lookup. Röttger and colleagues provide also an approximation that requires only a two dimensional lookup table. (The approximation is improved by Guthe and colleagues [33] using a succession of 2D tables.)
The major advantage of the pre-integration technique is that it is fast (a texture lookup) and potentially can handle any interpolation of volumetric properties including an arbitrary number of isosurfaces. Engel, Kraus, and Ertl [22] argue (correctly) that interpolating the model's scalar values separately from the volumetric properties can reduce aliasing introduced by the interpolation. Ultimately, we can perform the pre-integration approach on commodity graphics hardware and can compute the volume rendering integral with appropriate interpolation in real time.
One disadvantage of the pre-integration approach is that the transfer function must be constant. If the transfer function ever changes, then an application has to recalculate the volume integral for every pair of entries in the table, often taking several minutes. This precludes the possibility of interactively changing the transfer function. Röttger and Ertl [80] improve the technique somewhat by performing the recalculation of the pre-integrated values on the graphics hardware, thereby reducing the time from minutes to seconds.
Another potentially serious problem with pre-integration is that we can use only one-dimensional transfer functions without introducing impractically high table dimensions. However, Kniss, Kindlmann, and Hansen [46,47] introduce effective tools that use 2- and 3-dimensional transfer functions for data exploration and presentation. Recent work has made advances in using transfer functions of even higher dimensions [50,94].
Furthermore, the use of pre-integration precludes the use of any view-dependent rendering effects. These include several non-photorealistic rendering techniques [21,43,44] and global illumination [19,37,48,51,112,113]. Therefore, the pre-integration technique is useful for many systems, but it has fundamental flaws that can hamper visualization tasks.