glGetVertexAttrib — Return a generic vertex attribute parameter
| void glGetVertexAttribfv( | GLuint index, | 
| GLenum pname, | |
| GLfloat *params ); | 
| void glGetVertexAttribiv( | GLuint index, | 
| GLenum pname, | |
| GLint *params ); | 
| void glGetVertexAttribIiv( | GLuint index, | 
| GLenum pname, | |
| GLint *params ); | 
| void glGetVertexAttribIuiv( | GLuint index, | 
| GLenum pname, | |
| GLuint *params ); | 
index
                
              
            Specifies the generic vertex attribute parameter to be queried.
pname
                
              
            Specifies the symbolic name of the vertex
            attribute parameter to be queried. Accepted values are
            GL_CURRENT_VERTEX_ATTRIB,
            GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING,
            GL_VERTEX_ATTRIB_ARRAY_ENABLED,
            GL_VERTEX_ATTRIB_ARRAY_SIZE,
            GL_VERTEX_ATTRIB_ARRAY_STRIDE,
            GL_VERTEX_ATTRIB_ARRAY_TYPE,
            GL_VERTEX_ATTRIB_ARRAY_NORMALIZED,
            GL_VERTEX_ATTRIB_ARRAY_INTEGER,
            GL_VERTEX_ATTRIB_ARRAY_DIVISOR, or
            GL_VERTEX_ATTRIB_BINDING.
params
                
              
            Returns the requested data.
glGetVertexAttrib returns in
    params the value of a generic vertex
    attribute parameter. The generic vertex attribute to be queried
    is specified by index, and the parameter
    to be queried is specified by pname.
The accepted parameter names are as follows:
GL_CURRENT_VERTEX_ATTRIB
              
            
 params returns four
            values that represent the current value for the
            generic vertex attribute specified by index. The initial value
            for all generic vertex attributes is (0,0,0,1).
GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING
              
            
 params returns a
            single value, the name of the buffer object currently bound to
                    the binding point corresponding to generic vertex attribute array 
                    index. If no buffer object is bound, 
                    0 is returned. The initial value is 0.
GL_VERTEX_ATTRIB_ARRAY_ENABLED
              
            
 params returns a
            single value that is non-zero (true) if the vertex
            attribute array for index is
            enabled and 0 (false) if it is disabled. The initial
            value is GL_FALSE.
GL_VERTEX_ATTRIB_ARRAY_SIZE
              
            
 params returns a
            single value, the size of the vertex attribute array
            for index. The size is the
            number of values for each element of the vertex
            attribute array, and it will be 1, 2, 3, or 4. The
            initial value is 4.
GL_VERTEX_ATTRIB_ARRAY_STRIDE
              
            
 params returns a
            single value, the array stride for (number of bytes
            between successive elements in) the vertex attribute
            array for index. A value of 0
            indicates that the array elements are stored
            sequentially in memory. The initial value is 0.
GL_VERTEX_ATTRIB_ARRAY_TYPE
              
            
 params returns a
            single value, a symbolic constant indicating the
            array type for the vertex attribute array for
            index. Possible values are
            GL_BYTE,
            GL_UNSIGNED_BYTE,
            GL_SHORT,
            GL_UNSIGNED_SHORT,
            GL_INT,
                        GL_INT_2_10_10_10_REV,
            GL_UNSIGNED_INT,
            GL_FIXED,
            GL_HALF_FLOAT, and
            GL_FLOAT. The initial value is
            GL_FLOAT.
GL_VERTEX_ATTRIB_ARRAY_NORMALIZED
              
            
 params returns a
            single value that is non-zero (true) if fixed-point
            data types for the vertex attribute array indicated
            by index are normalized when
            they are converted to floating point, and 0 (false)
            otherwise. The initial value is
            GL_FALSE.
GL_VERTEX_ATTRIB_ARRAY_INTEGER
              
            
 params returns a
            single value that is non-zero (true) if fixed-point
            data types for the vertex attribute array indicated
            by index have integer data types, and 0 (false)
            otherwise. The initial value is
            0 (GL_FALSE).
GL_VERTEX_ATTRIB_ARRAY_DIVISOR
              
            
 params returns a
            single value that is the frequency divisor used for instanced
            rendering. See glVertexAttribDivisor.
            The initial value is 0.
GL_VERTEX_ATTRIB_BINDING
              
            
 params returns a single value
			that is the current vertex buffer binding of the vertex attribute. See 
            glVertexAttribBinding.
All of the parameters except GL_CURRENT_VERTEX_ATTRIB
    represent state stored in the currently bound vertex array object. If the zero object 
        is bound, these values are client state.
If an error is generated, no change is made to the
    contents of params.
GL_INVALID_VALUE is generated if
    index is greater than or equal to
    GL_MAX_VERTEX_ATTRIBS.
GL_INVALID_ENUM is generated if
    pname is not an accepted value.
glGet
    with argument GL_MAX_VERTEX_ATTRIBS
glGetVertexAttribPointerv
    with arguments index and
    GL_VERTEX_ATTRIB_ARRAY_POINTER
| OpenGL ES API Version | ||||
|---|---|---|---|---|
| Function Name | 2.0 | 3.0 | 3.1 | 3.2 | 
| glGetVertexAttribfv | ✔ | ✔ | ✔ | ✔ | 
| glGetVertexAttribiv | ✔ | ✔ | ✔ | ✔ | 
| glGetVertexAttribIiv | - | ✔ | ✔ | ✔ | 
| glGetVertexAttribIuiv | - | ✔ | ✔ | ✔ | 
glBindAttribLocation, glBindBuffer, glDisableVertexAttribArray, glEnableVertexAttribArray, glVertexAttrib, glVertexAttribDivisor, glVertexAttribPointer
Copyright © 2003-2005 3Dlabs Inc. Ltd. Copyright © 2010-2015 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. https://opencontent.org/openpub/.