Difference between revisions of "GLAPI/glGetActiveUniformName"
m (→Description) |
|||
Line 25: | Line 25: | ||
'''glGetActiveUniformName''' returns the name of the active uniform at {{param|uniformIndex}} within {{param|program}}. The function will not write more than {{param|bufSize}} characters (including a null-terminator) to the address specified by {{param|uniformName}}. If {{param|length}} is not {{code|NULL}}, the number of characters that were written into {{param|uniformName}} (not including the nul-terminator) will be placed in the variable whose address is specified in {{param|length}}. If {{param|length}} is {{code|NULL}}, no length is returned. | '''glGetActiveUniformName''' returns the name of the active uniform at {{param|uniformIndex}} within {{param|program}}. The function will not write more than {{param|bufSize}} characters (including a null-terminator) to the address specified by {{param|uniformName}}. If {{param|length}} is not {{code|NULL}}, the number of characters that were written into {{param|uniformName}} (not including the nul-terminator) will be placed in the variable whose address is specified in {{param|length}}. If {{param|length}} is {{code|NULL}}, no length is returned. | ||
− | The length of the longest uniform name in {{param|program}} is given by the value of {{enum|GL_ACTIVE_UNIFORM_MAX_LENGTH}}, which can be queried with {{apifunc|glGetProgram}}. The length of this uniform's name, including the null-terminator, can be acquired with {{apifunc| | + | The length of the longest uniform name in {{param|program}} is given by the value of {{enum|GL_ACTIVE_UNIFORM_MAX_LENGTH}}, which can be queried with {{apifunc|glGetProgram}}. The length of this uniform's name, including the null-terminator, can be acquired with {{apifunc|glGetActiveUniforms}}, passing {{enum|GL_UNIFORM_NAME_LENGTH}}. |
If '''glGetActiveUniformName''' is not successful, nothing is written to {{param|length}} or {{param|uniformName}}. | If '''glGetActiveUniformName''' is not successful, nothing is written to {{param|length}} or {{param|uniformName}}. |
Revision as of 23:37, 19 February 2013
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);
- 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 of GLchar, 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
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.
Errors
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
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. http://opencontent.org/openpub/.