SoShaderProgram

InventorModule
genre Shader
status stable
author Felix Ritter
package MeVisLab/Standard
dll SoShader
definition SoShader.def
keywords vertex, fragment, geometry, shader

Purpose

Links all vertex, geometry, and fragment shaders encountered so far. Determines all active uniform parameters and uses the shader parameter modules to update the uniforms before the OpenGL shading language program is run. Allows to setup the geometry shader state for the shader program.

Details

Provides the following additional uniform parameters:

  • vec4 oiv_ViewPosition - the first three components specify the viewpoint position, the fourth component is 0 for orthographic projection or 1 for perspective projection
  • ivec2 oiv_ViewportSize - contains the current viewport size as determined from the Open Inventor state
  • vec4 oiv_DiffuseColor - contains the current diffuse color and alpha value (1-transparency)
  • int oiv_NumEnabledLights - provides the number of currently active OpenGL lights

Output Fields

self

name: self, type: SoNode

Parameter Fields

Visible Fields

Geometry Input Type

name: geometryInputType, type: Enum, default: TRIANGLES_INPUT

Values:

Title Name
Points Input POINTS_INPUT
Lines Input LINES_INPUT
Triangles Input TRIANGLES_INPUT

Geometry Output Type

name: geometryOutputType, type: Enum, default: TRIANGLE_STRIP_OUTPUT

Values:

Title Name
Points Output POINTS_OUTPUT
Line Strip Output LINE_STRIP_OUTPUT
Triangle Strip Output TRIANGLE_STRIP_OUTPUT

Max Emitted Geometry Vertices

name: maxEmittedGeometryVertices, type: Integer, default: 8

Hidden Fields

shaderObject

name: shaderObject, type: String, default: [ ]

parameter

name: parameter, type: String, default: [ ]