public class SoVolumeRenderingPhysicalQuality extends SoNode
SoVolumeRenderingQuality
node, in the sense that it causes subsequent SoVolumeRender
nodes to be drawn with different rendering effects and/or levels of quality, the difference being that the SoVolumeRenderingQuality
fields are not exposed in this node and are internally pre-selected to provide the highest possible quality:
The SoVolumeRenderingQuality
fields that are internally activated are:
SoVolumeRenderingQuality.preIntegrated
= true
SoVolumeRenderingQuality.ambientOcclusion
= true
SoVolumeRenderingQuality.deferredLighting
= true
The presence of this node in the scenegraph also forces subsequent SoVolumeRender
nodes to be drawn with SoVolumeRender.samplingAlignment
set to SoVolumeRender.BOUNDARY_ALIGNED
.
Note that, unlike SoVolumeRenderingQuality
, this node does not support customization of VolumeViz shaders.
The fields exposed in this node provide control over effects that are not present in the SoVolumeRenderingQuality
node. These effects include:
The Physically Based Lighting effect provides lighting using an advanced BRDF model. It can be seen as an enhanced version of the regular deferred lighting. In particular, it shows the same behavior regarding the current SoMaterial
on the state and has the same limitations. See SoVolumeRenderingQuality.deferredLighting
for a detailed list of limitations. In addition to regular deferred lighting, this effect supports HDR environment mapping and several cubemap textures are provided (see environmentMap
). The field toneMapping
is provided to select the Tone Mapping algorithm used to remap HDR values to low range values. A predefined material that will be applied to the shape can also be selected using the field predefinedMaterial
. Any material set between this node and the SoVolumeRender
node in the scenegraph will override this predefined material. Note that, just like with regular deferred lighting, the material properties will affect the lighting, and the SoMaterial.diffuseColor
will be mixed with the voxel colors using a component-wise multiplication. Finally, the field shadingStyle
allows to switch between this type of lighting and regular deferred lighting.
The Ray-Traced Shadows effect computes shadows inside the volume using a ray-marching based algorithm. This effect is activated and parameterized just like regular shadows using the SoShadowGroup
node. The SoShadowGroup
fields taken into account for this effect are SoShadowGroup.isActive
, SoShadowGroup.intensity
and SoShadowGroup.quality
. This type of shadows supports SoROI
clipping, but does not support SoClipPlane
, SoVolumeClippingGroup
, SoUniformGridClipping
or SoUniformGridProjectionClipping
. Note that this effect has a huge impact on performance. The field shadowsStyle
allows to switch between this type of shadows and regular shadows.
Depth Of Field is a "cinematic" effect that adds blur on regions far from the focal point of the camera. The focal point is typically the center of the scene bounding box, causing regions close to the camera and far from the camera to be blurred. The focal point is specified by the field SoCamera.focalDistance
of the current camera. Only SoVolumeRender
nodes are affected by the blurring. The field enableDepthOfField
is used to switch it on and off, while the blurFactor
field controls the amount of blur induced by this effect.
File format/default:
VolumeRenderingPhysicalQuality {
shadowsStyle | RAYTRACED |
shadingStyle | PHYSICALLY_BASED |
predefinedMaterial | SEMI_GLOSSY |
environmentMap | UFFIZI |
toneMapping | MEDIUM |
enableDepthOfField | true |
blurFactor | 0.01 |
See also:
SoVolumeRenderingQuality
, SoShadowGroup
Modifier and Type | Class and Description |
---|---|
static class |
SoVolumeRenderingPhysicalQuality.EnvironmentMaps
List of available Environment Maps for Physically Based Lighting.
|
static class |
SoVolumeRenderingPhysicalQuality.PredefinedMaterials
List of available predefined materials.
|
static class |
SoVolumeRenderingPhysicalQuality.ShadingStyles
List of available shading styles.
|
static class |
SoVolumeRenderingPhysicalQuality.ShadowsStyles
List of available types of shadows.
|
static class |
SoVolumeRenderingPhysicalQuality.ToneMappings
List of available Tone Mapping algorithms for Physically Based Lighting.
|
Inventor.ConstructorCommand
Modifier and Type | Field and Description |
---|---|
SoSFFloat |
blurFactor
This value controls the intensity of the blurring for the Depth Of Field effect.
|
static int |
CUSTOM_MATERIAL
Deprecated.
|
SoSFBool |
enableDepthOfField
Enables a 'Depth of Field' effect on the volume.
|
SoSFEnum<SoVolumeRenderingPhysicalQuality.EnvironmentMaps> |
environmentMap
Specifies which Environment map is used.
|
static int |
GLOSSY
Deprecated.
|
static int |
GRACE
Deprecated.
|
static int |
GROVE
Deprecated.
|
static int |
HIGH_CONTRAST
Deprecated.
|
static int |
MATTE
Deprecated.
|
static int |
MEDIUM
Deprecated.
Use
SoVolumeRenderingPhysicalQuality.ToneMappings.MEDIUM instead. |
static int |
NO_ENVIRONMENT
Deprecated.
|
static int |
PALE
Deprecated.
Use
SoVolumeRenderingPhysicalQuality.ToneMappings.PALE instead. |
static int |
PHONG
Deprecated.
Use
SoVolumeRenderingPhysicalQuality.ShadingStyles.PHONG instead. |
static int |
PHYSICALLY_BASED
Deprecated.
|
SoSFEnum<SoVolumeRenderingPhysicalQuality.PredefinedMaterials> |
predefinedMaterial
Specifies a material from a list of predefined ones.
|
static int |
RAYTRACED
Deprecated.
|
static int |
SEMI_GLOSSY
Deprecated.
|
SoSFEnum<SoVolumeRenderingPhysicalQuality.ShadingStyles> |
shadingStyle
Specifies which shading style is applied to the volume.
|
static int |
SHADOWMAP
Deprecated.
|
SoSFEnum<SoVolumeRenderingPhysicalQuality.ShadowsStyles> |
shadowsStyle
Specifies which kind of shadows to compute for the volume.
|
static int |
SKY
Deprecated.
Use
SoVolumeRenderingPhysicalQuality.EnvironmentMaps.SKY instead. |
static int |
STLAZARUS
Deprecated.
|
static int |
STPETER
Deprecated.
|
SoSFEnum<SoVolumeRenderingPhysicalQuality.ToneMappings> |
toneMapping
Specifies which tone mapping algorithm to apply.
|
static int |
UFFIZI
Deprecated.
|
VERBOSE_LEVEL, ZeroHandle
Constructor and Description |
---|
SoVolumeRenderingPhysicalQuality() |
affectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderUnitID, GLRender, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, search, setOverride, touch, write
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaults
dispose, getEXTERNPROTO, getName, getPROTO, isDisposable, isSynchronizable, setName, setSynchronizable
getAddress, getNativeResourceHandle, startInternalThreads, stopInternalThreads
@Deprecated public static final int SHADOWMAP
SoVolumeRenderingPhysicalQuality.ShadowsStyles.SHADOWMAP
instead.@Deprecated public static final int RAYTRACED
SoVolumeRenderingPhysicalQuality.ShadowsStyles.RAYTRACED
instead.@Deprecated public static final int PHONG
SoVolumeRenderingPhysicalQuality.ShadingStyles.PHONG
instead.@Deprecated public static final int PHYSICALLY_BASED
SoVolumeRenderingPhysicalQuality.ShadingStyles.PHYSICALLY_BASED
instead.@Deprecated public static final int SKY
SoVolumeRenderingPhysicalQuality.EnvironmentMaps.SKY
instead.@Deprecated public static final int GROVE
SoVolumeRenderingPhysicalQuality.EnvironmentMaps.GROVE
instead.@Deprecated public static final int STPETER
SoVolumeRenderingPhysicalQuality.EnvironmentMaps.STPETER
instead.@Deprecated public static final int GRACE
SoVolumeRenderingPhysicalQuality.EnvironmentMaps.GRACE
instead.@Deprecated public static final int UFFIZI
SoVolumeRenderingPhysicalQuality.EnvironmentMaps.UFFIZI
instead.@Deprecated public static final int STLAZARUS
SoVolumeRenderingPhysicalQuality.EnvironmentMaps.STLAZARUS
instead.@Deprecated public static final int NO_ENVIRONMENT
SoVolumeRenderingPhysicalQuality.EnvironmentMaps.NO_ENVIRONMENT
instead.@Deprecated public static final int PALE
SoVolumeRenderingPhysicalQuality.ToneMappings.PALE
instead.@Deprecated public static final int MEDIUM
SoVolumeRenderingPhysicalQuality.ToneMappings.MEDIUM
instead.@Deprecated public static final int HIGH_CONTRAST
SoVolumeRenderingPhysicalQuality.ToneMappings.HIGH_CONTRAST
instead.@Deprecated public static final int MATTE
SoVolumeRenderingPhysicalQuality.PredefinedMaterials.MATTE
instead.@Deprecated public static final int SEMI_GLOSSY
SoVolumeRenderingPhysicalQuality.PredefinedMaterials.SEMI_GLOSSY
instead.@Deprecated public static final int GLOSSY
SoVolumeRenderingPhysicalQuality.PredefinedMaterials.GLOSSY
instead.@Deprecated public static final int CUSTOM_MATERIAL
SoVolumeRenderingPhysicalQuality.PredefinedMaterials.CUSTOM_MATERIAL
instead.public final SoSFEnum<SoVolumeRenderingPhysicalQuality.ShadowsStyles> shadowsStyle
SoVolumeRender
node is inside a SoShadowGroup
and the field SoShadowGroup.isActive
is set to true. . Default is RAYTRACED
.public final SoSFEnum<SoVolumeRenderingPhysicalQuality.ShadingStyles> shadingStyle
PHYSICALLY_BASED
.public final SoSFEnum<SoVolumeRenderingPhysicalQuality.PredefinedMaterials> predefinedMaterial
shadingStyle
is set to PHYSICALLY_BASED
. The selected material will be applied on the object. The environment map and tone mapping algorithm are part of the predefined material properties. The value CUSTOM_MATERIAL
can also be selected, in which case the properties of the applied material will be retrieved from the current material on the state. . Default is SEMI_GLOSSY
.public final SoSFEnum<SoVolumeRenderingPhysicalQuality.EnvironmentMaps> environmentMap
shadingStyle
is set to PHYSICALLY_BASED
and if predefinedMaterial
is set to CUSTOM_MATERIAL
. The available environment maps are HDR cubemap textures that will be used to display reflexions of the environment on the object. This behaviour can be disabled by selecting the NO_ENVIRONMENT
field value. . Default is UFFIZI
.public final SoSFEnum<SoVolumeRenderingPhysicalQuality.ToneMappings> toneMapping
shadingStyle
is set to PHYSICALLY_BASED
and if predefinedMaterial
is set to CUSTOM_MATERIAL
. . Default is MEDIUM
.public final SoSFBool enableDepthOfField
The focal point is controlled by the field SoCamera.focalDistance
of the current camera. Only VolumeRender nodes are affected by the blurring. The amount of blurring applied is controlled by the blurFactor
field. Default is true.
public final SoSFFloat blurFactor
Generated on January 23, 2025, Copyright © Thermo Fisher Scientific. All rights reserved. http://www.openinventor.com