glVertexBindingDivisor, glVertexArrayBindingDivisor — modify the rate at which generic vertex attributes advance
void glVertexBindingDivisor(
|
GLuint bindingindex, |
GLuint divisor); |
void glVertexArrayBindingDivisor(
|
GLuint vaobj, |
| GLuint bindingindex, | |
GLuint divisor); |
vaobj
Specifies the name of the vertex array object for
glVertexArrayBindingDivisor function.
bindingindex
The index of the binding whose divisor to modify.
divisor
The new value for the instance step rate to apply.
glVertexBindingDivisor and
glVertexArrayBindingDivisor modify the rate at which
generic vertex attributes advance when rendering multiple instances of
primitives in a single draw command. If divisor is
zero, the attributes using the buffer bound to
bindingindex advance once per vertex. If
divisor is non-zero, the attributes advance once
per divisor instances of the set(s) of vertices
being rendered. An attribute is referred to as
instanced if the corresponding
divisor value is non-zero.
glVertexBindingDivisor uses currently bound
vertex array object , whereas
glVertexArrayBindingDivisor updates state of the
vertex array object with ID vaobj.
GL_INVALID_VALUE is generated if
bindingindex is greater than or equal to the value
of GL_MAX_VERTEX_ATTRIB_BINDINGS.
GL_INVALID_OPERATION by
glVertexBindingDivisor is generated if no vertex
array object is bound.
GL_INVALID_OPERATION is generated by
glVertexArrayBindingDivisor if
vaobj is not the name of an existing vertex array
object.
glGet
with arguments GL_MAX_VERTEX_ATTRIB_BINDINGS,
GL_VERTEX_BINDING_DIVISOR.
| 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 |
glVertexArrayBindingDivisor
|
- | - | - | - | - | - | - | - | - | - | - | ✔ |
glVertexBindingDivisor
|
- | - | - | - | - | - | - | - | - | ✔ | ✔ | ✔ |
glBindVertexBuffer, glVertexAttribBinding, glVertexAttribPointer, glVertexBindingDivisor, glVertexAttribPointer.
Copyright © 2013-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/.