diff --git a/vulkan/vulkan_debug_report.cc b/vulkan/vulkan_debug_report.cc index d2240f81e51de83ba573c37bd3fdad416b241af0..09c8f12f2a698d8988926d6c5e4f3bae97f08a22 100644 --- a/vulkan/vulkan_debug_report.cc +++ b/vulkan/vulkan_debug_report.cc @@ -224,10 +224,13 @@ VulkanDebugReport::VulkanDebugReport( return; } + VkDebugReportFlagsEXT flags = kVulkanErrorFlags; + if (ValidationLayerInfoMessagesEnabled()) + flags |= kVulkanInfoFlags; const VkDebugReportCallbackCreateInfoEXT create_info = { .sType = VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT, .pNext = nullptr, - .flags = kVulkanErrorFlags | kVulkanInfoFlags, + .flags = flags, .pfnCallback = &vulkan::OnVulkanDebugReportCallback, .pUserData = nullptr, }; diff --git a/vulkan/vulkan_utilities.cc b/vulkan/vulkan_utilities.cc index 2a5dcd47a8f3dd94907320bdb97584ca278cae5a..48be855a3109d2c3199ec60a723056d552ab75e5 100644 --- a/vulkan/vulkan_utilities.cc +++ b/vulkan/vulkan_utilities.cc @@ -10,10 +10,6 @@ namespace vulkan { bool IsDebuggingEnabled() { -#if OS_FUCHSIA - return false; -#endif - #ifndef NDEBUG return true; #else @@ -21,6 +17,12 @@ bool IsDebuggingEnabled() { #endif } +// Whether to show Vulkan validation layer info messages in addition +// to the error messages. +bool ValidationLayerInfoMessagesEnabled() { + return false; +} + static std::vector InstanceOrDeviceLayersToEnable( const VulkanProcTable& vk, VkPhysicalDevice physical_device) { diff --git a/vulkan/vulkan_utilities.h b/vulkan/vulkan_utilities.h index cbd445202b3bd782e2a7d5cf4a912e58aa46563e..1ea80234f2f975709513a919317834e192ecf35b 100644 --- a/vulkan/vulkan_utilities.h +++ b/vulkan/vulkan_utilities.h @@ -15,6 +15,7 @@ namespace vulkan { bool IsDebuggingEnabled(); +bool ValidationLayerInfoMessagesEnabled(); std::vector InstanceLayersToEnable(const VulkanProcTable& vk);