From b2a52982d19c694bcc601f3803cc23f74810d7cf Mon Sep 17 00:00:00 2001 From: George Ouzounoudis Date: Wed, 9 Nov 2022 20:28:39 +0200 Subject: [PATCH] nvk: Set base vertex state in sequential mme draw We need to set base vertex state to zero before emitting a sequential draw call, if we have already emitted an indexed draw call that changed that state. Part-of: --- src/nouveau/vulkan/nvk_cmd_draw.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/nouveau/vulkan/nvk_cmd_draw.c b/src/nouveau/vulkan/nvk_cmd_draw.c index bcb3d94be69..de535d4ba97 100644 --- a/src/nouveau/vulkan/nvk_cmd_draw.c +++ b/src/nouveau/vulkan/nvk_cmd_draw.c @@ -1433,6 +1433,12 @@ nvk_build_mme_draw(struct mme_builder *b, struct mme_value begin) struct mme_value first_vertex = mme_load(b); struct mme_value first_instance = mme_load(b); + mme_mthd(b, NV9097_SET_GLOBAL_BASE_VERTEX_INDEX); + mme_emit(b, mme_zero()); + + mme_mthd(b, NV9097_SET_VERTEX_ID_BASE); + mme_emit(b, mme_zero()); + mme_mthd(b, NV9097_SET_GLOBAL_BASE_INSTANCE_INDEX); mme_emit(b, first_instance);