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

glUniformBlockBinding - assign a binding point to an active uniform block

Associated Gets

glGetActiveUniformBlock() with argument GL_UNIFORM_BLOCK_BINDING

C Specification

voidglUniformBlockBinding(GLuintprogram,GLuintuniformBlockIndex,GLuintuniformBlockBinding);

Description

       Binding points for active uniform blocks are assigned using glUniformBlockBinding. Each of a program's
       active uniform blocks has a corresponding uniform buffer binding point.  program is the name of a program
       object for which the command glLinkProgram() has been issued in the past.

       If successful, glUniformBlockBinding specifies that program will use the data store of the buffer object
       bound to the binding point uniformBlockBinding to extract the values of the uniforms in the uniform block
       identified by uniformBlockIndex.

       When a program object is linked or re-linked, the uniform buffer object binding point assigned to each of
       its active uniform blocks is reset to zero.

Errors

GL_INVALID_VALUE is generated if uniformBlockIndex is not an active uniform block index of program.

       GL_INVALID_VALUE is generated if uniformBlockBinding is greater than or equal to the value of
       GL_MAX_UNIFORM_BUFFER_BINDINGS.

       GL_INVALID_VALUE is generated if program is not the name of a program object generated by the GL.

Name

       glUniformBlockBinding - assign a binding point to an active uniform block

Notes

glUniformBlockBinding is available only if the GL version is 3.1 or greater.

Parameters

program
           The name of a program object containing the active uniform block whose binding to assign.

       uniformBlockIndex
           The index of the active uniform block within program whose binding to assign.

       uniformBlockBinding
           Specifies the binding point to which to bind the uniform block with index uniformBlockIndex within
           program.

See Also

glLinkProgram(), glBindBufferBase(), glBindBufferRange(), glGetActiveUniformBlock()

Version Support

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

See Also