glShaderStorageBlockBinding.3G man page

glShaderStorageBlockBinding — change an active shader storage block binding

C Specification

void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);

Parameters

program

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

storageBlockIndex

The index storage block within the program.

storageBlockBinding

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

Description

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, glShaderStorageBinding 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.

Errors

GL_INVALID_VALUE is generated if attribindex is greater than or equal to the value of GL_MAX_VERTEX_ATTRIBS.

GL_INVAILD_VALUE is generated if bindingindex is greater than or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS.

GL_INVALID_OPERATION is generated if no vertex array object is bound.

Associated Gets

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.

Info

02/04/2016 [FIXME: source] [FIXME: manual]