VolumeViz Release Notes

 VolumeViz 7.2 (October 2008)

LDM compression level

SoGzipDataCompressor and SoJpegDataCompressor now allow the user to specify a compression level through their respective setCompressionLevel methods.

The level of compression can also be set for the LDM converter using the new -l command line option.

Texture unit configuration

The new environment variable IVVR_FIRST_RESERVED_TEXTURE_UNIT allows you to specify which texture units will be used by predefined VolumeViz Shaders. If redefined this will affect all the SoVolumeShader derived nodes :

You can retrieve this value using the SoVolumeShader::getNumReservedTextures() method.

Color interpolation

You can now disable color interpolation in the standard VolumeViz fragment shaders using the new field SoVolumerenderingQuality::colorInterpolation.

If set to FALSE, interpolation is not done on data values used to access the colormap. (Interpolation is still done when computing the gradient for lighting.) This may be used to render segmented data sets where interpolation is not appropriate. The default is TRUE.

 VolumeViz 7.1.1 (June 2008)

No new features were added. See the fixed bugs section.

VolumeViz 7.1 (April 2008)

LDM reader

CUDA Compute demos

A set of three demos are now provided to demonstrate interoperability between VolumeViz/LDM and Nvidia CUDA GPU computing modules.

See $OIVHOME/src/VolumeViz/contrib/cudaCompute

SEG-Y 2D viewer demo

This demo provides a basic SEG-Y 2D viewer example using Open Inventor and VolumeViz LDM, including:

See $OIVHOME/src/VolumeViz/contrib/SegY-2D

Volume projection support

The SoVolumeRender node now supports projected volume rendering, for example rendering a volume defined on a grid of latitude / longitude coordinates.  Projection is enabled by adding an SoProjection node before the SoVolumeRender node (see SoProjection for more information about supported coordinate systems, ellipsoids and map projections). The projection quality versus speed ratio can be controlled using the new projectedTileSubdivision field that defines how often each tile's geometry will be subdivided when projected.  Volume projection works with both regular and rectilinear (non-uniform voxel spacing) grids.
Notes: Projection is incompatible with VolumeRenderingQuality node. and requires LDM culling options to be disabled.

See $OIVHOME/src/VolumeViz/examples/volumeProjection

SoLDMDataAccess performance improvement / Get trace data

SoLDMDataAccess now provides two methods (synchronous and asynchronous) specifically optimized for accessing the data in a single "trace" in a seismic data volume.  A "trace" is a single row of voxel values along the volume X axis.  In other words, a special case of the getDataLine methods where the line is assumed to be aligned with the volume X axis.  A trace is specified by its YZ coordinate in voxel units. 

Note: The same optimization has been added to the getDataLine API for the case where the line is parallel to the volume X axis.

LDM Programming Guide

A new LDM Programming Guide for data management is now available to explain and demonstrate how to efficiently

PDF document available in $OIVHOME/src/VolumeViz/Compute/PG-DataManagementVolVizLDM.pdf
Example in $OIVHOME/src/VolumeViz/Compute

New LDM converter option / Higher quality subsampling

SoConverter now provides a new algorithm for computing values in lower resolution (subsampled) tiles during LDM conversion and a new option (-s n) to specify which method to use.  If n = 0, the default method (decimation) is used.  If  n > 0, a weighted average algorithm is used which combines a voxel (weighted by n) with its six nearest neighbors.

SoLDMWriter performance improvement

The performance of SoLDMWriter::writeSubVolume has been significantly improved in some cases. Two new parameters (with default values) have been added to this method.

If the doLowerResolution parameter is true (the default), writeSubVolume now builds the lower resolution tiles immediately. This can be significantly faster than building them in the finish() method, because the full resolution data is already in memory. To take full advantage of this feature the subvolume should include blocks of eight tiles that can be combined to form lower resolution tiles. If doLowerResolution is false, the lower resolution tiles are not generated during this call, but can still be generated later if the finish() method is called with &B doMultiResolution @b set to true.

If the doOverlappingTiles parameter is true (the default) then all tiles that intersect the subvolume to any extent will be written. This allows you to write arbitrary subvolumes. For example, you can compute using non-overlapping subvolumes regardless of what the tile overlap setting is for that volume. However if tiles overlap (overlap > 0) it may require more read/write operations (and therefore be slower) than expected. If you want to write subvolumes that correspond exactly to tile boundaries (and handle the overlap yourself), you can now set doOverlappingTiles to false. In this case tiles that intersect the subvolume by only the tile overlap (or less) are not considered intersecting.

New class: SoLDMTopoOctree

SoLDMTopoOctree is a utility class that provides information about the LDM topology for a given dataset, based on the dataset dimensions. For example you can query the ID of the tile that contains a specified voxel/cell in the data set and you can query the extent of a specified tile in voxel/cell coordinates.

Open Inventor Fields Replace Methods

Additional methods are now deprecated and replaced by Open Inventor fields. Fields have the advantage that they are saved in Open Inventor format files.

 VolumeViz 7.0.1 (February 2008)

No new feature was added. See the fixed bugs section.

 VolumeViz 7.0 (December 2007)

Asynchronous Data Interface for SoLDMDataAccess::getData Methods

For each existing SoLDMDataAccess::getData() method, an asynchronous version has been added with the new methods requestData() and getRequestedData(). This new feature optimizes the use of LDM for computation because computing and loading can be done in parallel.

See $OIVHOME/src/VolumeViz/examples/getLDMData/asyncGetDataBox.cxx.

LDM Writer

The new class SoLDMWriter allows an application to load or compute portions of a volume in any order and any convenient internal format, then write the volume in LDM format. The application can pass tiles or arbitrary regions of full resolution data to the writer in any order. When the writer is closed it can optionally invoke the converter and generate the lower resolution levels.

See $OIVHOME/src/VolumeViz/LDMWriter.

Multi Data Redesign

The previous design (up to VolumeViz 6.1) for support of multiple data sets had some limitations for performance and evolution. Although compatibility has been kept, we strongly recommend that you use the new SoMultiDataSeparator node to combine multiple data sets.

Volume Rendering Supports Rectilinear Grids

Rectilinear grid support allows non-uniform voxel spacing on each axis of the volume. The AmiraMesh reader (.am file), the in-memory reader, and the LDM reader now support rectilinear coordinates. New tags in the LDM file header allow you to to specify rectilinear coordinates (i.e., <RectilinearMapping> and </RectilinearMapping>).

LDM Converter Supports Data Compression

The new options -c <Compression Type> and -l <Compression Level> can be used with the SoLDMConverter to specify the compression type and the compression level. Compressed data uses less disk space and can be loaded faster (fewer bytes to move). Currently gzip and jpeg compression is available. The effectiveness of compression depends on the nature of the data. By subclassing SoDataCompressor, you can add support for additional compression types.

LDM Converter Supports Tile Border (Overlap) > 1

The new argument <Border Size> to the -b option enables you to specify a border size > 1. In order to avoid discontinuity artifacts with lighted volume rendering or with bump mapped slices, a border size of 3 should be specified.

Volume Rendering Performance Optimizations

Volume rendering supports a variety of new different techniques in order to improve performance:

Volume Rendering Quality Improvements

The following new rendering effects has been added:

All the previous techniques can be combined together.

Additionally, the previous limitation on the number of slices used for volume rendering has been raised. Increasing the number of slices increases significantly the global image quality of the volume rendering.

Tile Loading Optimization

Tile loading from disk to main memory and from main memory has been significantly improved. The consequence is that high resolution rendering is obtained more quickly. Streaming SIMD Extensions instructions (SSE) are used in these optimizations.

Slice Rendering Quality Improvement

A new interpolation type (MULTISAMPLE_12) is available for 2D slices and volume skin which provides much higher quality images than linear interpolation. See SoVolumeShape::Interpolation for details.

Volume Clipping

There are now two ways to specify volume clipping:

Volume clipping applies to all volume rendering nodes.

SoVolumeRenderingQuality and SoVolumeIsosurface Can Work Together

Prior to Open Inventor 7.0, it was not possible to have SoVolumeRenderingQuality and SoVolumeIsosurface apply to the same SoVolumeRender node. This restriction has been lifted.

LDM Core Separation

The LDM core has been re-factored to support multiple extensions such as ReservoirViz. Consequently some headers file which are common to multiple extensions (and which existed in previous releases) have been moved to the directory $OIVHOME/include/LDM. For instance SoROI.h has been moved from $OIVHOME/include/VolumeViz/nodes/SoROI.h to $OIVHOME/include/LDM/nodes/SoROI.h. Another consequence is that the class SoVolumeData now inherits from the new SoDataSet class which is a generic class for all LDM data sets. Upward compatibility has been kept, so no code changes are required.

Open Inventor Fields Replace Many Methods

Numerous methods are now deprecated and replaced by Open Inventor fields. Fields have the advantage that they are saved in Open Inventor format files.

Update of volRend Demo

The volRend demonstration program has been updated to expose the new features described above. New color maps have been added, particularly those useful for seismic data.

VolumePro Support Dropped

The support of VolumePro boards from TeraRecon has been dropped.

VolumeViz 6.1 (March 2007)

SEGY File Reader Enhancements

Expanded Capabilities

The SEGY file reader (SoVRSegyFileReader) has been greatly enhanced to allow more flexibility in reading SEGY files and to return more information extracted from the file.

For example, you can now specify the byte position of fields in the trace header. If you know the correct values, and the file is not loading correctly, you can specify the header values to use.

You can now also query additional info from the file. For example, the inline, crossline, and time ranges, as well as the actual coordinates of the seismic survey.

The new sample $OIVHOME/src/VolumeViz/Converters/SegY illustrates these improvements.

Methods Are Now Virtual (added in OIV 6.0.3)

In order to facilitate subclassing, the SoVRSegyFileReader methods have been made virtual. This makes it easier to extend/customize the functionality while also allowing re-use of some of the existing methods. (Enhancement request #1657)

VolRend Demo Program Enhancements

Save Settings

It is now possible to save certain parameter settings for re-use the next time VolRend is started. This is accomplished using the new Save settings filename box at the bottom of the Region of Interest tab. The settings are saved in oiv.cfg by default. For information about the parameters, see $OIVHOME/src/src/VolumeViz/VolRend/ReadMe.txt.

Volume Scaling

New Volume Scale Factor sliders allow you to adjust the shape of a volume by scaling it along its X, Y, and Z axes. A reset button sets the scale factors all back to 1.0. These new controls appear at the bottom of Volrend's Geometry Control tab.

Shader Enhancements (added in OIV 6.0.3)

Some features have been added to VolumeViz to facilitate combined computation and rendering in shaders. For example, applications working with seismic data may wish to do computations such as NMO correction and horizon flattening on the GPU. Doing these computations "on the fly", using shaders, allows parameters to be modified interactively and offloads work from the CPU.



SoVolumeGroup Enhancement (added in OIV 6.0.3)

SoVolumeGroup now supports SoVolumeShader correctly. Until 6.0.3, it was not possible to combine multiple volumes with applying a SoVolumeShader (isosurface, lighting, and preintegrated).

VolumeViz 6.0 (March 2006)

Highlights

Here are highlights of the new features of VolumeViz 6.0 and VolumeVizLDM 6.0:
Performance improvements
Rendering improvements
General
Each of these items, as well as many others, are discussed in greater detail below.

Performance Improvements

VolumeViz now has improved performance in various areas:

Rendering Improvements

VolumeViz 6.0 provides the following rendering improvements:

General Enhancements

General enhancements include:

Other Miscellaneous Improvements

New Methods and Fields Added to Allow Larger Volume Dimensions

In several classes, new methods were added that use Sbxxx3i32 instead of Sbxxx3s in the calling sequence. This allows larger volume dimensions to be specified. For example,

OLD: SoVolumeData* subSetting( const SbBox3s& region )
NEW: SoVolumeData* subSetting( const SbBox3i32& region )

OLD: void setVolumeData( const SbVec3s &dimension... )
NEW: void setVolumeData( const SbVec3i32 &dimension... )

Although existing programs should contine working unchanged, the older methods have been deprecated, and we recommend applications change to the new versions of these methods as they are more powerful and will have a longer lifespan.

Note that in some cases the new method expects a reference instead of a pointer for some parameters. For example, SoVolumeDetail::getProfileValue().

The affected classes and their methods are:

SoVolumeDetail
SoLDMResourceManager
SoVolumeData
SoVRGenericFileReader

The box and subVolume fields of SoROI were changed as well. Previously they were of type SoSFBox3s. Now they are of type SoSFBox3i32.

SoOrthoSlice and SoObliqueSlice Support Additive Blending

A new field was added to SoOrthoSlice and to SoObliqueSliceto allow for support of additive blending. The new field, composition, is analogous to the one in the SoVolumeRender class. Possible value are:

The default value is ALPHA_BLENDING for compatibility with current behavior. See the Reference Manual for details.

NOTE: Older versions of Open Inventor will not be able to read Inventor files that specify a value for this new field.

This was enhancement request 1023.

SEGY File Reader Enhancements

Several enhancements have been made to the SEGY file reader (SoVRSegyReader).

SoVRLdmReader Allows Use of Custom XML Tags in LDM File Header

The LDM Reader has been enhanced to allow you to add custom XML tags to your LDM file header, and then subsequently use the LDM Reader to retrieve them. This can be useful, for example, to store survey geo-position data in the file header.

The following method

    void setXmlCallback( void (*xmlCB)( FILE*, void * userData ), void * userData );
specifies the callback that SoLDMConverter will call when the LDM file header is generated. This allows the application to add custom XML tags. The custom tags (or any of the standard tags) can be read back in an application by using the following method:
    SoVRLdmFileReader::getXmlTag()
A new example program, CustomTags, illustrates this new feature.

This was enhancement request 1053.

VolumePro Data Loading is Now Integrated with LDM

VolumePro data loading is now integrated with LDM, resulting in much faster loading in several interesting cases (details below). Note that, unlike texture rendering, LDM does not support "mixed resolution" rendering on the VolumePro (this is not a native feature of the board).

Improved VolumePro Support in VolumeViz

VolumeViz 5.0 (August 2004)

VolumeViz 5.0 has a number of new features, the most significant of which is support for interactive navigation of very large data sets using the new LDM (Large Data Management) classes.

LDM (Large Data Management)

A key new feature of VolumeViz 5.0 is LDM (Large Data Management) mode. It allows the user to view and interactively naviagate throught vast amounts of data on systems ranging from laptops to fully immersive virtual environments.

Overview

For many volume rendering technologies, a large volume is one gigabyte. But today many volume data sets, for example seismic data, commonly exceed tens or even hundreds of gigabytes. These data sets easily exceed the available system memory, especially on 32-bit machines, and always exceed the available texture memory (still less than one gigabyte even on high-end boards). The VolumeViz 5.0 solution is a hierarchical, multi-resolution data manager called LDM. This innovative technology allows rendering of extremely large data sets with reliable interactive navigation even on relatively low-end machines. For best results the data is preprocessed to create a hierarchy of lower-resolution (subsampled) tiles. The VolumeViz 5.0 converter tool allows you to convert your data set to the LDM data format.

The tiles at each higher level represent a larger portion of the total volume at a lower resolution. So overall the top level tile contains a low resolution overview of the entire volume and the lowest level tiles contain the full resolution data. This preprocessing requires only roughly 15%-25% additional storage for the volume data (depending on whether the tiles are overlapped to avoid rendering artifacts at tile boundaries).

Generally the top level tile is loaded first, providing almost immediate visualization of the volume (or any portion of the volume). Then the image is automatically refined by loading higher resolution data and higher resolution textures. Interactivity is maintained because rendering always uses textures already loaded into texture memory. Although lower resolution data may be displayed temporarily, maximum image quality (with the available system resources) is reached quickly. The allocation of system resources depends on the current view, current objects (slices, subvolumes, etc.), and a set of user-controlled heuristics such as slices have higher priority than subvolumes.

In order to maintain interactivity, VolumeViz takes into account a variety of constraints including system memory, texture memory, rendering speed, data loading speed (disk-to-system memory), and texture loading speed. Data is loaded asynchronously using a separate thread, taking advantage of multi-processor systems. Performance and image quality automatically increase as system constraints are lifted, for example, more system memory, a faster disk drive, or an additional CPU.

In summary, LDM allows unprecedented access to extremely large data sets and at the same time provides a remarkably interactive user experience. The user perceives that any portion of the volume can be displayed immediately, the volume can be navigated smoothly at all times, slices and probes are responsive at all times, and image quality is automatically managed to the best possible level.

Licensing

The LDM feature requires a separate LDM license string in addition to the usual VolumeViz license string. Contact your regional sales manager for pricing info and/or to request a temporary license if necessary.

Default

Because the LDM functionality offers significant benefits to users needing to display large volumes of data, i.e., most VolumeViz users, LDM mode is now the default mode. You can turn off LDM mode using the configuration keyword IVVR_40_COMPAT. Alternatively, you can turn it off programmatically using SoVolumeData::setPaging(TRUE).

Support for New Data Types

Support for Loading DICOM Format Data Files

A new file reader class, SoVRDicomFileReader, was added to provide support for reading DICOM 3.0 files.

See http://medical.nema.org/ for information on the file format.

Scene Graph Lights Affect Slices and Volume Skin

This new feature is particularly useful, for example, when two slices intersect (line of intersection is more visible). Previously lights in the Open Inventor scene graph did not affect the rendering of SoOrthoSlice, SoObliqueSlice, or SoVolumeSkin.

Note that lights in the scene graph affect volume skin rendering, but not direct volume rendering. (SoVolumeRender has its own light.)

Expanded Support for SEGY Files

Previously, the SEGY reader supported 32-bit integer SEGY files with a single convention for determining the number of samples per trace. It has been enhanced to support all sizes of integers as well as float data, and can correctly determine the number of samples in most cases.

Improved Support for VolumePro Board

Improved Debug Output

The config file keyword IVVR_DEBUG was previously only useful with a Windows debug build. It is now active in both release and debug builds on all platforms.

Note that the output is purposefully limited in a release build. However it will report useful information including:

New Image Composition Type: MIN_INTENSITY

MIN_INTENSITY, a new enum value for the composition field of SoVolumeRender, draws the minimum intensity for each pixel drawn along the viewing axis.

It is useful for displaying data volumes in which the background is of high intensity and the details of interest are of low intensity.

Previously, only the following three enum values were supported:
MAX_INTENSITY, SUM_INTENSITY, and ALPHA_BLENDING.

New Field: useRGBA

SoOrthoSlice, SoObliqueSlice, and SoVolumeSkin have a new field (useRGBA) which allows you to force the use of RGBA textures, even if indexed textures were requested on the SoVolumeData node. RGBA textures allow using a larger colormap when the data values are larger than 8 bits. This field allows you to use indexed textures for SoVolumeRender (to reduce the amount of texture memory needed) but use RGBA textures for the nodes where the difference in texture memory needed is not significant.

Updated Examples

The VolRend example program has been updated to incorporate the LDM features. It has also been enhanced with support for SpaceBall/SpaceMouse input. See the readme.txt file in the VolRend directory for instructions on using the SpaceBall/SpaceMouse.

The following are other new examples:

Example: $OIVHOME/src/VolumeViz/examples/GetLDMData/*

VolumeViz 4.0 (April 2003)

Multi-Volume Support

One of the most significant advances in VolumeViz 4.0 is that it now allows multiple volumes to be rendered correctly in the same scene. See the new SoVolumeGroup node and new example program "multivolumes". All SoVolumeRender nodes that are under the same SoVolumeGroup node will be rendered together with correct blending (subject to some limitations). The SoVolumeRender nodes could represent different volume data sets (see SoVolumeData) or different subvolumes (see SoROI) of the same volume data set.

For best results, use 3D texture rendering (SoVolumeData::TEX3D) and the viewAlignedSlices option. With these settings even volumes that are rotated with respect to each other are correctly rendered. Using 2D texture rendering (TEX2D), all the volumes must be aligned (i.e., their XYZ axes must be parallel) to get the correct image. There is a small performance decrease when multi-volume support is enabled. NOTE: Multi-volume rendering does not (in general) produce the correct image using a VolumePro board (we are still looking for a solution for this case).

SoVolumeSkin

SoVolumeSkin is a new geometry node that can be used in place of an SoVolumeRender node, but only draws the outer surfaces of the volume. When using an opaque color map this generates the correct image but can be many times faster than actual volume rendering. This should be particularly valuable for moving a subvolume in a seismic data set. SoVolumeSkin responds to SoROI and SoTransferFunction in exactly the same way as the SoVolumeRender node.

Volume Geometry Nodes

A new set of "volume geometry" nodes allow geometry to be drawn inside the volume and be automatically textured using the current volume data and color map. This geometry can be used, for example, to map volume data onto a ribbon of connected "slices", a fault surface or a well bore. The volume geometry nodes each have the same fields (plus two additional ones) as the corresponding standard geometry node, so defining volume geometry is essentially the same as defining standard geometry. The new nodes are:

You can use modeling transforms (for example an SoTransform node or a manipulator) to move, scale, and rotate volume geometry nodes. However note that if you also use transforms to move, scale, or rotate the entire volume, the transform node must occur before the SoVolumeData node in the scene graph. Applying a transform only to the SoVolumeRender node will result in an incorrect image for the volume geometry nodes.

AlternateRep for SoOrthoSlice and SoObliqueSlice

These nodes now have an alternateRep field, similar to the DataViz nodes. The new setWriteAlternateRep method in SoVolumeRendering tells VolumeViz to automatically generate an alternateRep scene graph for slices using only standard texture and faceset nodes. This alternateRep allows the VolumeViz slices to be read and displayed correctly in any Open Inventor-based program, for example SceneViewer or 3SpaceAssistant, even if that program does not use the VolumeViz extension.

NOTE: Inventor files that contain this new field will not be readable by older versions of Open Inventor. See the Compatibility topic for more details.

SoROIManip

SoROIManip is a new manipulator class derived from SoROI that provides a convenient 3D user interface for directly moving and resizing the subvolume and ROI boxes. The user interface is provided by an SoTabBoxDragger. The manipulator (optionally) constrains the dragger to the extent of the volume and directly updates the SoROI fields. See the new "roiManip" example program.

SoVolumeReader Enhancements

The new getSubVolume method is an alternative to getSubSlice that allows the application to return an entire brick of volume data instead of a single slice. It also allows the application to return a pointer to the data instead of (as currently) copying the data into memory allocated by VolumeViz. This should allow large volumes to be loaded much more quickly.

In addition, the getSubVolume method (with the new getSubVolumeInfo method described below) allows the application to return data that is already subsampled. Previously the application was required to always return raw (full resolution) data, which VolumeViz would subsample if necessary. VolumeViz will still do subsampling if necessary, but if the application returns data at the requested (or lower) subsampling level VolumeViz does not have to do that work.

Note that the application can return data that is lower resolution than requested by VolumeViz. This allows, for example, using an low resolution (already subsampled) "overview" volume the first time a brick is requested. Lower resolution bricks can be loaded into texture memory more quickly, so the user can get an initial image of a large volume much more quickly. The new loadRegions method in SoVolumeData can subsequently be used to force VolumeViz to reload the brick, allowing the application to replace it with higher resolution data.

VolumeViz always calls the new getSubVolumeInfo method before each call to getSubVolume. getSubVolumeInfo is passed the extent of the brick and the requested subsampling level. The application should return the actual subsampling level of the data that will be returned when getSubVolume is called for that brick. And also return a flag indicating if the data will be copied into VolumeViz memory or VolumeViz should use the data from application memory.

Multi-Thread and Multi-Pipe Support

VolumeViz can now be used in multi-pipe programs, i.e., where there are multiple rendering threads traversing the scene graph at the same time and textures (possibly) cannot be shared between pipes.

Delayed Rendering

VolumeViz shape nodes (e.g., SoVolumeRender, SoOrthoSlice, ...) can now be delayed and/or sorted according to the current transparency type (see SoGLRenderAction::TransparencyType). Delayed rendering can be useful to ensure that non-opaque VolumeViz objects are correctly blended with opaque geometry in the scene. Delayed rendering is disabled by default (for backward compatibility). It can be enabled using SoVolumeRendering::setDelayedRendering or by setting the environment variable IVVR_DELAY_RENDER.

Note that VolumeViz shapes are either delayed (any DELAYED_* type), delayed and sorted (any SORTED_* type), or drawn immediately (all other transparency types). VolumeViz shapes are always blended according to their own attributes, e.g., SoVolumeRender::composition. VolumeViz shapes are considered "transparent" if either the material transparency is non-zero or the transfer function (color map) contains at least one entry with an alpha value less than one. Otherwise VolumeViz shapes are considered opaque and are not delayed or sorted.

New/Improved Example Programs

The following basic example programs have been added and can be found in the .../src/VolumeViz/examples directory:

The VolRend demo/example program has been revised to use the new DialogViz user interface tools. Instead of multiple dialog boxes, the user interface is contained in a convenient tabbed dialog box. There are new controls in the dialog including: VolRend also uses the new SoRoiManip instead of "ad hoc" draggers.

Improved VolumePro™ Support

Support for the VolumePro 1000 board (www.terarecon.com) has enhanced by rebuilding with the latest release of VLI (v3.1). This release allows the VolumePro 1000 to generate correct images when a perspective camera is being used.

NOTE: If you are using a VolumePro 1000 board, be sure to install the VLI 3.1 compatible driver included with the VolumeViz SDK.

VolumeViz 3.0.1 (April 2002)

VolumeViz 3.0 (March 2002)

The Volume Rendering extension has been renamed to VolumeViz.
VolumeViz 3.0 is compatible with (requires) Open Inventor 3.1

VolumeRendering 2.1 (August 2001)

No major enhancements were added in this version which is compatible with Open Inventor 3.0.

VolumeRendering 2.0 (March 2001)

VolumeRendering 1.1 (October 2000)

There is only a small change in the the version number, but there are some major enhancements, including dramatic improvements in performance and image quality for both texture map and VolumePro(tm) rendering.
NOTE 2: Dynamic color lookup is disabled if lighting is enabled.