logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

glGetSubroutineIndex - retrieve the index of a subroutine uniform of a given shader stage within a

C Specification

GLuintglGetSubroutineIndex(GLuintprogram,GLenumshadertype,constGLchar*name);

Description

glGetSubroutineIndex returns the index of a subroutine uniform within a shader stage attached to a
       program object.  program contains the name of the program to which the shader is attached.  shadertype
       specifies the stage from which to query shader subroutine index.  name contains the null-terminated name
       of the subroutine uniform whose name to query.

       If name is not the name of a subroutine uniform in the shader stage, GL_INVALID_INDEX is returned, but no
       error is generated. If name is the name of a subroutine uniform in the shader stage, a value between zero
       and the value of GL_ACTIVE_SUBROUTINES minus one will be returned. Subroutine indices are assigned using
       consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINES minus one for the
       shader stage.

Errors

GL_INVALID_ENUM is generated if shadertype or pname is not one of the accepted values.

       GL_INVALID_VALUE is generated if program is not the name of an existing program object.

Name

       glGetSubroutineIndex - retrieve the index of a subroutine uniform of a given shader stage within a
       program

Parameters

program
           Specifies the name of the program containing shader stage.

       shadertype
           Specifies the shader stage from which to query for subroutine uniform index.  shadertype must be one
           of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or
           GL_FRAGMENT_SHADER.

       name
           Specifies the name of the subroutine uniform whose index to query.

See Also

glGetProgram(), glGetActiveSubroutineUniform(), glGetActiveSubroutineUniformName()

Version Support

       ┌──────────────────────┬───────────────────────────────────────────────────────────────────────┐
       │                      │                OpenGLVersion                                         │
       ├──────────────────────┼─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┤
       │ Function2.02.13.03.13.23.34.04.14.24.34.44.5 │
       │ /                    │     │     │     │     │     │     │     │     │     │     │     │     │
       │ Feature              │     │     │     │     │     │     │     │     │     │     │     │     │
       │ Name                 │     │     │     │     │     │     │     │     │     │     │     │     │
       ├──────────────────────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
       │ glGetSubroutineIndex │  -  │  -  │  -  │  -  │  -  │  -  │  ✔  │  ✔  │  ✔  │  ✔  │  ✔  │  ✔  │
       └──────────────────────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘

See Also