Commercial software systems are available for displaying isosurfaces (also known as level sets, implicit surfaces, varieties, membranes, or contours) of 3D scalar-valued data at interactive rates, allowing a user to browse the data by adjusting the isovalue. We present a technique for applying global illumination to the resulting scene by precomputing the illumination for level sets and storing it in a 3D illumination grid. The technique permits globally illuminated surfaces to be rendered at interactive rates on an ordinary desktop computer with a 3D graphics card. We demonstrate the technique on datasets from magnetic resonance imaging (MRI) of the human brain, confocal laser microscopy of neural tissue in the mouse hippocampus, computer simulation of a Lennard-Jones fluid, and computer simulation of a neutron star.
Many rendering algorithms can be understood as numerical solvers for the light-transport equation. Local illumination is probably the most widely implemented rendering algorithm: it is simple, fast, and encoded in 3D graphics hardware. It is not, however, derived as a solution to the light-transport equation. We show that the light-transport equation can be re-interpreted to produce local illumination by using vector-valued light and matrix-valued reflectance. This result fills an important gap in the theory of rendering. Using this framework, local and global illumination result from merely changing the values of parameters in the governing equation, permitting the equation and its algorithmic implementation to remain fixed.