logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

glVertexBindingDivisor, glVertexArrayBindingDivisor - modify the rate at which generic vertex attributes

Associated Gets

glGet() with arguments GL_MAX_VERTEX_ATTRIB_BINDINGS, GL_VERTEX_BINDING_DIVISOR.

C Specification

voidglVertexBindingDivisor(GLuintbindingindex,GLuintdivisor);voidglVertexArrayBindingDivisor(GLuintvaobj,GLuintbindingindex,GLuintdivisor);

Description

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.

Errors

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.

Name

       glVertexBindingDivisor, glVertexArrayBindingDivisor - modify the rate at which generic vertex attributes
       advance

Parameters

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.

See Also

glBindVertexBuffer(), glVertexAttribBinding(), glVertexAttribPointer(), glVertexBindingDivisor(),
       glVertexAttribPointer().

Version Support

       ┌─────────────────────────────┬───────────────────────────────────────────────────────────────────────┐
       │                             │                OpenGLVersion                                         │
       ├─────────────────────────────┼─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┤
       │ Function2.02.13.03.13.23.34.04.14.24.34.44.5 │
       │ /                           │     │     │     │     │     │     │     │     │     │     │     │     │
       │ Feature                     │     │     │     │     │     │     │     │     │     │     │     │     │
       │ Name                        │     │     │     │     │     │     │     │     │     │     │     │     │
       ├─────────────────────────────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
       │ glVertexArrayBindingDivisor │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  ✔  │
       ├─────────────────────────────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
       │ glVertexBindingDivisor      │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  ✔  │  ✔  │  ✔  │
       └─────────────────────────────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘

See Also