Provided by: opengl-4-man-doc_1.0~svn22917-1_all bug

NAME

       glBindBuffersRange - bind ranges of one or more buffer objects to a sequence of indexed
       buffer targets

C SPECIFICATION

       void glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint *buffers,
                               const GLintptr *offsets, const GLintptr *sizes);

PARAMETERS

       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 first binding point within the array specified by target.

       count
           Specify the number of contiguous binding points to which to bind buffers.

       buffers
           A pointer to an array of names of buffer objects to bind to the targets on the
           specified binding point, or NULL.

DESCRIPTION

       glBindBuffersRange binds a set of count ranges from buffer objects whose names are given
       in the array buffers to the count consecutive binding points starting from index index of
       the array of targets specified by target.  offsets specifies the address of an array
       containing count starting offsets within the buffers, and sizes specifies the adderess of
       an array of count sizes of the ranges. If buffers is NULL then offsets and sizes are
       ignored and glBindBuffersRange unbinds any buffers that are currently bound to the
       referenced binding points. Assuming no errors are generated, it is equivalent to the
       following pseudo-code, which calls glBindBufferRange():

               for (i = 0; i < count; i++)
               {
                   if (buffers != NULL)
                   {
                       glBindBufferRange(target, first + i, buffers[i], offsets[i], sizes[i]);
                   }
                   else
                   {
                       glBindBufferBase(target, first + i, 0);
                   }
               }

NOTES

       glBindBuffersBase is available only if the GL version is 4.4 or higher.

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_OPERATION is generated if first + count is greater than the number of
       target-specific indexed binding points.

       GL_INVALID_OPERATION is generated if any value in buffers is not zero or the name of an
       existing buffer object.

       GL_INVALID_VALUE is generated by if any value in offsets is less than zero or if any value
       in sizes is less than zero.

       GL_INVALID_VALUE is generated if any pair of values in offsets and sizes does not
       respectively satisfy the constraints described for those parameters for the specified
       target.

SEE ALSO

       glGenBuffers(), glDeleteBuffers(), glBindBuffer(), glBindBufferBase(),
       glBindBufferRange(), glBindBuffersRange(), glMapBuffer(), glUnmapBuffer()

COPYRIGHT

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

AUTHORS

       opengl.org