glPatchParameter

From OpenGL Reference
Jump to navigation Jump to search

Specifies the parameters for patch primitives.

C Specification[edit]

void glPatchParameteri( GLenum pname, GLint value );
void glPatchParameterfv( GLenum pname, const GLfloat * values );


Parameters[edit]

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[edit]

 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 enabeld 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[edit]

 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 .


Version Support[edit]

 glPatchParameterfv  4.0+
 glPatchParameteri  4.0+

See Also[edit]

 glDrawArrays , glDrawArraysInstanced , glDrawElements , glDrawRangeElements ,


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