mesa: enable GL_SELECT and GL_FEEDBACK modes for indirect draws

This enables the correct GL_SELECT/GL_FEEDBACK codepaths for indirect
draws.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26786>
This commit is contained in:
Marek Olšák
2022-12-31 22:39:55 -05:00
committed by Marge Bot
parent 1b09fbd9aa
commit dc69d797ba
2 changed files with 4 additions and 4 deletions
+1 -1
View File
@@ -2247,7 +2247,7 @@ _mesa_DrawTransformFeedbackStreamInstanced(GLenum mode, GLuint name,
info.mode = mode;
info.instance_count = primcount;
cso_draw_vbo(st_context(ctx)->cso_context, &info, 0, &indirect, &draw, 1);
ctx->Driver.DrawGallium(ctx, &info, 0, &indirect, &draw, 1);
if (MESA_DEBUG_FLAGS & DEBUG_ALWAYS_FLUSH) {
_mesa_flush(ctx);
+3 -3
View File
@@ -162,7 +162,7 @@ rewrite_partial_stride_indirect(struct st_context *st,
if (!new_draws)
return;
for (unsigned i = 0; i < draw_count; i++)
cso_draw_vbo(st->cso_context, &new_draws[i].info, i, NULL, &new_draws[i].draw, 1);
st->ctx->Driver.DrawGallium(st->ctx, &new_draws[i].info, i, NULL, &new_draws[i].draw, 1);
free(new_draws);
}
@@ -244,7 +244,7 @@ st_indirect_draw_vbo(struct gl_context *ctx,
indirect.draw_count = 1;
for (i = 0; i < draw_count; i++) {
cso_draw_vbo(st->cso_context, &info, i, &indirect, &draw, 1);
ctx->Driver.DrawGallium(ctx, &info, i, &indirect, &draw, 1);
indirect.offset += stride;
}
} else {
@@ -264,7 +264,7 @@ st_indirect_draw_vbo(struct gl_context *ctx,
indirect_draw_count->buffer;
indirect.indirect_draw_count_offset = indirect_draw_count_offset;
}
cso_draw_vbo(st->cso_context, &info, 0, &indirect, &draw, 1);
ctx->Driver.DrawGallium(ctx, &info, 0, &indirect, &draw, 1);
}
if (MESA_DEBUG_FLAGS & DEBUG_ALWAYS_FLUSH)