AFAIK you can't have TCS without TES. But you can have TES without TCS.
On Tue, Mar 17, 2015 at 2:33 PM, Marek Olšák <mar...@gmail.com> wrote: > Hi, > > The GL 4.5 Core spec is inconsistent. The "11.1.2.1 Output Variables" > section says that transform feedback is allowed after a tessellation > control shader if a tessellation evaluation shader isn't present: > > "Each program object can specify a set of output variables from one > shader to be recorded in transform feedback mode (see section 13.2). > The variables that can be recorded are those emitted by the first > active shader, in order, from the following list: > * geometry shader > * tessellation evaluation shader > * tessellation control shader > * vertex shader" > > Even glTransformFeedbackVaryings allows it: > > "If the set of output variables to record in transform feedback mode > is specified by TransformFeedbackVaryings, a program will fail to link > if: > * the count specified by TransformFeedbackVaryings is non-zero, but the > program object has no vertex, tessellation control, tessellation evaluation, > or > geometry shader;" > > However, the "13.2 Transform Feedback" section doesn't mention any > tessellation control shader: > > "The data captured in transform feedback mode depends on the active > programs on each of the shader stages. If a program is active for the > geometry shader stage, transform feedback captures the vertices of > each primitive emitted by the geometry shader. Otherwise, if a program > is active for the tessellation evaluation shader stage, transform > feedback captures each primitive produced by the tessellation > primitive generator, whose vertices are processed by the tessellation > evaluation shader. Otherwise, transform feedback captures each > primitive processed by the vertex shader." > > Also, glBeginTransformFeedback doesn't allow GL_PATCHES, which is the > only output primitive type of the tessellation control shader: > > "primitiveMode must be TRIANGLES, LINES, or POINTS, and specifies the > output type of primitives that will be recorded into the buffer > objects bound for transform feedback" > > The question is: Is transform feedback really allowed after the > tessellation control shader? I hope not, because our hardware can't do > it. > > Thanks, > > Marek > > PS: The spec mentions "tesellation shader" twice. There is no > "tesellation shader" in OpenGL even if you ignore the bad spelling. > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev