From 548149b7efa452d19e10fb817258387fe549f63d Mon Sep 17 00:00:00 2001 From: Omar El Sheikh Date: Fri, 5 Mar 2021 16:47:04 -0500 Subject: [PATCH] Hook up EnumerateInstanceExtensionProps on Android Capture function for vkEnumerateInstanceExtensionProperties wasn't being called at all for the Android Layer There is still the issue of filtering not working and and VK_EXT_debug_utils isn't properly being exposed as an available extension due to differences with the Android Vulkan Loader and the common Vulkan Loader on desktop platforms still being investigated --- renderdoc/driver/vulkan/vk_layer_android.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/renderdoc/driver/vulkan/vk_layer_android.cpp b/renderdoc/driver/vulkan/vk_layer_android.cpp index d8768f4fc..0aa556d6d 100644 --- a/renderdoc/driver/vulkan/vk_layer_android.cpp +++ b/renderdoc/driver/vulkan/vk_layer_android.cpp @@ -42,7 +42,7 @@ extern "C" { -// these are in vk_tracelayer.cpp +// these are in vk_layer.cpp VK_LAYER_EXPORT VkResult VKAPI_CALL VK_LAYER_RENDERDOC_CaptureEnumerateDeviceLayerProperties( VkPhysicalDevice physicalDevice, uint32_t *pPropertyCount, VkLayerProperties *pProperties); @@ -50,6 +50,10 @@ VK_LAYER_EXPORT VkResult VKAPI_CALL VK_LAYER_RENDERDOC_CaptureEnumerateDeviceExt VkPhysicalDevice physicalDevice, const char *pLayerName, uint32_t *pPropertyCount, VkExtensionProperties *pProperties); +VK_LAYER_EXPORT VkResult VKAPI_CALL VK_LAYER_RENDERDOC_CaptureEnumerateInstanceExtensionProperties( + const VkEnumerateInstanceExtensionPropertiesChain *pChain, const char *pLayerName, + uint32_t *pPropertyCount, VkExtensionProperties *pProperties); + VK_LAYER_EXPORT VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties(VkPhysicalDevice physicalDevice, uint32_t *pPropertyCount, VkLayerProperties *pProperties) @@ -78,10 +82,7 @@ VK_LAYER_EXPORT VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties(uint32_t VK_LAYER_EXPORT VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties( const char *pLayerName, uint32_t *pPropertyCount, VkExtensionProperties *pProperties) { - // we don't export any instance extensions - if(pPropertyCount) - *pPropertyCount = 0; - - return VK_SUCCESS; + return VK_LAYER_RENDERDOC_CaptureEnumerateInstanceExtensionProperties( + VK_NULL_HANDLE, pLayerName, pPropertyCount, pProperties); } }