Difference between revisions of "GLAPI/glPatchParameter"
m (Bot: Adding better formatting.) |
Nguillemot (talk | contribs) m (→Description: typo fix) |
||
Line 23: | Line 23: | ||
'''glPatchParameter''' specifies the parameters that will be used for patch primitives. {{param|pname}} specifies the parameter to modify and must be either {{enum|GL_PATCH_VERTICES}}, {{enum|GL_PATCH_DEFAULT_OUTER_LEVEL}} or {{enum|GL_PATCH_DEFAULT_INNER_LEVEL}}. For '''glPatchParameteri''', {{param|value}} specifies the new value for the parameter specified by {{param|pname}}. For '''glPatchParameterfv''', {{param|values}} specifies the address of an array containing the new values for the parameter specified by {{param|pname}}. | '''glPatchParameter''' specifies the parameters that will be used for patch primitives. {{param|pname}} specifies the parameter to modify and must be either {{enum|GL_PATCH_VERTICES}}, {{enum|GL_PATCH_DEFAULT_OUTER_LEVEL}} or {{enum|GL_PATCH_DEFAULT_INNER_LEVEL}}. For '''glPatchParameteri''', {{param|value}} specifies the new value for the parameter specified by {{param|pname}}. For '''glPatchParameterfv''', {{param|values}} specifies the address of an array containing the new values for the parameter specified by {{param|pname}}. | ||
− | When {{param|pname}} is {{enum|GL_PATCH_VERTICES}}, {{param|value}} specifies the number of vertices that will be used to make up a single patch primitive. Patch primitives are consumed by the tessellation control shader (if present) and subsequently used for tessellation. When primitives are specified using {{apifunc|glDrawArrays}} or a similar function, each patch will be made from {{param|parameter}} control points, each represented by a vertex taken from the | + | When {{param|pname}} is {{enum|GL_PATCH_VERTICES}}, {{param|value}} specifies the number of vertices that will be used to make up a single patch primitive. Patch primitives are consumed by the tessellation control shader (if present) and subsequently used for tessellation. When primitives are specified using {{apifunc|glDrawArrays}} or a similar function, each patch will be made from {{param|parameter}} control points, each represented by a vertex taken from the enabled vertex arrays. {{param|parameter}} must be greater than zero, and less than or equal to the value of {{enum|GL_MAX_PATCH_VERTICES}}. |
When {{param|pname}} is {{enum|GL_PATCH_DEFAULT_OUTER_LEVEL}} or {{enum|GL_PATCH_DEFAULT_INNER_LEVEL}}, {{param|values}} contains the address of an array contiaining the default outer or inner tessellation levels, respectively, to be used when no tessellation control shader is present. | When {{param|pname}} is {{enum|GL_PATCH_DEFAULT_OUTER_LEVEL}} or {{enum|GL_PATCH_DEFAULT_INNER_LEVEL}}, {{param|values}} contains the address of an array contiaining the default outer or inner tessellation levels, respectively, to be used when no tessellation control shader is present. |
Latest revision as of 16:48, 21 July 2017
Core in version | 4.6 | |
---|---|---|
Core since version | 4.0 | |
Core ARB extension | ARB_tessellation_shader |
glPatchParameter: specifies the parameters for patch primitives
Function Definition
void glPatchParameteri(GLenum pname, GLint value); void glPatchParameterfv(GLenum pname, const GLfloat *values);
- pname
- Specifies the name of the parameter to set. The symbolc constants GL_PATCH_VERTICES, GL_PATCH_DEFAULT_OUTER_LEVEL, and GL_PATCH_DEFAULT_INNER_LEVEL are accepted.
- value
- Specifies the new value for the parameter given by pname.
- values
- Specifies the address of an array containing the new values for the parameter given by pname.
Description
glPatchParameter specifies the parameters that will be used for patch primitives. pname specifies the parameter to modify and must be either GL_PATCH_VERTICES, GL_PATCH_DEFAULT_OUTER_LEVEL or GL_PATCH_DEFAULT_INNER_LEVEL. For glPatchParameteri, value specifies the new value for the parameter specified by pname. For glPatchParameterfv, values specifies the address of an array containing the new values for the parameter specified by pname.
When pname is GL_PATCH_VERTICES, value specifies the number of vertices that will be used to make up a single patch primitive. Patch primitives are consumed by the tessellation control shader (if present) and subsequently used for tessellation. When primitives are specified using glDrawArrays or a similar function, each patch will be made from parameter control points, each represented by a vertex taken from the enabled vertex arrays. parameter must be greater than zero, and less than or equal to the value of GL_MAX_PATCH_VERTICES.
When pname is GL_PATCH_DEFAULT_OUTER_LEVEL or GL_PATCH_DEFAULT_INNER_LEVEL, values contains the address of an array contiaining the default outer or inner tessellation levels, respectively, to be used when no tessellation control shader is present.
Errors
GL_INVALID_ENUM is generated if pname is not an accepted value.
GL_INVALID_VALUE is generated if pname is GL_PATCH_VERTICES and value is less than or equal to zero, or greater than the value of GL_MAX_PATCH_VERTICES.
See Also
Category:Core API Ref Vertex Rendering
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/.