SoGVRDepthPeel

InventorModule

genre

VolRend

author

MeVis Medical Solutions AG

package

MeVisLab/Standard

dll

SoGVR

definition

soGVR.def

Purpose

The SoGVRDepthPeel allows for rendering transparent geometry with correct transparency blending (without the need of sorting triangles) inside of the volume rendering of the SoGVRVolumeRenderer module. It is an image-space algorithm, so it has pixel precision and even allows intersecting transparent triangles. It works by rendering the connected scene in multiple passes and peels one RGBA layer per pass using a double depth test.

The SoGVRVolumeRenderer module is then switched into a multi-pass mode that renders the peeled layers and the volume data in an interleaved fashion. The resulting image shows transparent geometries inside of the volume rendering. In addition to this, the peeled depth layers can be used to render the volume differently inside and outside of the geometry layers. This allows for performing masking or depth clipping the volume to geometry, which may even change interactively.

This module is not yet optimized, so you will see a performance drop due to the multi-pass rendering.

Details

This module requires OpenGL 2.0 and the following OpenGL extensions:

ARB_depth_texture, EXT_framebuffer_object

Tips

The module can be used for clipping the volume against geometry as well, instead of rendering the peeled layers.

Windows

Default Panel

../../../Modules/Inventor/SoGVR/mhelp/Images/Screenshots/SoGVRDepthPeel._default.png

Input Fields

The node accepts any number of Open Inventor inputs and renders the scene below using depth peeling.

Output Fields

self

name: self, type: SoNode

A node that should be put in front of the SoGVRVolumeRenderer

Parameter Fields

Field Index

boundingBoxCaching: Enum

opaqueBackgroundPass: Bool

simulatedAlpha: Float

debugLayers: Integer

Outside Alpha: Float

Supports Depth Peeling: Bool

Draw Layers: Bool

Outside Color: Color

Tag Mode: Enum

Enabled: Bool

Outside Tag Value: Integer

useStencilBuffer: Bool

Inside Alpha: Float

pickCulling: Enum

Inside Color: Color

renderCaching: Enum

Inside Tag Value: Integer

renderCulling: Enum

Layers: Integer

sceneDepthCompare: Bool

Visible Fields

Supports Depth Peeling

name: supportsDepthPeeling, type: Bool, persistent: no, deprecated name: supportsFBO

Shows whether depth peeling is supported.

Layers

name: layers, type: Integer, default: 4, minimum: 1, maximum: 8

Sets how many layers should be peeled.

Enabled

name: modifyRGBA, type: Bool, default: TRUE

If checked, modification of the color/alpha of the volume depending on the geometry is enabled.

Draw Layers

name: drawLayers, type: Bool, default: TRUE

If checked, the drawing of the geometry layers is enabled.

Inside Alpha

name: insideAlpha, type: Float, default: 1, minimum: 0, maximum: 1

Sets the alpha factor inside of the geometry.

Outside Alpha

name: outsideAlpha, type: Float, default: 0, minimum: 0, maximum: 1

Sets the alpha factor outside of the geometry.

Inside Color

name: insideColor, type: Color, default: 1 1 1

Sets the color factor inside of the geometry.

Outside Color

name: outsideColor, type: Color, default: 1 1 1

Sets the color outside of the geometry.

Inside Tag Value

name: insideTagValue, type: Integer, default: 1

Sets the tag volume inside of the geometry.

Outside Tag Value

name: outsideTagValue, type: Integer, default: 0

Sets the tag value outside of the geometry.

Tag Mode

name: tagMode, type: Enum, default: Off

Defines how the depth peeling influences the tag value.

Values:

Title

Name

Description

​Set As Tag Value

​SetAsTagValue

​Set the tag value via Outside Tag Value and Inside Tag Value when outside/inside the geometry.

​Off

​Off

​Do not change the tag value.

Hidden Fields

renderCaching

name: renderCaching, type: Enum, default: AUTO

Values:

Title

Name

​On

​ON

​Off

​OFF

​Auto

​AUTO

boundingBoxCaching

name: boundingBoxCaching, type: Enum, default: AUTO

Values:

Title

Name

​On

​ON

​Off

​OFF

​Auto

​AUTO

renderCulling

name: renderCulling, type: Enum, default: AUTO

Values:

Title

Name

​On

​ON

​Off

​OFF

​Auto

​AUTO

pickCulling

name: pickCulling, type: Enum, default: AUTO

Values:

Title

Name

​On

​ON

​Off

​OFF

​Auto

​AUTO

useStencilBuffer

name: useStencilBuffer, type: Bool, default: FALSE

simulatedAlpha

name: simulatedAlpha, type: Float, default: 1

opaqueBackgroundPass

name: opaqueBackgroundPass, type: Bool, default: TRUE

sceneDepthCompare

name: sceneDepthCompare, type: Bool, default: FALSE

debugLayers

name: debugLayers, type: Integer, default: 0