MeVisLabToolboxReference
|
Open Inventor shader program node. More...
#include <SoShaderProgram.h>
Public Types | |
enum | GeometryInputType { POINTS_INPUT, LINES_INPUT, LINES_ADJACENCY_INPUT, TRIANGLES_INPUT, TRIANGLES_ADJACENCY_INPUT } |
enum | GeometryOutputType { POINTS_OUTPUT, LINE_STRIP_OUTPUT, TRIANGLE_STRIP_OUTPUT } |
Public Member Functions | |
SoShaderProgram () | |
Constructor. | |
virtual void | GLRender (SoGLRenderAction *action) |
Implements rendering. | |
Static Public Member Functions | |
static void | initClass () |
Initialize class with runtime type system. | |
Public Attributes | |
SoMFShaderObject | shaderObject |
Collects all vertex and fragment shaders. | |
SoMFUniformShaderParameter | parameter |
Collects all shader parameters. | |
SoSFEnum | geometryInputType |
Kind of primitives the geometry shader will accept as input. | |
SoSFEnum | geometryOutputType |
Kind of primitives the geometry shader will output. | |
SoSFInt32 | maxEmittedGeometryVertices |
Maximum number of points the geometry shader will emit. | |
Protected Member Functions | |
virtual | ~SoShaderProgram () |
Destructor. | |
void | setup () |
Initial setup of shader program. | |
SbBool | isValidShaderObjects () const |
Returns 'TRUE' if all shader objects are valid. | |
void | adaptParametersList (const SbPList &nextParameters) |
void | adaptShadersList (SbPList &prevShaders, const SbPList &nextShaders) |
void | scheduleShaderObjectRebuild () |
void | injectSnippets () |
void | updateOIVStateDependentParameters (SoState *state) |
Assigns Open Inventor state to some predefined uniform parameters. | |
Protected Attributes | |
SoGLShaderProgram * | _glShaderProgram |
SbPList | _usedShaderParameters |
Shader parameters known via element. |
Open Inventor shader program node.
Definition at line 27 of file SoShaderProgram.h.
POINTS_INPUT | |
LINES_INPUT | |
LINES_ADJACENCY_INPUT | |
TRIANGLES_INPUT | |
TRIANGLES_ADJACENCY_INPUT |
Definition at line 35 of file SoShaderProgram.h.
Definition at line 42 of file SoShaderProgram.h.
SoShaderProgram::SoShaderProgram | ( | ) |
Constructor.
virtual SoShaderProgram::~SoShaderProgram | ( | ) | [protected, virtual] |
Destructor.
void SoShaderProgram::adaptParametersList | ( | const SbPList & | nextParameters | ) | [protected] |
void SoShaderProgram::adaptShadersList | ( | SbPList & | prevShaders, |
const SbPList & | nextShaders | ||
) | [protected] |
virtual void SoShaderProgram::GLRender | ( | SoGLRenderAction * | action | ) | [virtual] |
Implements rendering.
static void SoShaderProgram::initClass | ( | ) | [static] |
Initialize class with runtime type system.
void SoShaderProgram::injectSnippets | ( | ) | [protected] |
SbBool SoShaderProgram::isValidShaderObjects | ( | ) | const [protected] |
Returns 'TRUE' if all shader objects are valid.
void SoShaderProgram::scheduleShaderObjectRebuild | ( | ) | [protected] |
void SoShaderProgram::setup | ( | ) | [protected] |
Initial setup of shader program.
void SoShaderProgram::updateOIVStateDependentParameters | ( | SoState * | state | ) | [protected] |
Assigns Open Inventor state to some predefined uniform parameters.
Currently supported state depended uniforms are:
SoGLShaderProgram* SoShaderProgram::_glShaderProgram [protected] |
Definition at line 78 of file SoShaderProgram.h.
SbPList SoShaderProgram::_usedShaderParameters [protected] |
Shader parameters known via element.
Definition at line 81 of file SoShaderProgram.h.
SoSFEnum SoShaderProgram::geometryInputType |
Kind of primitives the geometry shader will accept as input.
Definition at line 55 of file SoShaderProgram.h.
SoSFEnum SoShaderProgram::geometryOutputType |
Kind of primitives the geometry shader will output.
Definition at line 58 of file SoShaderProgram.h.
Maximum number of points the geometry shader will emit.
Definition at line 61 of file SoShaderProgram.h.
Collects all shader parameters.
Definition at line 52 of file SoShaderProgram.h.
Collects all vertex and fragment shaders.
Definition at line 49 of file SoShaderProgram.h.