2012 Khronos Group
glBindVertexBuffer 3G
glBindVertexBuffer bind a buffer to a vertex buffer bind point

## C Specification

void `glBindVertexBuffer` GLuint bindingindex GLuint buffer GLintptr offset GLintptr stride

## Parameters

bindingindex

  The index of the vertex buffer binding point to which to bind the buffer.

buffer

  The name of an existing buffer to bind to the vertex buffer binding point.

offset

  The offset of the first element of the buffer.

stride

  The distance between elements within the buffer.

## Description

`glBindVertexBuffer` binds the buffer named buffer to the vertex buffer binding point whose index is given by bindingindex. offset and stride specify the offset of the first element within the buffer and the distance between elements within the buffer, respectively, and are both measured in basic machine units. bindingindex must be less than the value of `GL_MAX_VERTEX_ATTRIB_BINDINGS`. offset and stride must be greater than or equal to zero. If buffer is zero, then any buffer currently bound to the specified binding point is unbound.

## Errors

`GL_INVAILD_VALUE` is generated if bindingindex is greater than or equal to the value of `GL_MAX_VERTEX_ATTRIB_BINDINGS`.

`GL_INVALID_VALUE` is generated if offset or stride is less than zero.

`GL_INVALID_VALUE` is generated if buffer is not the name of an existing buffer object.

`GL_INVALID_OPERATION` is generated if no vertex array object is bound.

## Associated Gets

glGet with argument `GL_MAX_VERTEX_ATTRIB_BINDINGS`.

## See Also

glVertexAttribBinding, glVertexAttribFormat, glVertexAttribPointer, glVertexBindingDivisor.

## Copyright

Copyright 2012 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/.