diff --git a/renderdoc/driver/vulkan/vk_postvs.cpp b/renderdoc/driver/vulkan/vk_postvs.cpp index 6de2cf845..42543a755 100644 --- a/renderdoc/driver/vulkan/vk_postvs.cpp +++ b/renderdoc/driver/vulkan/vk_postvs.cpp @@ -1431,7 +1431,7 @@ void VulkanReplay::FetchVSOut(uint32_t eventId) const DescSetLayout::Binding &bind = origLayout.bindings[b]; // skip empty bindings - if(bind.descriptorCount == 0) + if(bind.descriptorCount == 0 || bind.stageFlags == 0) continue; // make room in the pool @@ -1537,7 +1537,7 @@ void VulkanReplay::FetchVSOut(uint32_t eventId) const DescSetLayout::Binding &bind = origLayout.bindings[b]; // skip empty bindings - if(bind.descriptorCount == 0) + if(bind.descriptorCount == 0 || bind.stageFlags == 0) continue; DescriptorSetSlot *slot = setInfo.currentBindings[b]; diff --git a/renderdoc/driver/vulkan/vk_state.cpp b/renderdoc/driver/vulkan/vk_state.cpp index 3f3f11000..c40d14457 100644 --- a/renderdoc/driver/vulkan/vk_state.cpp +++ b/renderdoc/driver/vulkan/vk_state.cpp @@ -446,7 +446,7 @@ void VulkanRenderState::BindDescriptorSet(const DescSetLayout &descLayout, VkCom VkWriteDescriptorSet push = {}; // skip if this binding isn't used - if(descLayout.bindings[b].descriptorCount == 0) + if(descLayout.bindings[b].descriptorCount == 0 || descLayout.bindings[b].stageFlags == 0) continue; push.sType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET;