GLSHADERSTORAGEBLOCK(3G)

    .SH "NAME" glShaderStorageBlockBinding - change an active shader storage block binding
    .SH "C SPECIFICATION"

            .HP u void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);

    .SH "PARAMETERS"

        .PP program

                    The name of the program containing the block whose binding to change.

            .RE
            .PP storageBlockIndex

                        The index storage block within the program.

                .RE
                .PP storageBlockBinding

                            The index storage block binding to associate with the specified storage block.

                    .RE

                .SH "DESCRIPTION"
                    .PP glShaderStorageBlockBinding, changes the active shader storage block with an assigned index of storageBlockIndex in program object program. storageBlockIndex must be an active shader storage block index in program. storageBlockBinding must be less than the value of GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS. If successful, glShaderStorageBlockBinding specifies that program will use the data store of the buffer object bound to the binding point storageBlockBinding to read and write the values of the buffer variables in the shader storage block identified by storageBlockIndex.

                .SH "ERRORS"
                    .PP GL_INVALID_VALUE is generated if program is not the name of either a program or shader object.
                    .PP GL_INVALID_OPERATION is generated if program is the name of a shader object.
                    .PP GL_INVALID_VALUE is generated if storageBlockIndex is not an active shader storage block index in program, or if storageBlockBinding is greater than or equal to the value of MAX_SHADER_STORAGE_BUFFER_BINDINGS.

                .SH "ASSOCIATED GETS"
                    .PP glGet() with arguments GL_SHADER_STORAGE_BUFFER_BINDING, GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS, GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS, GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS, GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS, GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS or GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS, GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, or GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES.

                .SH "VERSION SUPPORT"
                    .TS allbox tab(:); l l l l l l l l l l l l l. T{ glShaderStorageBlockBinding T}:T{ T}:T{ T}:T{ T}:T{ T}:T{ T}:T{ T}:T{ T}:T{ T}:T{ T}:T{ T}:T{ T}:T{ T}

                .SH "SEE ALSO"

                .SH "COPYRIGHT"
                    .PP Copyright © 2014 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.

COPYRIGHT
Copyright © 2014 Khronos Group