[d3d11] Fix subtle bug in constant buffer rebinding

Previously, if the app called SetConstantBuffers1 with a non-zero
offset and a full UBO range, and then SetConstantBuffers with the
same buffer, we would not rebind that buffer at offset zero.
This commit is contained in:
Philip Rebohle 2022-07-14 15:14:25 +02:00
parent aef2eb14df
commit bcd2be0698
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
1 changed files with 1 additions and 1 deletions

View File

@ -3922,7 +3922,7 @@ namespace dxvk {
constantCount = std::min(newBuffer->Desc()->ByteWidth / 16, UINT(D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT));
if (Bindings[StartSlot + i].buffer != newBuffer
|| Bindings[StartSlot + i].constantCount != constantCount) {
|| Bindings[StartSlot + i].constantBound != constantCount) {
Bindings[StartSlot + i].buffer = newBuffer;
Bindings[StartSlot + i].constantOffset = 0;
Bindings[StartSlot + i].constantCount = constantCount;