bind a range within a buffer object to an indexed buffer target
glBindBufferRange( GLenum( target ) , GLuint( index ) , GLuint( buffer ) , GLintptr( offset ) , GLsizeiptr( size ) )-> void
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 .
Specify the index of the binding point within the array specified by target .
The name of a buffer object to bind to the specified binding point.
The starting offset in basic machine units into the buffer object buffer .
The amount of data in machine units that can be read from the buffet object while used as an indexed target.
glBindBufferRange binds a range the buffer object buffer represented by offset and size 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 a range of buffer to the indexed buffer binding target, glBindBufferRange also binds the range to the generic buffer binding point specified by target .
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.
GL_INVALID_ENUM is generated if target is not one of 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 size is less than or equal to zero, or if offset + size is greater than the value of GL_BUFFER_SIZE .
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/ .