Class SoShaderStateMatrixParameter

All Implemented Interfaces:
SafeDisposable

public class SoShaderStateMatrixParameter extends SoUniformShaderParameter
Uniform shader parameter node storing an OpenGL state matrix. This node allows the application to provide a uniform parameter of type OpenGL state matrix to a shader object, e.g. SoFragmentShader.

Uniform shader parameter nodes are usually added to the shader object's parameter field to affect only that specific shader program, but can also be inserted in the scene graph and affect all subsequent shader programs.

See the base classes SoShaderParameter and SoUniformShaderParameter for details.

This parameter should be only used with NVIDIA Cg (has no effect otherwise) and only if the profile is neither arbvp1 nor arbfp1. With either of the profiles arbvp1 and arbfp1, the OpenGL state matrix is directly accessible from the variable glstate.matrix.

NOTE: Using this parameter may slow down the rendering process because each SoTransform node in the scene graph below the SoShaderProgram will break the render cache.

File format/default:

ShaderStateMatrixParameter {

    name ""
    identifier 0
    matrixType MODELVIEW
    matrixTransform 1 0 0 0
    0 1 0 0
    0 0 1 0
    0 0 0 1
    shaderType VERTEX
}

See Also: