From 80012d4df398b470f019fb6475c2f38a3f22ca35 Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Fri, 30 Aug 2024 10:45:48 +0200 Subject: [PATCH] rhi: d3d11: Do not ignore firstInstance>0 when instanceCount==1 Pick-to: 6.7 6.6 6.5 Change-Id: I145c2080b914712d8629cd29eb7d228050884cbf Reviewed-by: Andy Nichols (cherry picked from commit e0f9cf13f238f0b2132bb87660e9b5ba25e7b847) Reviewed-by: Qt Cherry-pick Bot --- src/gui/rhi/qrhid3d11.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gui/rhi/qrhid3d11.cpp b/src/gui/rhi/qrhid3d11.cpp index ba9104fe725..bc07f109053 100644 --- a/src/gui/rhi/qrhid3d11.cpp +++ b/src/gui/rhi/qrhid3d11.cpp @@ -2883,7 +2883,7 @@ void QRhiD3D11::executeCommandBuffer(QD3D11CommandBuffer *cbD) break; case QD3D11CommandBuffer::Command::Draw: if (cmd.args.draw.ps) { - if (cmd.args.draw.instanceCount == 1) + if (cmd.args.draw.instanceCount == 1 && cmd.args.draw.firstInstance == 0) context->Draw(cmd.args.draw.vertexCount, cmd.args.draw.firstVertex); else context->DrawInstanced(cmd.args.draw.vertexCount, cmd.args.draw.instanceCount, @@ -2894,7 +2894,7 @@ void QRhiD3D11::executeCommandBuffer(QD3D11CommandBuffer *cbD) break; case QD3D11CommandBuffer::Command::DrawIndexed: if (cmd.args.drawIndexed.ps) { - if (cmd.args.drawIndexed.instanceCount == 1) + if (cmd.args.drawIndexed.instanceCount == 1 && cmd.args.drawIndexed.firstInstance == 0) context->DrawIndexed(cmd.args.drawIndexed.indexCount, cmd.args.drawIndexed.firstIndex, cmd.args.drawIndexed.vertexOffset); else