Workspace 6.21.5
VolumeShaderBuilder

Creates a VolumeShader; a shader that uses a ray-casting technique to display 3D volume datasets. The VolumeShader will only function correctly if it is applied to a MeshModelInstance representing a 3D box - more complex geometry is not supported.

  • Default label: "VolumeShader Builder"
  • Member of plug-in: Rendering
  • Catalogue path: Scene/Shaders
Inputs:
Volume dataCSIRO::DataAnalysis::Array3dScalarThe VolumeData to display.
Number of samplesintThe number of times each ray (cast through each pixel) should sample the dataset. A higher number of samples will result in a better quality image, at the cost of performance. The suggested value is at least half the dimensionality of the dataset (e.g. for a 256^3 dataset, samples should be at least 128.
Enable stochastic jitteringboolIf enabled, each ray cast by the shader will have its initial position offset by a random amount. This helps to remove "woodgrain" artifacts caused by under-sampling of the data.
Enable lightingbool

Interpolationbool

Alpha thresholddoubleMinimum alpha value of samples required. When samples evaluate to an alpha value lower than this, they will not contribute to the shaded result. Be aware that for higher sample rates, a lower value for this may be required, as alpha contributions of individual samples will decrease.
Transfer functionCSIRO::DataAnalysis::TransferFunction2dThe TransferFunction controls how the scalar sampled values are converted into colors. The 2D transfer function allows both the value of each sample to be taken into account, as well as the gradient of the sample relative to its neighbours.
Limit the data to boundsboolIf set to true (checked), values in the input data ("Volume data") will be limited to lie within the bounds specified by inputs "Lower bound" and "Upper bound". Any values less than "Lower bound" will be treated as if they have the value specified by "Lower bound", and similarly any values greater than "Upper bound" will be treated as if they have the value specified by "Upper bound".
Lower bounddouble

Upper bounddouble

Outputs:
ShaderCSIRO::Rendering::VolumeShader