SoGVRIlluminationSettings
-
InventorModule
-
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 OpenInventor 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
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
Parameter Fields
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.
Enabled (toneShading)
-
name: toneShading, type: Bool, default: FALSE
enables tone shading
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
Tone Shading 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.
Enabled (light1Enabled)
-
name: light1Enabled, type: Bool, default: TRUE
enables light1
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.
Color (light1Color)
-
name: light1Color, type: Color, default: 1 1 1
color of light1
Light1Polar Phi
-
name: light1PolarPhi, type: Float, default: 0, minimum: -180, maximum: 180
Defines the light angle.
Light1Polar Rho
-
name: light1PolarRho, type: Float, default: 0, minimum: -180, maximum: 180
Defines the light angle.
Enabled (light2Enabled)
-
name: light2Enabled, type: Bool, default: FALSE
enables light2
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.
Color (light2Color)
-
name: light2Color, type: Color, default: 1 1 1
color of light2
Light2Polar Phi
-
name: light2PolarPhi, type: Float, default: 45, minimum: -180, maximum: 180
Defines the light angle.
Light2Polar Rho
-
name: light2PolarRho, type: Float, default: 45, minimum: -180, maximum: 180
Defines the light angle.
Enabled (light3Enabled)
-
name: light3Enabled, type: Bool, default: FALSE
enables light3
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.
Color (light3Color)
-
name: light3Color, type: Color, default: 1 1 1
color of light3
Light3Polar Phi
-
name: light3PolarPhi, type: Float, default: -45, minimum: -180, maximum: 180
Defines the light angle.
Light3Polar Rho
-
name: light3PolarRho, type: Float, default: 0, minimum: -180, maximum: 180
Defines the light angle.
Render Mode
-
name: renderMode, type: Enum, default: Illuminated, deprecated name: gvrRenderMode
Sets the used render mode.
Values:
| Title |
Name |
Deprecated Name |
Description |
| Direct |
Direct |
|
Direct Volume Rendering |
| Illuminated |
Illuminated |
Surface |
Illuminated/Shaded Volume Rendering (see Illumination tab). |
| Mip |
MIP |
|
|
Blend Mode
-
name: blendMode, type: Enum, default: Blend, deprecated name: gvrBlendMode
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 |