From OpenGL Wiki
< GLAPI(Redirected from GlGetActiveUniformName)
Jump to navigation Jump to search
Core in version 4.6
Core since version 2.0

glGetActiveUniformName: query the name of an active uniform

Function Definition

 void glGetActiveUniformName(GLuint program​, GLuint uniformIndex​, GLsizei bufSize​, GLsizei *length​, GLchar *uniformName​);
Specifies the program containing the active uniform index uniformIndex​.
Specifies the index of the active uniform whose name to query.
Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName​.
Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName​.
Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex​ within program​.


glGetActiveUniformName returns the name of the active uniform at uniformIndex​ within program​. The function will not write more than bufSize​ characters (including a null-terminator) to the address specified by uniformName​. If length​ is not NULL, the number of characters that were written into uniformName​ (not including the nul-terminator) will be placed in the variable whose address is specified in length​. If length​ is NULL, no length is returned.

The length of the longest uniform name in program​ is given by the value of GL_ACTIVE_UNIFORM_MAX_LENGTH, which can be queried with glGetProgram. The length of this uniform's name, including the null-terminator, can be acquired with glGetActiveUniforms, passing GL_UNIFORM_NAME_LENGTH.

If glGetActiveUniformName is not successful, nothing is written to length​ or uniformName​.

program​ must be the name of a program for which the command glLinkProgram has been issued in the past. It is not necessary for program​ to have been linked successfully. The link could have failed because the number of active uniforms exceeded the limit.

uniformIndex​ must be an active uniform index of the program program​, in the range zero to GL_ACTIVE_UNIFORMS - 1. The value of GL_ACTIVE_UNIFORMS can be queried with glGetProgram.


GL_INVALID_VALUE is generated if uniformIndex​ is greater than or equal to the value of GL_ACTIVE_UNIFORMS.

GL_INVALID_VALUE is generated if bufSize​ is negative.

GL_INVALID_VALUE is generated if program​ is not the name of a program object for which glLinkProgram has been issued.

Associated Gets

glGetProgram with GL_ACTIVE_UNIFORMS


glGetActiveUniforms with GL_UNIFORM_NAME_LENGTH

glGetProgramInterface with GL_UNIFORM and GL_ACTIVE_RESOURCES

glGetProgramResourceIndex with GL_UNIFORM

glGetProgramResource with GL_NAME_LENGTH​

See Also

glGetActiveUniform, glGetActiveUniforms, glGetProgramResource, glGetProgramResourceName


Copyright © 2010 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.