The other function of a tessellation control shader is to specify how much to tessellate the output patch. While we haven’t discussed tessellation evaluation shaders in detail yet, they control the type of output patch for rendering, and consequently, the domain where tessellation occurs. OpenGL supports three tessellation domains: a quadrilateral, a triangle, and a collection of isolines.
The amount of tessellation is controlled by specifying two sets of values: the inner- and outer-tessellation levels. The outer-tessellation levels control how the perimeter of the domain is subdivided, and is stored in an implicitly declared four-element array named
gl_TessLevelOuter. Similarly, the inner-tessellation levels specify ...