diff --git a/renderdoc/driver/vulkan/vk_state.cpp b/renderdoc/driver/vulkan/vk_state.cpp index 6b40a6820..496f5a13c 100644 --- a/renderdoc/driver/vulkan/vk_state.cpp +++ b/renderdoc/driver/vulkan/vk_state.cpp @@ -893,6 +893,9 @@ void VulkanRenderState::BindDescriptorSet(WrappedVulkan *vk, const DescSetLayout dst[a].imageLayout = convert(slots[a].imageLayout); dst[a].sampler = Unwrap(rm->GetCurrentHandle(slots[a].sampler)); dst[a].imageView = Unwrap(rm->GetCurrentHandle(slots[a].resource)); + + if(layoutBind.immutableSampler && push.descriptorType != VK_DESCRIPTOR_TYPE_SAMPLER) + dst[a].sampler = Unwrap(rm->GetCurrentHandle(layoutBind.immutableSampler[a])); } push.pImageInfo = dst;