GLAPI/glGetUniformSubroutine: Difference between revisions

From OpenGL Wiki
Jump to navigation Jump to search
4.0 API.
 
m Bot: Adjusting API page category.
Line 39: Line 39:


[[Category:API Reference 4|GetUniformSubroutine]]
[[Category:API Reference 4|GetUniformSubroutine]]
[[Category:GL 4 API Shader Program Query|GetUniformSubroutine]]

Revision as of 03:25, 26 February 2012

glGetUniformSubroutine
Core in version 4.6
Core since version 4.0
Core ARB extension ARB_shader_subroutine

glGetUniformSubroutine: retrieve the value of a subroutine uniform of a given shader stage of the current program

Function Definition

 void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *values);
shadertype
Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER.
location
Specifies the location of the subroutine uniform.
values
Specifies the address of a variable to receive the value or values of the subroutine uniform.

Description

glGetUniformSubroutine retrieves the value of the subroutine uniform at location location for shader stage shadertype of the current program. location must be less than the value of GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS for the shader currently in use at shader stage shadertype. The value of the subroutine uniform is returned in values.

Errors

GL_INVALID_ENUM is generated if shadertype is not one of the accepted values.

GL_INVALID_VALUE is generated if location is greater than or equal to the value of GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS for the shader currently in use at shader stage shadertype.

GL_INVALID_OPERATION is generated if no program is active.

See Also

glGetProgram, glGetActiveSubroutineUniform, glGetActiveSubroutineUniformName, glGetUniformLocation

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