From 3bfbd1c6acc0d89deaed5a7c6208d3c8841b2368 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 9 Jan 2017 11:31:02 +0000 Subject: [PATCH] Only create VK Array <-> MS copy shaders if device has required features --- renderdoc/driver/vulkan/vk_debug.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/renderdoc/driver/vulkan/vk_debug.cpp b/renderdoc/driver/vulkan/vk_debug.cpp index 5284f8288..16a1cfc3d 100644 --- a/renderdoc/driver/vulkan/vk_debug.cpp +++ b/renderdoc/driver/vulkan/vk_debug.cpp @@ -1049,7 +1049,8 @@ VulkanDebugManager::VulkanDebugManager(WrappedVulkan *driver, VkDevice dev) RDCASSERTEQUAL(vkr, VK_SUCCESS); } - if(!texelFetchBrokenDriver) + if(!texelFetchBrokenDriver && m_pDriver->GetDeviceFeatures().shaderStorageImageMultisample && + m_pDriver->GetDeviceFeatures().shaderStorageImageWriteWithoutFormat) { compPipeInfo.stage.module = ms2arrayModule; compPipeInfo.layout = m_ArrayMSPipeLayout; @@ -1975,7 +1976,8 @@ VulkanDebugManager::VulkanDebugManager(WrappedVulkan *driver, VkDevice dev) RDCASSERTEQUAL(vkr, VK_SUCCESS); } - if(!texelFetchBrokenDriver) + if(!texelFetchBrokenDriver && m_pDriver->GetDeviceFeatures().shaderStorageImageMultisample && + m_pDriver->GetDeviceFeatures().shaderStorageImageWriteWithoutFormat) { compPipeInfo.stage.module = module[MS2ARRAYCS]; compPipeInfo.layout = m_ArrayMSPipeLayout;