From aa791d3306882712a1edaa0e9f850e59d37f8217 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 9 Sep 2019 11:19:08 +0100 Subject: [PATCH] Fix handling of unbound descriptor sets, assume statically not used --- renderdoc/driver/vulkan/vk_postvs.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/renderdoc/driver/vulkan/vk_postvs.cpp b/renderdoc/driver/vulkan/vk_postvs.cpp index d956ac3d3..92a5d00dd 100644 --- a/renderdoc/driver/vulkan/vk_postvs.cpp +++ b/renderdoc/driver/vulkan/vk_postvs.cpp @@ -1244,7 +1244,8 @@ void VulkanReplay::PatchReservedDescriptors(const VulkanStatePipeline &pipe, // if the shader had no descriptor sets at all, i will be invalid, so just skip and add a set // with only our own bindings. - if(i < pipeDescSetLayouts.size() && i < pipe.descSets.size()) + if(i < pipeDescSetLayouts.size() && i < pipe.descSets.size() && + pipe.descSets[i].pipeLayout != ResourceId()) { // use the descriptor set layout from when it was bound. If the pipeline layout declared a // descriptor set layout for this set, but it's statically unused, it may be complete