From OpenGL Reference
Jump to navigation Jump to search

Bind a buffer object to an indexed buffer target.

C Specification[edit]

void glBindBufferBase( GLenum target, GLuint index, GLuint buffer );


target - Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER , GL_TRANSFORM_FEEDBACK_BUFFER , GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER .
index - Specify the index of the binding point within the array specified by target .
buffer - The name of a buffer object to bind to the specified binding point.


 glBindBufferBase binds the buffer object buffer to the binding point at index index of the array of targets specified by target . Each target represents an indexed array of buffer binding points, as well as a single general binding point that can be used by other buffer manipulation functions such as glBindBuffer or glMapBuffer . In addition to binding buffer to the indexed buffer binding target, glBindBufferBase also binds buffer to the generic buffer binding point specified by target .


Calling glBindBufferBase is equivalent to calling glBindBufferRange with offset zero and size equal to the size of the buffer.

The GL_ATOMIC_COUNTER_BUFFER target is available only if the GL version is 4.2 or greater.

The GL_SHADER_STORAGE_BUFFER target is available only if the GL version is 4.3 or greater.



 GL_INVALID_VALUE is generated if index is greater than or equal to the number of target -specific indexed binding points.

 GL_INVALID_VALUE is generated if buffer does not have an associated data store, or if the size of that store is zero.

Version Support[edit]

 glBindBufferBase  3.0+

See Also[edit]

 glGenBuffers , glDeleteBuffers , glBindBuffer , glBindBufferRange , glMapBuffer , glUnmapBuffer ,


Copyright© 2010-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.