glGetActiveUniformName

From OpenGL Reference
Jump to navigation Jump to search

Query the name of an active uniform.

C Specification[edit]

void glGetActiveUniformName( GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei * length, GLchar * uniformName );


Parameters[edit]

program - Specifies the program containing the active uniform index uniformIndex .
uniformIndex - Specifies the index of the active uniform whose name to query.
bufSize - Specifies the size of the buffer, in units ofGLchar, of the buffer whose address is specified in uniformName .
length - 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 .
uniformName - Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program .


Description[edit]

 glGetActiveUniformName returns the name of the active uniform at uniformIndex within program . If uniformName is notNULL, up to bufSize characters (including a nul-terminator) will be written into the array whose address is specified by uniformName . If length is notNULL, the number of characters that were (or would have been) written into uniformName (not including the nul-terminator) will be placed in the variable whose address is specified in length . If length isNULL, 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 .

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 the value of GL_ACTIVE_UNIFORMS minus one. The value of GL_ACTIVE_UNIFORMS can be queried with glGetProgram .


Errors[edit]

 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.


Version Support[edit]

 glGetActiveUniformName  3.1+

See Also[edit]

 glGetActiveUniform , glGetUniformIndices , glGetProgram , glLinkProgram 


Copyright[edit]

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