Fix tracking of dynamic offsets when binding multiple descriptor sets

Before this, when binding multiple sets that use dynamic offsets, the
wrong offsets would be stored for all sets other than the first. This
caused the wrong offsets to be used when replaying individual draws.
This commit is contained in:
Alex Smith
2017-09-12 16:16:26 +01:00
committed by Baldur Karlsson
parent 529dec8c65
commit aeb7a85895
@@ -1333,6 +1333,7 @@ bool WrappedVulkan::Serialise_vkCmdBindDescriptorSets(
descsets[first + i].descSet = descriptorIDs[i];
uint32_t dynCount = m_CreationInfo.m_DescSetLayout[descSetLayouts[first + i]].dynamicCount;
descsets[first + i].offsets.assign(offsIter, offsIter + dynCount);
offsIter += dynCount;
dynConsumed += dynCount;
RDCASSERT(dynConsumed <= offsCount);
}