glBindBufferRange — bind a range within a buffer object to an indexed buffer target
| void glBindBufferRange( | GLenum target, | 
| GLuint index, | |
| GLuint buffer, | |
| GLintptr offset, | |
| GLsizeiptr size ); | 
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.
offset
                
              
            
                    The starting offset in basic machine units into the buffer object buffer.
                
size
                
              
            The amount of data in machine units that can be read from the buffer 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.
        
            offset specifies the offset in basic machine units into the buffer object
            buffer and size specifies the amount of data that
            can be read from the buffer object while used as an indexed target.
        
            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_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.
        
            Additional errors may be generated if offset violates any
            target-specific alignmemt restrictions.
        
| OpenGL Version | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Function / Feature Name | 2.0 | 2.1 | 3.0 | 3.1 | 3.2 | 3.3 | 4.0 | 4.1 | 4.2 | 4.3 | 4.4 | 4.5 | 
| glBindBufferRange | - | - | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | 
glGenBuffers, glDeleteBuffers, glBindBuffer, glBindBufferBase, 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. http://opencontent.org/openpub/.