MeVisLab Resolution Independence API
SoFramebufferSampler3D Class Reference

Open Inventor sampler node that gets it's 3D image from a framebuffer object. More...

#include <SoFramebufferSampler3D.h>

Inheritance diagram for SoFramebufferSampler3D:
SoFramebufferSampler SoSampler SoUniformShaderParameter SoShaderParameter

Public Member Functions

 SoFramebufferSampler3D ()
 Constructor.
 
void updatePreparation (SoState *state) override
 Render children to framebuffer object.
 
void updateParameter (SoUniformParameterBase *, SoState *) override
 Update sampler uniform to inform shader about fbo texture.
 
- Public Member Functions inherited from SoFramebufferSampler
 SoFramebufferSampler ()
 Constructor.
 
void GLRender (SoGLRenderAction *action) override
 Add node to parameter list element, and call 'updatePreparation'.
 
void getBoundingBox (SoGetBoundingBoxAction *action) override
 Compute bounding-box of subgraph.
 
void handleEvent (SoHandleEventAction *action) override
 
void renderInSeparateRenderAction ()
 Renders in an extra render action and tries to reset the GL state as far as possible to avoid that the scene below is affected by above state.
 
void updatePreparationInternal (SoGLRenderAction *action)
 Helper method to call updatePreparation.
 
- Public Member Functions inherited from SoSampler
void updateParameter (SoUniformParameterBase *uniformBase, SoState *state) override
 Assigns or updates the parameter's value.
 
- Public Member Functions inherited from SoUniformShaderParameter
void GLRender (SoGLRenderAction *action) override
 Add this node to element in state.
 
- Public Member Functions inherited from SoShaderParameter
void callback (SoCallbackAction *) override
 Shut down handling of these actions for children.
 
void GLRender (SoGLRenderAction *) override
 
void getBoundingBox (SoGetBoundingBoxAction *) override
 
void getMatrix (SoGetMatrixAction *) override
 
void handleEvent (SoHandleEventAction *) override
 
void pick (SoPickAction *) override
 

Static Public Member Functions

static void initClass ()
 Initialize class with runtime type system.
 
- Static Public Member Functions inherited from SoFramebufferSampler
static void resetFixedFunctionGLState ()
 Resets the current GL state as far as possible (but leaves FBO intact, to allow push/pop later)
 
static void initClass ()
 Initialize class with runtime type system.
 
- Static Public Member Functions inherited from SoSampler
static void initClass ()
 Initialize class with runtime type system.
 
- Static Public Member Functions inherited from SoUniformShaderParameter
static void initClass ()
 Initialize class with runtime type system.
 
- Static Public Member Functions inherited from SoShaderParameter
static void initClass ()
 Initialize class with runtime type system.
 

Public Attributes

SoSFVec3s size
 Texture size. Default is 64 x 64 x 64.
 
SoSFEnum wrapR
 Wrapping mode.
 
- Public Attributes inherited from SoFramebufferSampler
SoSFEnum colorBufferFormat
 Internal format of color buffer. Default is RGBA.
 
SoSFEnum depthBufferTarget
 Enable/Disable depth buffer. Default is TRUE.
 
SoSFBool stencilBuffer
 Enable/Disable stencil buffer. Default is FALSE.
 
SoSFColor clearColor
 Color used to clear the color buffer.
 
SoSFFloat clearAlpha
 Alpha value used to clear the color buffer.
 
SoSFEnum wrapT
 Wrapping mode.
 
SoSFBool useSizeStateHints
 Read state for size hints.
 
SoSFBool useFormatStateHints
 Read state for format hints.
 
SoSFFloat sizeMultiplier
 Size provided by size state hints is multiplied with this value.
 
SoSFFloat pixelScale
 Scale factor for pixel size.
 
SoSFBool automaticTraversal
 Automatically traverse child scene.
 
SoSFTrigger takeSnapshot
 Take a snapshot of the scene.
 
SoSFBool useSeparateRenderAction
 If enabled, a separate offscreen renderaction is used instead of the render action of the scene above the node itself.
 
- Public Attributes inherited from SoSampler
SoSFEnum wrapS
 Wrapping mode. Default is REPEAT.
 
SoSFBool enableBorder
 Enable border to be part of the texture. Default is FALSE.
 
SoSFVec4f borderColor
 Border color used to for border texture filtering. Only used if 'enableBorder' is FALSE. Default is (0, 0, 0, 0).
 
SoSFEnum minFilter
 Minification filter mode. Default is LINEAR.
 
SoSFEnum magFilter
 Magnification filter mode. Default is LINEAR.
 
SoSFBool use16BitFloat
 Use 16 Bit floating point for the texture format.
 
SoSFBool needsTextureCoordinates
 Enable this if the sampler needs the standard inventor texture coordinates.
 
- Public Attributes inherited from SoUniformShaderParameter
std::set< SbString > auxUniformParameters
 Auxiliary uniform shader parameters which are maintained by this node.
 
- Public Attributes inherited from SoShaderParameter
SoSFString name
 Name given to parameter in high level languages.
 

Protected Member Functions

 ~SoFramebufferSampler3D () override
 Destructor.
 
- Protected Member Functions inherited from SoFramebufferSampler
 ~SoFramebufferSampler () override
 Destructor.
 
virtual void applyRenderAction (SoState *)
 Function applies render action to children.
 
void nameChanged (SoField *field) override
 Called when sampler name has changed.
 
- Protected Member Functions inherited from SoSampler
 ~SoSampler () override
 
 SoSampler ()
 Constructor.
 
GLint getInternalFormat (GLenum glDataType)
 Return specialized texture format for GL data type.
 
const char * getTextureFormatName (GLenum internalFormat)
 Return texture format name.
 
SbSamplerInfo::TextureType getTextureTypeFromGLFormat (GLenum internalFormat)
 
void postTextureFormatInfo (GLenum target, GLint format)
 Prints channel depths for given target and format.
 
void postTextureSizeInfo (GLenum target)
 Prints the size of the bound texture.
 
virtual void texConfigChanged (SoField *)
 Called when texture configuration (e.g. filter mode) has changed.
 
- Protected Member Functions inherited from SoUniformShaderParameter
 SoUniformShaderParameter ()
 Constructor.
 
- Protected Member Functions inherited from SoShaderParameter
 SoShaderParameter ()
 Constructor.
 

Protected Attributes

SbVec3s _fldValSize
 
SbVec3s _size
 
- Protected Attributes inherited from SoFramebufferSampler
SbBool _fldValUseSizeHints
 
SbBool _fldValUseFormatHints
 
ColorBufferFormat _fldValColorBufferFormat
 
DepthBufferTarget _fldValDepthBufferTarget
 
SbBool _fldValStencilBuffer
 
SbBool _rebuild
 
SbBool _takeSnapshot
 
int32_t _dataFormat
 
SbString _depthTextureName
 name of the uniform ?_depth parameter
 
SoGLFramebufferObject * _framebufferObject
 
SoGLTexture * _colorBuffer
 
SoGLRenderbuffer * _depthBufferRBU
 
SoGLTexture * _depthBufferTEX
 
SoGLRenderbuffer * _stencilBuffer
 
SoResolutionIndependentViewerProxy_proxy
 
SoFramebufferSamplerOffscreenSceneRenderer * _offscreenSceneRenderer
 
- Protected Attributes inherited from SoSampler
SbBool _hasTextureFloat
 TRUE if GL_xxx_texture_float extension is present.
 
SbString _sizeUniformName
 name of the uniform ?_size parameter
 
unsigned int _textureComponents
 
GLenum _textureDataType
 

Additional Inherited Members

- Public Types inherited from SoFramebufferSampler
enum  ColorBufferFormat {
  RGB = GL_RGB , RGB8 = GL_RGB8 , RGB16 = GL_RGB16 , RGB16F = GL_RGB16F_ARB ,
  RGB32F = GL_RGB32F_ARB , RGBA = GL_RGBA , RGBA8 = GL_RGBA8 , RGBA16 = GL_RGBA16 ,
  RGBA16F = GL_RGBA16F_ARB , RGBA32F = GL_RGBA32F_ARB
}
 Internal texture format for color buffer. More...
 
enum  DepthBufferTarget { NONE = 0 , RENDERBUFFER = 1 , TEXTURE = 2 }
 Depth buffer mode. More...
 
- Public Types inherited from SoSampler
enum  TexGenMode { NORMAL_MAP = GL_NORMAL_MAP_EXT , REFLECTION_MAP = GL_REFLECTION_MAP_EXT }
 Texture gen mode. More...
 
enum  Wrap {
  REPEAT = GL_REPEAT , CLAMP = GL_CLAMP , CLAMP_TO_EDGE = GL_CLAMP_TO_EDGE , CLAMP_TO_BORDER = GL_CLAMP_TO_BORDER ,
  MIRRORED_REPEAT = GL_MIRRORED_REPEAT
}
 Texture wrap type. More...
 
enum  Filter {
  NEAREST = GL_NEAREST , LINEAR = GL_LINEAR , NEAREST_MIPMAP_NEAREST = GL_NEAREST_MIPMAP_NEAREST , NEAREST_MIPMAP_LINEAR = GL_NEAREST_MIPMAP_LINEAR ,
  LINEAR_MIPMAP_NEAREST = GL_LINEAR_MIPMAP_NEAREST , LINEAR_MIPMAP_LINEAR = GL_LINEAR_MIPMAP_LINEAR
}
 Filter methods for minification and magnification. More...
 

Detailed Description

Open Inventor sampler node that gets it's 3D image from a framebuffer object.

Open Inventor sampler node that gets it's 3D image from a framebuffer object.

Definition at line 24 of file SoFramebufferSampler3D.h.

Constructor & Destructor Documentation

◆ SoFramebufferSampler3D()

SoFramebufferSampler3D::SoFramebufferSampler3D ( )

Constructor.

◆ ~SoFramebufferSampler3D()

SoFramebufferSampler3D::~SoFramebufferSampler3D ( )
overrideprotected

Destructor.

Member Function Documentation

◆ initClass()

static void SoFramebufferSampler3D::initClass ( )
static

Initialize class with runtime type system.

◆ updateParameter()

void SoFramebufferSampler3D::updateParameter ( SoUniformParameterBase * ,
SoState *  )
overridevirtual

Update sampler uniform to inform shader about fbo texture.

Implements SoUniformShaderParameter.

◆ updatePreparation()

void SoFramebufferSampler3D::updatePreparation ( SoState * state)
overridevirtual

Render children to framebuffer object.

Reimplemented from SoUniformShaderParameter.

Member Data Documentation

◆ _fldValSize

SbVec3s SoFramebufferSampler3D::_fldValSize
protected

Definition at line 43 of file SoFramebufferSampler3D.h.

◆ _size

SbVec3s SoFramebufferSampler3D::_size
protected

Definition at line 44 of file SoFramebufferSampler3D.h.

◆ size

SoSFVec3s SoFramebufferSampler3D::size

Texture size. Default is 64 x 64 x 64.

Definition at line 33 of file SoFramebufferSampler3D.h.

◆ wrapR

SoSFEnum SoFramebufferSampler3D::wrapR

Wrapping mode.

Definition at line 36 of file SoFramebufferSampler3D.h.


The documentation for this class was generated from the following file: