GLAPI/glBindBufferBase

From OpenGL.org
Jump to: navigation, search
glBindBufferBase
Core in version 4.4
Core since version 3.0

glBindBufferBase: bind a buffer object to an indexed buffer target

Function Definition

 void glBindBufferBase(GLenum target​, GLuint index​, GLuint buffer​);
target
Specifies the target buffer object. The symbolic constant must be 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.

Description

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​.

Notes

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

The GL_ATOMIC_COUNTER_BUFER​ 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.

Errors

GL_INVALID_ENUM​ is generated if target​ is not GL_ATOMIC_COUNTER_BUFFER​, GL_TRANSFORM_FEEDBACK_BUFFER​, GL_UNIFORM_BUFFER​ or GL_SHADER_STORAGE_BUFFER​.

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.

See Also

glBindBuffersBase, glGenBuffers, glDeleteBuffers, glIsBuffer, glBindBufferRange, glBindBuffersRange, glBindBuffer

Buffer Object

Copyright

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