Portal:OpenGL Shading Language/Tessellation Control Shader
The Tessellation Control Shader (TCS) is the shader stage after the vertex shader. It exists to do user-defined setup work for Tessellation operations. It is an optional shader stage; even if you want to do tessellation, it is optional.
The purpose of the TCS is to define the size of the patch data consumed by the tessellator, compute the values for that patch data, and decide how much tessellation will be performed on each patch. The TCS executes on patches, but each TCS invocation executes on a specific input vertex of a patch. All of the TCS invocations for a patch can communicate with one another.