SoGVRIlluminationSettings¶
-
InventorModule
¶ genre VolRendExtensions
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll SoGVR
definition soGVR.def see also SoGVRVolumeRenderer
Purpose¶
The SoGVRIlluminationSettings
module allows to overwrite the settings for the Illuminated render mode of the SoGVRVolumeRenderer
module. The same fields are also available in the SoGVRVolumeRenderer
panel (see “Illumination”) and are documented on this help page as well.
This module can also override the blend mode and the render mode. Using this module, the same renderer can use various render settings in different Open Inventor scenes.
Usage¶
The SoGVRIlluminationSettings module allows to overwrite the settings for the Illuminated render mode of the SoGVRVolRen module. The same fields are also available in the SoGVRVolRen panel (see “Illumination”) and are documented on this help page as well.
The Illuminated mode is an advanced render mode that allows to set the following shading/lighting properties:
- 1-3 colored directional lights (using Blinn-Phong lighting)
- Tone Shading
- Boundary Enhancement
- Silhouette Enhancement
The Illuminated mode supports an additional SoGVRTagVolume and an additional SoGVRMaskVolume.
Details¶
The Illuminated mode is a render mode that allows to set the following shading/lighting properties:
- 1-3 colored directional lights (using Blinn-Phong lighting)
- Tone Shading
- Boundary Enhancement
- Silhouette Enhancement
Tips¶
When multiple lights or tone shading are enabled and you image gets too bright, set the Ambient
field to a lower value! See the example network for useful shader settings.
Windows¶
Default Panel¶
Material (affects all 3 lights)¶
- Ambient:
- defines the ambient material property of the volume data (0 means no ambient light, 1 means full ambient light)
- Diffuse:
- defines the diffuse material property of the volume data (0 means no diffuse light, 1 mean full diffuse light)
- Specular:
- defines the specular material property of the volume data (0 means no specular light, 1 means full specular light)
- Specularity:
- defines the specularity of the object, a higher value leads to a smaller highlight
Light 1-3¶
For detail on the Blinn/Phong lighting model, see http://www.lighthouse3d.com/opengl/glsl/index.php?ogldir2
- Enabled:
- enables the directional light
- Diffuse Intensity:
- sets this light’s diffuse intensity, 0 means no diffuse light
- Specular Intensity:
- sets this light’s specular intensity, 0 means no specular highlights
- Color:
- sets the color of the light
- Azimuth, Altitude:
- sets the position of the light in polar coordinates, 0/0 is front facing headlight
Tone Shading¶
For details on tone shading, see http://www.cs.utah.edu/~gooch/SIG98/abstract.html This model is based on using warm and cold colors for illumination and allows nice coloring of renderings of e.g. Bones, Vessels etc.
- Enabled:
- enables tone shading
- Warm/Cold Color:
- defines the color used as warm/cold color
- Warm/Cold Diffuse:
- defines how much diffuse light should be applied
- Angle:
- defines the angle of the tone shading, rotates around the viewing direction
Enhancement¶
The GVR supports gradient based enhancement as described in http://www.cs.umbc.edu/~rheingan/pubs/volillus00.pdf
Boundary Enhancement¶
This mode is based on the gradient strenght (normalized to 0-1) and affects the opacity/alpha values of the rendered voxel by weighting with the gradient strenght.
- Enabled:
- enables boundary enhancement
- Weight:
- defines the weight factor that is applied
- Exponent:
- defines the exponent that is applied
- Bias:
- defines the gradient strength bias
The enhancement is calculated like this:
alpha = alpha * weight * pow( gradientStrength + bias, exponent)
Silhouette Enhancement¶
This mode also affects the opacity of voxels by weighting them with the angle between the voxel gradient and the viewing direction. This makes voxels that face the viewer transparent, while making voxels that are perpendicular to the viewer opaque, see above paper for the used formula.
- Enabled:
- enables sihouette enhancement
- Weight:
- defines the weight factor that is applied
- Exponent:
- defines the exponent that is applied
For both modes:
- Add Original Alpha:
- defines how much of the original alpha is added to the alpha value after enhancement
Output Fields¶
self¶
-
name:
self
, type:
SoNode
¶ a node that should be put in front of the
SoGVRVolumeRenderer
Parameter Fields¶
Field Index¶
Visible Fields¶
Enabled (enabled)¶
-
name:
enabled
, type:
Bool
, default:
TRUE
¶ Enables the settings given in this module.
Add Original Alpha¶
-
name:
enhancementAlphaMix
, type:
Float
, default:
0.25
, minimum:
0
, maximum:
1
¶ defines how much of the original alpha is mixed to the enhancement
Enabled (boundaryEnhancement)¶
-
name:
boundaryEnhancement
, type:
Bool
, default:
FALSE
¶ Enables boundary enhancement
Weight (boundaryEnhancementFactor)¶
-
name:
boundaryEnhancementFactor
, type:
Float
, default:
1
, minimum:
0
, maximum:
50
¶ Defines the weight for the boundary enhancement.
Exponent (boundaryEnhancementExponent)¶
-
name:
boundaryEnhancementExponent
, type:
Float
, default:
1
, minimum:
0.1
, maximum:
50
¶ defines the boundary enhancement exponent
Bias¶
-
name:
boundaryEnhancementGradientBias
, type:
Float
, default:
0
, minimum:
-1
, maximum:
1
¶ defines the bias for boundary enhancement
Enabled (silhouetteEnhancement)¶
-
name:
silhouetteEnhancement
, type:
Bool
, default:
FALSE
¶ enables silhouetteEnhancement
Exponent (silhouetteEnhancementExponent)¶
-
name:
silhouetteEnhancementExponent
, type:
Float
, default:
1
, minimum:
0.1
, maximum:
50
¶ defines the silhouetteEnhancementExponent
Weight (silhouetteEnhancementFactor)¶
-
name:
silhouetteEnhancementFactor
, type:
Float
, default:
1
, minimum:
0
, maximum:
20
¶ Defines the weight for the silhouette enhancement.
Warm Color¶
-
name:
toneShadingWarmColor
, type:
Color
, default:
0.674509823322296 0.533333361148834 0.141176477074623
¶ Defines the warm color of the tone shading.
Cold Color¶
-
name:
toneShadingColdColor
, type:
Color
, default:
0 0 0.400000005960464
¶ cold color of tone shading
Warm Diffuse¶
-
name:
toneShadingWarmDiffuse
, type:
Float
, default:
0.60000002
, minimum:
0
, maximum:
1
¶ Defines the warm diffuse factor of the tone shading
Cold Diffuse¶
-
name:
toneShadingColdDiffuse
, type:
Float
, default:
0.2
, minimum:
0
, maximum:
1
¶ diffuse light of cold color
Angle¶
-
name:
toneShadingAngle
, type:
Float
, default:
45
, minimum:
-180
, maximum:
180
¶ Defines the angle of the tone shading.
Ambient¶
-
name:
materialAmbient
, type:
Float
, default:
0.60000002
, minimum:
0
, maximum:
1
¶ defines the ambient light
Diffuse¶
-
name:
materialDiffuse
, type:
Float
, default:
1
, minimum:
0
, maximum:
1
¶ overall diffuse factor for all lights
Specular¶
-
name:
materialSpecular
, type:
Float
, default:
1
, minimum:
0
, maximum:
1
¶ Defines the overall specular intensity for all lights.
Specularity¶
-
name:
materialSpecularity
, type:
Float
, default:
32
, minimum:
1
, maximum:
128
¶ Defines the specularity exponent of the lights.
Reduce Lighting On Low Gradient Magnitude¶
-
name:
reduceLightingOnLowGradientMagnitude
, type:
Bool
, default:
FALSE
¶ Reduces the lighting on low gradient magnitudes.
Diffuse Intensity (light1DiffuseIntensity)¶
-
name:
light1DiffuseIntensity
, type:
Float
, default:
1
, minimum:
0
, maximum:
1
¶ diffuse intensity of light1
Specular Intensity (light1SpecularIntensity)¶
-
name:
light1SpecularIntensity
, type:
Float
, default:
1
, minimum:
0
, maximum:
1
¶ Defines the specular intensity for light1.
Azimuth (light1PolarPhi)¶
-
name:
light1PolarPhi
, type:
Float
, default:
0
, minimum:
-180
, maximum:
180
¶ Defines the light angle.
Altitude (light1PolarRho)¶
-
name:
light1PolarRho
, type:
Float
, default:
0
, minimum:
-180
, maximum:
180
¶ Defines the light angle.
Diffuse Intensity (light2DiffuseIntensity)¶
-
name:
light2DiffuseIntensity
, type:
Float
, default:
1
, minimum:
0
, maximum:
1
¶ diffuse intensity of light2
Specular Intensity (light2SpecularIntensity)¶
-
name:
light2SpecularIntensity
, type:
Float
, default:
1
, minimum:
0
, maximum:
1
¶ Defines the specular intensity for light2.
Azimuth (light2PolarPhi)¶
-
name:
light2PolarPhi
, type:
Float
, default:
45
, minimum:
-180
, maximum:
180
¶ Defines the light angle.
Altitude (light2PolarRho)¶
-
name:
light2PolarRho
, type:
Float
, default:
45
, minimum:
-180
, maximum:
180
¶ Defines the light angle.
Diffuse Intensity (light3DiffuseIntensity)¶
-
name:
light3DiffuseIntensity
, type:
Float
, default:
1
, minimum:
0
, maximum:
1
¶ diffuse intensity of light3
Specular Intensity (light3SpecularIntensity)¶
-
name:
light3SpecularIntensity
, type:
Float
, default:
1
, minimum:
0
, maximum:
1
¶ Defines the specular intensity for light3.
Azimuth (light3PolarPhi)¶
-
name:
light3PolarPhi
, type:
Float
, default:
-45
, minimum:
-180
, maximum:
180
¶ Defines the light angle.
Altitude (light3PolarRho)¶
-
name:
light3PolarRho
, type:
Float
, default:
0
, minimum:
-180
, maximum:
180
¶ Defines the light angle.
Render Mode¶
-
name:
renderMode
, type:
Enum
, default:
Illuminated
¶ Sets the used render mode.
Values:
Title | Name | Description |
---|---|---|
Direct | Direct | Direct Volume Rendering |
Illuminated | Illuminated | Illuminated/Shaded Volume Rendering (see Illumination tab). |
Mip | MIP |
Blend Mode¶
-
name:
blendMode
, type:
Enum
, default:
Blend
¶ selects the blend mode that is used
Values:
Title | Name | Description |
---|---|---|
Blend | Blend | Blending (c = (1-alpha)*c1 + (alpha)*c2) |
Add | Add | Add (c = c1 + c2) |
Mip | MIP | MIP (maximum intensity projection) |
Min IP | MinIP | MinIP (minimum intensity projection) Keep in mind that you will need a white background to correctly render in this blend mode! |
Reverse Subtract | ReverseSubtract | ReverseSubtract |
Subtract | Subtract | Substract |