SoFramebufferSampler

InventorModule

genre

Shader

author

MeVis Medical Solutions AG

package

MeVisLab/Standard

dll

SoShader

definition

SoShader.def

Purpose

The module SoFramebufferSampler provides an OpenGL framebuffer object as a shading language sampler.

Details

Reads the SoMLImageElement from the Open Inventor state to adjust the OpenGL framebuffer object precision and size.

Output Fields

self

name: self, type: SoNode

Parameter Fields

Field Index

automaticTraversal: Bool

minFilter: Enum

useFormatStateHints: Bool

borderColor: Vector4

name: String

useSeparateRenderAction: Bool

clearAlpha: Float

needsTextureCoordinates: Bool

useSizeStateHints: Bool

clearColor: Color

pixelScale: Float

wrapS: Enum

colorBufferFormat: Enum

sizeMultiplier: Float

wrapT: Enum

depthBufferTarget: Enum

stencilBuffer: Bool

enableBorder: Bool

takeSnapshot: Trigger

magFilter: Enum

use16BitFloat: Bool

Hidden Fields

name

name: name, type: String

Sets the name of the sampler. Use this to reference the sampler in shaders.

enableBorder

name: enableBorder, type: Bool, default: FALSE

If checked, the border is included as part of the texture.

borderColor

name: borderColor, type: Vector4, default: 0 0 0 0

Sets the border color used to for border texture filtering. Only used if enableBorder is unchecked.

minFilter

name: minFilter, type: Enum, default: LINEAR

Defines the minification filter mode

Values:

Title

Name

Nearest

NEAREST

Linear

LINEAR

Nearest Mipmap Nearest

NEAREST_MIPMAP_NEAREST

Nearest Mipmap Linear

NEAREST_MIPMAP_LINEAR

Linear Mipmap Nearest

LINEAR_MIPMAP_NEAREST

Linear Mipmap Linear

LINEAR_MIPMAP_LINEAR

magFilter

name: magFilter, type: Enum, default: LINEAR

Defines the magnification filter mode

Values:

Title

Name

Nearest

NEAREST

Linear

LINEAR

Nearest Mipmap Nearest

NEAREST_MIPMAP_NEAREST

Nearest Mipmap Linear

NEAREST_MIPMAP_LINEAR

Linear Mipmap Nearest

LINEAR_MIPMAP_NEAREST

Linear Mipmap Linear

LINEAR_MIPMAP_LINEAR

wrapS

name: wrapS, type: Enum, default: REPEAT

Defines the wrapping mode in the s dimension.

Values:

Title

Name

Repeat

REPEAT

Clamp

CLAMP

Clamp To Edge

CLAMP_TO_EDGE

Clamp To Border

CLAMP_TO_BORDER

Mirrored Repeat

MIRRORED_REPEAT

use16BitFloat

name: use16BitFloat, type: Bool, default: TRUE

If checked, 16-bit float usage is enabled.

needsTextureCoordinates

name: needsTextureCoordinates, type: Bool, default: TRUE

If checked, Open Inventor is forced to send texture coordinates when rendering geometry.

wrapT

name: wrapT, type: Enum, default: REPEAT

Defines the wrapping mode in the t dimension.

Values:

Title

Name

Repeat

REPEAT

Clamp

CLAMP

Clamp To Edge

CLAMP_TO_EDGE

Clamp To Border

CLAMP_TO_BORDER

Mirrored Repeat

MIRRORED_REPEAT

clearColor

name: clearColor, type: Color, default: 0 0 0

Sets a clear color for the framebuffer sampler.

clearAlpha

name: clearAlpha, type: Float, default: 1

Sets a clear alpha value for the framebuffer sampler.

colorBufferFormat

name: colorBufferFormat, type: Enum, default: RGBA

Defines the internal format of color buffer.

Values:

Title

Name

Rgb

RGB

Rgb8

RGB8

Rgb16

RGB16

Rgb16f

RGB16F

Rgb32f

RGB32F

Rgba

RGBA

Rgba8

RGBA8

Rgba16

RGBA16

Rgba16f

RGBA16F

Rgba32f

RGBA32F

depthBufferTarget

name: depthBufferTarget, type: Enum, default: RENDERBUFFER

Defines the depth buffer mode.

Values:

Title

Name

None

NONE

Renderbuffer

RENDERBUFFER

Texture

TEXTURE

stencilBuffer

name: stencilBuffer, type: Bool, default: FALSE

If checked, a framebuffer for stencil values is used.

useSizeStateHints

name: useSizeStateHints, type: Bool, default: FALSE

If checked, the Open Inventor traversal state is checked for the SoMLImageElement to determine the size for the texture.

Note: The texture size is not adapted to the next power of 2.

useFormatStateHints

name: useFormatStateHints, type: Bool, default: FALSE

If checked, the Open Inventor traversal state is checked for the SoMLImageElement to determine the format (number of bits) for the texture by evaluation of the datatype.

The value of the field colorBufferFormat is used to decide between RGB and RGBA formats.

pixelScale

name: pixelScale, type: Float, default: 1

Sets the scale factor that is applied to pixel sizes and fonts in order to maintain readability on high-resolution images. If the ignore flag is set (which is the default), the previous pixel scale factor is passed on.

automaticTraversal

name: automaticTraversal, type: Bool, default: TRUE

If checked, the framebuffer is re-rendered on each rendering of the scene above.

takeSnapshot

name: takeSnapshot, type: Trigger

When pressed, an update of the framebuffer texture is triggered if automaticTraversal is unchecked.

sizeMultiplier

name: sizeMultiplier, type: Float, default: 1

Sets a multiplier value for the size of the texture.

If useSizeStateHints is checked, the texture size retrieved from SoMLImageElement is multiplied with this value in order to allow for over- or undersampling.

useSeparateRenderAction

name: useSeparateRenderAction, type: Bool, default: FALSE

If checked, a separate SoGLRenderAction is used, so the Open Inventor and GL state above the module does not affect the framebuffer scene rendering. This means that the camera and any lights above the module will no longer affect the rendering of the scene below the sampler.