mesa/*: use an internal enum for tessellation primitive types.
To avoid dragging gl.h into places it has no business being, defined tessellation primitive mode to an enum. This has a lot of fallout all over the place. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14605>
This commit is contained in:
@@ -1829,9 +1829,20 @@ set_shader_inout_layout(struct gl_shader *shader,
|
||||
}
|
||||
break;
|
||||
case MESA_SHADER_TESS_EVAL:
|
||||
shader->info.TessEval.PrimitiveMode = PRIM_UNKNOWN;
|
||||
if (state->in_qualifier->flags.q.prim_type)
|
||||
shader->info.TessEval.PrimitiveMode = state->in_qualifier->prim_type;
|
||||
shader->info.TessEval._PrimitiveMode = TESS_PRIMITIVE_UNSPECIFIED;
|
||||
if (state->in_qualifier->flags.q.prim_type) {
|
||||
switch (state->in_qualifier->prim_type) {
|
||||
case GL_TRIANGLES:
|
||||
shader->info.TessEval._PrimitiveMode = TESS_PRIMITIVE_TRIANGLES;
|
||||
break;
|
||||
case GL_QUADS:
|
||||
shader->info.TessEval._PrimitiveMode = TESS_PRIMITIVE_QUADS;
|
||||
break;
|
||||
case GL_ISOLINES:
|
||||
shader->info.TessEval._PrimitiveMode = TESS_PRIMITIVE_ISOLINES;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
shader->info.TessEval.Spacing = TESS_SPACING_UNSPECIFIED;
|
||||
if (state->in_qualifier->flags.q.vertex_spacing)
|
||||
|
||||
Reference in New Issue
Block a user