GLAPI/glGetProgramResourceLocationIndex: Difference between revisions
m Bot: Adding better formatting. |
|||
(4 intermediate revisions by 2 users not shown) | |||
Line 20: | Line 20: | ||
== Description == | == Description == | ||
''' | '''glGetProgramResourceLocationIndex''' returns the fragment color index assigned to the variable named {{param|name}} in interface {{param|programInterface}} of program object {{param|program}}. {{param|program}} must be the name of a program that has been linked successfully. {{param|programInterface}} must be {{enum|PROGRAM_OUTPUT}}. | ||
The value -1 will be returned if an error occurs, if {{param|name}} does not identify an active variable on {{param|programInterface}}, or if {{param|name}} identifies an active variable that does not have a valid location assigned, as described above. The locations returned by these commands are the same locations returned when querying the {{enum|GL_LOCATION}} and {{enum|GL_LOCATION_INDEX}} resource properties. | |||
A string provided to '''glGetProgramResourceLocationIndex''' is considered to match an active variable if: | A string provided to '''glGetProgramResourceLocationIndex''' is considered to match an active variable if: | ||
Line 42: | Line 44: | ||
== See Also == | == See Also == | ||
{{apifunc| | {{apifunc|glGetProgramResource}}, {{apifunc|glGetProgramResourceLocation}}, {{apifunc|glBindFragDataLocationIndexed}} | ||
== Copyright == | == Copyright == | ||
Line 50: | Line 52: | ||
[[Category:Core API Reference|GetProgramResourceLocationIndex]] | [[Category:Core API Reference|GetProgramResourceLocationIndex]] | ||
[[Category:Core API Ref Shader Program Query|GetProgramResourceLocationIndex]] | [[Category:Core API Ref Shader Program Query|GetProgramResourceLocationIndex]] | ||
[[Category:Program Object API State Functions|GetProgramResourceLocationIndex]] |
Latest revision as of 10:00, 15 August 2013
Core in version | 4.6 | |
---|---|---|
Core since version | 4.3 | |
Core ARB extension | ARB_program_interface_query |
glGetProgramResourceLocationIndex: query the fragment color index of a named variable within a program
Function Definition
GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const char * name);
- program
- The name of a program object whose resources to query.
- programInterface
- A token identifying the interface within program containing the resource named name.
- name
- The name of the resource to query the location of.
Description
glGetProgramResourceLocationIndex returns the fragment color index assigned to the variable named name in interface programInterface of program object program. program must be the name of a program that has been linked successfully. programInterface must be PROGRAM_OUTPUT.
The value -1 will be returned if an error occurs, if name does not identify an active variable on programInterface, or if name identifies an active variable that does not have a valid location assigned, as described above. The locations returned by these commands are the same locations returned when querying the GL_LOCATION and GL_LOCATION_INDEX resource properties.
A string provided to glGetProgramResourceLocationIndex is considered to match an active variable if:
- the string exactly matches the name of the active variable
- if the string identifies the base name of an active array, where the string would exactly match the name of the variable if the suffix "[0]" were appended to the string
- if the string identifies an active element of the array, where the string ends with the concatenation of the "[" character, an integer with no "+" sign, extra leading zeroes, or whitespace identifying an array element, and the "]" character, the integer is less than the number of active elements of the array variable, and where the string would exactly match the enumerated name of the array if the decimal integer were replaced with zero.
Any other string is considered not to identify an active variable. If the string specifies an element of an array variable, glGetProgramResourceLocation returns the location assigned to that element. If it specifies the base name of an array, it identifies the resources associated with the first element of the array.
Errors
GL_INVALID_VALUE is generated if program is not the name of an existing program object.
GL_INVALID_ENUM is generated if programInterface is not one of the accepted interface types.
GL_INVALID_OPERATION is generated if program has not been linked successfully.
See Also
glGetProgramResource, glGetProgramResourceLocation, glBindFragDataLocationIndexed
Copyright
Copyright © 2012 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/.