From ea0de0c06546bebec91a337f5fb9fb1ddbf348af Mon Sep 17 00:00:00 2001 From: baldurk Date: Tue, 28 Jan 2020 10:37:09 +0000 Subject: [PATCH] Conditionally enable bufferDeviceAddressCaptureReplay in VK1.2 features * This struct might be passed without the parent bufferDeviceAddress feature being enabled, e.g. if capture replay wasn't supported and we claimed no support, or if there's really no support. We can't unconditionally enable capture replay like we can with the extension structs (which are only passed if the extension is available, and we only allow it to be available if the feature is available). --- renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp index 4e62f8b3c..a5fb4db8a 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp @@ -3188,7 +3188,7 @@ VkResult WrappedVulkan::vkCreateDevice(VkPhysicalDevice physicalDevice, // we must turn on bufferDeviceAddressCaptureReplay. We verified that this feature was available // before we whitelisted the extension/feature - if(enabledFeaturesVK12) + if(enabledFeaturesVK12 && enabledFeaturesVK12->bufferDeviceAddress) enabledFeaturesVK12->bufferDeviceAddressCaptureReplay = VK_TRUE; if(bufferAddressFeaturesCoreKHR)