GLAPI/glBindSamplers

From OpenGL.org
Jump to: navigation, search
glBindSamplers
Core in version 4.4
Core since version 4.4
Core ARB extension ARB_multi_bind

glBindSamplers: bind one or more named sampler objects to a sequence of consecutive sampler units

Function Definition

 void glBindSamplers(GLuint first​, GLsizei count​, const GLuint *samplers​);
first
Specifies the first sampler unit to which a sampler object is to be bound.
count
Specifies the number of samplers to bind.
samplers
Specifies the address of an array of names of existing sampler objects.

Description

glBindSamplers binds samplers from an array of existing sampler objects to a specified number of consecutive sampler units. count​ specifies the number of sampler objects whose names are stored in the array samplers​. That number of sampler names is read from the array and bound to the count​ consecutive sampler units starting from first​.

If the name zero appears in the samplers​ array, any existing binding to the sampler unit is reset. Any non-zero entry in samplers​ must be the name of an existing sampler object. When a non-zero entry in samplers​ is present, that sampler object is bound to the corresponding sampler unit. If samplers​ is NULL​ then it is as if an appropriately sized array containing only zeros had been specified.

glBindSamplers is equivalent to the following pseudo code:

    for (i = 0; i < count; i++) {
        if (samplers == NULL) {
            glBindSampler(first + i, 0);
        } else {
            glBindSampler(first + i, samplers[i]);
        }
    }

Each entry in samplers​ will be checked individually and if found to be invalid, the state for that sampler unit will not be changed and an error will be generated. However, the state for other sampler units referenced by the command will still be updated.

Errors

GL_INVALID_OPERATION​ is generated if first​ + count​ is greater than the number of sampler units supported by the implementation.

GL_INVALID_OPERATION​ is generated if any value in samplers​ is not zero or the name of an existing sampler object.

Associated Gets

glGet with argument GL_SAMPLER_BINDING​

See Also

glBindSamplers, glGenSamplers, glDeleteSamplers, glGet, glSamplerParameter, glGetSamplerParameter, glGenTextures, glBindTexture, glDeleteTextures

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