next up previous contents
Next: Rendering Up: Display of Iso-Surfaces Previous: Display of Iso-Surfaces   Contents

Preprocessing

To achieve real-time performance on affordable hardware, the advantages of explicit surface extraction and representation are unified with the advantages of fast rendering using shear/warp projection. A voxelized surface representation is created during the preprocessing step, and stored in a RenderList for later rendering.

The creation of an explicit surface representation prior to rendering eliminates the need for surface detection during rendering as required by first-hit ray casting. To obtain a representation for the iso-surface, the volume is scanned for transitions between voxels with a value below and above the threshold, i.e., the iso-value. If a voxel has a data value greater or equal to the threshold and if it has at least one 26-connected neighbor below the threshold, it belongs to the surface and is considered to be relevant. The relevant voxels are extracted form the volume and stored into a RenderList / RenderListEntry structure. The voxels which have been extracted during the scan correspond to a 6-connected surface within the volume at the specified threshold value. The 6-connectedness of the surface voxels is required to ensure that no holes appear during shear/warp-based rendering due to displacement of voxels between successive slices.

For each surface voxel, it's position and the gradient vector are stored as attributes. To obtain a memory-efficient representation, the gradient vector is converted to polar coordinates instead of the usual $(x,y,z)$ representation and stored using 14 bits (7 bits per angular coordinate, as a tradeoff between shading quality and computational effort for precomputing shading). The storage scheme allows to code 16384 distinct normal vectors which is sufficient for smooth shading of real-life data.


next up previous contents
Next: Rendering Up: Display of Iso-Surfaces Previous: Display of Iso-Surfaces   Contents
Lukas Mroz, May 2001,
mailto:mroz@cg.tuwien.ac.at.