Module: Mesa Branch: master Commit: ea49c9dabc874e5dc0a0c669dfb650c3d1294d19 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ea49c9dabc874e5dc0a0c669dfb650c3d1294d19
Author: Ilia Mirkin <[email protected]> Date: Sat Apr 3 01:10:14 2021 -0400 nv50: emulate indirect draws This is helpful for allowing ES 3.1 to work, as this is required. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Karol Herbst <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10162> --- src/gallium/drivers/nouveau/nv50/nv50_vbo.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/gallium/drivers/nouveau/nv50/nv50_vbo.c b/src/gallium/drivers/nouveau/nv50/nv50_vbo.c index cab3b3dc55b..fd2c6e119be 100644 --- a/src/gallium/drivers/nouveau/nv50/nv50_vbo.c +++ b/src/gallium/drivers/nouveau/nv50/nv50_vbo.c @@ -770,6 +770,14 @@ nv50_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info, if (!indirect && (!draws[0].count || !info->instance_count)) return; + /* We don't actually support indirect draws, so add a fallback for ES 3.1's + * benefit. + */ + if (indirect && indirect->buffer) { + util_draw_indirect(pipe, info, indirect); + return; + } + struct nv50_context *nv50 = nv50_context(pipe); struct nouveau_pushbuf *push = nv50->base.pushbuf; bool tex_dirty = false; _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
