Click or drag to resize
SoDataSettexturePrecision Property

For scalar (non-RGBA) data, specifies the size of voxel values on the GPU in bits.

Namespace: OIV.LDM.Nodes
Assembly: OIV.LDM (in OIV.LDM.dll) Version: 2023.1.3.0 (2023.1.3)
Syntax
public SoSFUShort texturePrecision { get; }

Property Value

Type: SoSFUShort
Remarks

The valid values are: 0 (default), 8 and 16. When set to 0, LDM chooses the best precision based on the size of the data type (or if specified, the number of significant bits) - meaning that LDM will store 8-bit values on the GPU for 8-bit data and store 16-bit values for all other data types.

There are several trade-offs influenced by this value, including:

  • 8 bit values use less memory on the GPU than 16-bit values, allowing more data to be stored on the GPU. 8-bit values are adequate for many visualization tasks. But...

  • If the specified (or chosen) precision is smaller than the data type, then LDM must scale down the data values before sending them to the GPU.

    • Limitation: This is currently unavoidable for 32-bit data.

    • Down scaling adds some time whenever a tile of data must be sent to the GPU.

    • In particular, all tiles currently stored on the GPU must be rescaled if the application changes the data range (OIV.LDM.Nodes.SoDataRange node). Note: As a result, changing the data range may be slow for large volumes.

    • Down scaling also means "aliasing" data values, i.e. multiple data values may scale to the same value on the GPU.

    Note Note

    Field available since Open Inventor 6.0

See Also