diff --git a/RAII_Samples/utils/utils.hpp b/RAII_Samples/utils/utils.hpp index da30920..23858f7 100644 --- a/RAII_Samples/utils/utils.hpp +++ b/RAII_Samples/utils/utils.hpp @@ -260,9 +260,11 @@ namespace vk copyToDevice( *stagingBuffer.deviceMemory, data.data(), data.size(), elementSize ); vk::raii::su::oneTimeSubmit( - device, commandPool, queue, [&]( vk::raii::CommandBuffer const & commandBuffer ) { - commandBuffer.copyBuffer( **stagingBuffer.buffer, **this->buffer, vk::BufferCopy( 0, 0, dataSize ) ); - } ); + device, + commandPool, + queue, + [&]( vk::raii::CommandBuffer const & commandBuffer ) + { commandBuffer.copyBuffer( **stagingBuffer.buffer, **this->buffer, vk::BufferCopy( 0, 0, dataSize ) ); } ); } std::unique_ptr buffer; @@ -634,10 +636,11 @@ namespace vk std::vector const & poolSizes ) { assert( !poolSizes.empty() ); - uint32_t maxSets = std::accumulate( - poolSizes.begin(), poolSizes.end(), 0, []( uint32_t sum, vk::DescriptorPoolSize const & dps ) { - return sum + dps.descriptorCount; - } ); + uint32_t maxSets = std::accumulate( poolSizes.begin(), + poolSizes.end(), + 0, + []( uint32_t sum, vk::DescriptorPoolSize const & dps ) + { return sum + dps.descriptorCount; } ); assert( 0 < maxSets ); vk::DescriptorPoolCreateInfo descriptorPoolCreateInfo( @@ -853,10 +856,19 @@ namespace vk uint32_t apiVersion = VK_API_VERSION_1_0 ) { vk::ApplicationInfo applicationInfo( appName.c_str(), 1, engineName.c_str(), 1, apiVersion ); - std::vector enabledLayers = - vk::su::gatherLayers( layers, context.enumerateInstanceLayerProperties() ); + std::vector enabledLayers = vk::su::gatherLayers( layers +#if !defined( NDEBUG ) + , + context.enumerateInstanceLayerProperties() +#endif + ); std::vector enabledExtensions = - vk::su::gatherExtensions( extensions, context.enumerateInstanceExtensionProperties() ); + vk::su::gatherExtensions( extensions +#if !defined( NDEBUG ) + , + context.enumerateInstanceExtensionProperties() +#endif + ); #if defined( NDEBUG ) vk::StructureChain #else diff --git a/samples/02_EnumerateDevices/02_EnumerateDevices.cpp b/samples/02_EnumerateDevices/02_EnumerateDevices.cpp index f9aef8a..46f2969 100644 --- a/samples/02_EnumerateDevices/02_EnumerateDevices.cpp +++ b/samples/02_EnumerateDevices/02_EnumerateDevices.cpp @@ -49,7 +49,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_HPP_KEY_END */ +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/03_InitDevice/03_InitDevice.cpp b/samples/03_InitDevice/03_InitDevice.cpp index 1499505..355f210 100644 --- a/samples/03_InitDevice/03_InitDevice.cpp +++ b/samples/03_InitDevice/03_InitDevice.cpp @@ -59,7 +59,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroy(); /* VULKAN_HPP_KEY_END */ +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/04_InitCommandBuffer/04_InitCommandBuffer.cpp b/samples/04_InitCommandBuffer/04_InitCommandBuffer.cpp index 08121ef..330b663 100644 --- a/samples/04_InitCommandBuffer/04_InitCommandBuffer.cpp +++ b/samples/04_InitCommandBuffer/04_InitCommandBuffer.cpp @@ -60,7 +60,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_HPP_KEY_END */ device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/05_InitSwapchain/05_InitSwapchain.cpp b/samples/05_InitSwapchain/05_InitSwapchain.cpp index 66bb904..5ff5aca 100644 --- a/samples/05_InitSwapchain/05_InitSwapchain.cpp +++ b/samples/05_InitSwapchain/05_InitSwapchain.cpp @@ -187,7 +187,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_HPP_KEY_END */ device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/06_InitDepthBuffer/06_InitDepthBuffer.cpp b/samples/06_InitDepthBuffer/06_InitDepthBuffer.cpp index d4a9834..04ef430 100644 --- a/samples/06_InitDepthBuffer/06_InitDepthBuffer.cpp +++ b/samples/06_InitDepthBuffer/06_InitDepthBuffer.cpp @@ -111,7 +111,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/07_InitUniformBuffer/07_InitUniformBuffer.cpp b/samples/07_InitUniformBuffer/07_InitUniformBuffer.cpp index 5cdf34e..049468e 100644 --- a/samples/07_InitUniformBuffer/07_InitUniformBuffer.cpp +++ b/samples/07_InitUniformBuffer/07_InitUniformBuffer.cpp @@ -90,7 +90,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_HPP_KEY_END */ device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/08_InitPipelineLayout/08_InitPipelineLayout.cpp b/samples/08_InitPipelineLayout/08_InitPipelineLayout.cpp index 0c6fd1d..6a249eb 100644 --- a/samples/08_InitPipelineLayout/08_InitPipelineLayout.cpp +++ b/samples/08_InitPipelineLayout/08_InitPipelineLayout.cpp @@ -58,7 +58,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_HPP_KEY_END */ device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/09_InitDescriptorSet/09_InitDescriptorSet.cpp b/samples/09_InitDescriptorSet/09_InitDescriptorSet.cpp index 3a12ace..1889ab8 100644 --- a/samples/09_InitDescriptorSet/09_InitDescriptorSet.cpp +++ b/samples/09_InitDescriptorSet/09_InitDescriptorSet.cpp @@ -84,7 +84,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyDescriptorSetLayout( descriptorSetLayout ); uniformBufferData.clear( device ); device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/10_InitRenderPass/10_InitRenderPass.cpp b/samples/10_InitRenderPass/10_InitRenderPass.cpp index 2613d50..b650bc7 100644 --- a/samples/10_InitRenderPass/10_InitRenderPass.cpp +++ b/samples/10_InitRenderPass/10_InitRenderPass.cpp @@ -94,7 +94,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/11_InitShaders/11_InitShaders.cpp b/samples/11_InitShaders/11_InitShaders.cpp index 2593751..4a300e6 100644 --- a/samples/11_InitShaders/11_InitShaders.cpp +++ b/samples/11_InitShaders/11_InitShaders.cpp @@ -67,7 +67,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_HPP_KEY_END */ device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/12_InitFrameBuffers/12_InitFrameBuffers.cpp b/samples/12_InitFrameBuffers/12_InitFrameBuffers.cpp index 016c585..13a6bbf 100644 --- a/samples/12_InitFrameBuffers/12_InitFrameBuffers.cpp +++ b/samples/12_InitFrameBuffers/12_InitFrameBuffers.cpp @@ -83,7 +83,9 @@ int main( int /*argc*/, char ** /*argv*/ ) swapChainData.clear( device ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/13_InitVertexBuffer/13_InitVertexBuffer.cpp b/samples/13_InitVertexBuffer/13_InitVertexBuffer.cpp index 5ee0da4..9a06a86 100644 --- a/samples/13_InitVertexBuffer/13_InitVertexBuffer.cpp +++ b/samples/13_InitVertexBuffer/13_InitVertexBuffer.cpp @@ -132,7 +132,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/14_InitPipeline/14_InitPipeline.cpp b/samples/14_InitPipeline/14_InitPipeline.cpp index 57b0092..c7176a7 100644 --- a/samples/14_InitPipeline/14_InitPipeline.cpp +++ b/samples/14_InitPipeline/14_InitPipeline.cpp @@ -195,7 +195,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyRenderPass( renderPass ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/15_DrawCube/15_DrawCube.cpp b/samples/15_DrawCube/15_DrawCube.cpp index b4d2fa8..4c7fb1e 100644 --- a/samples/15_DrawCube/15_DrawCube.cpp +++ b/samples/15_DrawCube/15_DrawCube.cpp @@ -203,7 +203,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/16_Vulkan_1_1/16_Vulkan_1_1.cpp b/samples/16_Vulkan_1_1/16_Vulkan_1_1.cpp index 9fb121a..cc020d3 100644 --- a/samples/16_Vulkan_1_1/16_Vulkan_1_1.cpp +++ b/samples/16_Vulkan_1_1/16_Vulkan_1_1.cpp @@ -89,7 +89,9 @@ int main( int /*argc*/, char ** /*argv*/ ) usingMinorVersion = desiredMinorVersion; } +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } diff --git a/samples/CopyBlitImage/CopyBlitImage.cpp b/samples/CopyBlitImage/CopyBlitImage.cpp index 0d2f671..9a8796e 100644 --- a/samples/CopyBlitImage/CopyBlitImage.cpp +++ b/samples/CopyBlitImage/CopyBlitImage.cpp @@ -251,7 +251,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/CreateDebugUtilsMessenger/CreateDebugUtilsMessenger.cpp b/samples/CreateDebugUtilsMessenger/CreateDebugUtilsMessenger.cpp index f8fc3a3..4d64a07 100644 --- a/samples/CreateDebugUtilsMessenger/CreateDebugUtilsMessenger.cpp +++ b/samples/CreateDebugUtilsMessenger/CreateDebugUtilsMessenger.cpp @@ -153,7 +153,9 @@ int main( int /*argc*/, char ** /*argv*/ ) vk::DebugUtilsMessengerEXT debugUtilsMessenger = instance.createDebugUtilsMessengerEXT( vk::DebugUtilsMessengerCreateInfoEXT( {}, severityFlags, messageTypeFlags, &debugMessageFunc ) ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); /* VULKAN_KEY_END */ diff --git a/samples/DebugUtilsObjectName/DebugUtilsObjectName.cpp b/samples/DebugUtilsObjectName/DebugUtilsObjectName.cpp index bc51d69..d544122 100644 --- a/samples/DebugUtilsObjectName/DebugUtilsObjectName.cpp +++ b/samples/DebugUtilsObjectName/DebugUtilsObjectName.cpp @@ -66,7 +66,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyImage( image ); device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/DrawTexturedCube/DrawTexturedCube.cpp b/samples/DrawTexturedCube/DrawTexturedCube.cpp index ddc16fb..7d0b30d 100644 --- a/samples/DrawTexturedCube/DrawTexturedCube.cpp +++ b/samples/DrawTexturedCube/DrawTexturedCube.cpp @@ -211,7 +211,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/DynamicUniform/DynamicUniform.cpp b/samples/DynamicUniform/DynamicUniform.cpp index 2303faa..c7e7348 100644 --- a/samples/DynamicUniform/DynamicUniform.cpp +++ b/samples/DynamicUniform/DynamicUniform.cpp @@ -257,7 +257,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/EnableValidationWithCallback/EnableValidationWithCallback.cpp b/samples/EnableValidationWithCallback/EnableValidationWithCallback.cpp index 5e87670..4c0e7ee 100644 --- a/samples/EnableValidationWithCallback/EnableValidationWithCallback.cpp +++ b/samples/EnableValidationWithCallback/EnableValidationWithCallback.cpp @@ -205,7 +205,9 @@ int main( int /*argc*/, char ** /*argv*/ ) #endif device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); /* VULKAN_KEY_END */ diff --git a/samples/EnumerateDevicesAdvanced/EnumerateDevicesAdvanced.cpp b/samples/EnumerateDevicesAdvanced/EnumerateDevicesAdvanced.cpp index b1b7cba..a62da9e 100644 --- a/samples/EnumerateDevicesAdvanced/EnumerateDevicesAdvanced.cpp +++ b/samples/EnumerateDevicesAdvanced/EnumerateDevicesAdvanced.cpp @@ -65,7 +65,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_HPP_KEY_END */ +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/Events/Events.cpp b/samples/Events/Events.cpp index 16c1193..a7639aa 100644 --- a/samples/Events/Events.cpp +++ b/samples/Events/Events.cpp @@ -142,7 +142,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.freeCommandBuffers( commandPool, commandBuffer ); device.destroyCommandPool( commandPool ); device.destroy(); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/ImmutableSampler/ImmutableSampler.cpp b/samples/ImmutableSampler/ImmutableSampler.cpp index fed8239..83a635c 100644 --- a/samples/ImmutableSampler/ImmutableSampler.cpp +++ b/samples/ImmutableSampler/ImmutableSampler.cpp @@ -227,7 +227,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/InitTexture/InitTexture.cpp b/samples/InitTexture/InitTexture.cpp index 4e13ef4..eea6fd6 100644 --- a/samples/InitTexture/InitTexture.cpp +++ b/samples/InitTexture/InitTexture.cpp @@ -213,7 +213,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/InputAttachment/InputAttachment.cpp b/samples/InputAttachment/InputAttachment.cpp index b8bb6fb..fa60166 100644 --- a/samples/InputAttachment/InputAttachment.cpp +++ b/samples/InputAttachment/InputAttachment.cpp @@ -306,7 +306,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/MultipleSets/MultipleSets.cpp b/samples/MultipleSets/MultipleSets.cpp index 0db298a..6d1c3f9 100644 --- a/samples/MultipleSets/MultipleSets.cpp +++ b/samples/MultipleSets/MultipleSets.cpp @@ -294,7 +294,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/OcclusionQuery/OcclusionQuery.cpp b/samples/OcclusionQuery/OcclusionQuery.cpp index 24c59fa..add827a 100644 --- a/samples/OcclusionQuery/OcclusionQuery.cpp +++ b/samples/OcclusionQuery/OcclusionQuery.cpp @@ -273,7 +273,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PhysicalDeviceExtensions/PhysicalDeviceExtensions.cpp b/samples/PhysicalDeviceExtensions/PhysicalDeviceExtensions.cpp index e555326..425bfef 100644 --- a/samples/PhysicalDeviceExtensions/PhysicalDeviceExtensions.cpp +++ b/samples/PhysicalDeviceExtensions/PhysicalDeviceExtensions.cpp @@ -60,7 +60,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_KEY_END */ +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PhysicalDeviceFeatures/PhysicalDeviceFeatures.cpp b/samples/PhysicalDeviceFeatures/PhysicalDeviceFeatures.cpp index b6aa06e..d44ee9f 100644 --- a/samples/PhysicalDeviceFeatures/PhysicalDeviceFeatures.cpp +++ b/samples/PhysicalDeviceFeatures/PhysicalDeviceFeatures.cpp @@ -810,7 +810,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_KEY_END */ +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PhysicalDeviceGroups/PhysicalDeviceGroups.cpp b/samples/PhysicalDeviceGroups/PhysicalDeviceGroups.cpp index 31f1012..7a78c79 100644 --- a/samples/PhysicalDeviceGroups/PhysicalDeviceGroups.cpp +++ b/samples/PhysicalDeviceGroups/PhysicalDeviceGroups.cpp @@ -87,7 +87,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_KEY_END */ +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PhysicalDeviceProperties/PhysicalDeviceProperties.cpp b/samples/PhysicalDeviceProperties/PhysicalDeviceProperties.cpp index e6d1f61..581c299 100644 --- a/samples/PhysicalDeviceProperties/PhysicalDeviceProperties.cpp +++ b/samples/PhysicalDeviceProperties/PhysicalDeviceProperties.cpp @@ -1268,7 +1268,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_KEY_END */ +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PhysicalDeviceQueueFamilyProperties/PhysicalDeviceQueueFamilyProperties.cpp b/samples/PhysicalDeviceQueueFamilyProperties/PhysicalDeviceQueueFamilyProperties.cpp index cedcfd5..768bbfd 100644 --- a/samples/PhysicalDeviceQueueFamilyProperties/PhysicalDeviceQueueFamilyProperties.cpp +++ b/samples/PhysicalDeviceQueueFamilyProperties/PhysicalDeviceQueueFamilyProperties.cpp @@ -89,7 +89,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_KEY_END */ +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PipelineCache/PipelineCache.cpp b/samples/PipelineCache/PipelineCache.cpp index 1bcb86c..1a0f98d 100644 --- a/samples/PipelineCache/PipelineCache.cpp +++ b/samples/PipelineCache/PipelineCache.cpp @@ -409,7 +409,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PipelineDerivative/PipelineDerivative.cpp b/samples/PipelineDerivative/PipelineDerivative.cpp index c47fd3c..41b1d40 100644 --- a/samples/PipelineDerivative/PipelineDerivative.cpp +++ b/samples/PipelineDerivative/PipelineDerivative.cpp @@ -347,7 +347,9 @@ void main() device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PushConstants/PushConstants.cpp b/samples/PushConstants/PushConstants.cpp index 11c71d7..5d984c5 100644 --- a/samples/PushConstants/PushConstants.cpp +++ b/samples/PushConstants/PushConstants.cpp @@ -272,7 +272,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/PushDescriptors/PushDescriptors.cpp b/samples/PushDescriptors/PushDescriptors.cpp index 5d4432c..0a2f605 100644 --- a/samples/PushDescriptors/PushDescriptors.cpp +++ b/samples/PushDescriptors/PushDescriptors.cpp @@ -250,7 +250,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/RayTracing/RayTracing.cpp b/samples/RayTracing/RayTracing.cpp index 8408033..c937a7a 100644 --- a/samples/RayTracing/RayTracing.cpp +++ b/samples/RayTracing/RayTracing.cpp @@ -1407,7 +1407,9 @@ int main( int /*argc*/, char ** /*argv*/ ) } device.destroy(); instance.destroySurfaceKHR( surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); glfwDestroyWindow( window ); diff --git a/samples/SecondaryCommandBuffer/SecondaryCommandBuffer.cpp b/samples/SecondaryCommandBuffer/SecondaryCommandBuffer.cpp index b8cda71..9778f32 100644 --- a/samples/SecondaryCommandBuffer/SecondaryCommandBuffer.cpp +++ b/samples/SecondaryCommandBuffer/SecondaryCommandBuffer.cpp @@ -279,7 +279,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/SeparateImageSampler/SeparateImageSampler.cpp b/samples/SeparateImageSampler/SeparateImageSampler.cpp index e0cbbe1..47c83e2 100644 --- a/samples/SeparateImageSampler/SeparateImageSampler.cpp +++ b/samples/SeparateImageSampler/SeparateImageSampler.cpp @@ -296,7 +296,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/SurfaceCapabilities/SurfaceCapabilities.cpp b/samples/SurfaceCapabilities/SurfaceCapabilities.cpp index a3320fa..21f4257 100644 --- a/samples/SurfaceCapabilities/SurfaceCapabilities.cpp +++ b/samples/SurfaceCapabilities/SurfaceCapabilities.cpp @@ -167,7 +167,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_KEY_END */ instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/SurfaceFormats/SurfaceFormats.cpp b/samples/SurfaceFormats/SurfaceFormats.cpp index 10d63c4..b1791bc 100644 --- a/samples/SurfaceFormats/SurfaceFormats.cpp +++ b/samples/SurfaceFormats/SurfaceFormats.cpp @@ -62,7 +62,9 @@ int main( int /*argc*/, char ** /*argv*/ ) /* VULKAN_KEY_END */ instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/Template/Template.cpp b/samples/Template/Template.cpp index eff16ac..745cfcd 100644 --- a/samples/Template/Template.cpp +++ b/samples/Template/Template.cpp @@ -208,7 +208,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/TexelBuffer/TexelBuffer.cpp b/samples/TexelBuffer/TexelBuffer.cpp index 3683214..de710e2 100644 --- a/samples/TexelBuffer/TexelBuffer.cpp +++ b/samples/TexelBuffer/TexelBuffer.cpp @@ -238,7 +238,9 @@ int main( int /*argc*/, char ** /*argv*/ ) device.destroyCommandPool( commandPool ); device.destroy(); instance.destroySurfaceKHR( surfaceData.surface ); +#if !defined( NDEBUG ) instance.destroyDebugUtilsMessengerEXT( debugUtilsMessenger ); +#endif instance.destroy(); } catch ( vk::SystemError & err ) diff --git a/samples/utils/utils.cpp b/samples/utils/utils.cpp index c3064d3..2b70ef0 100644 --- a/samples/utils/utils.cpp +++ b/samples/utils/utils.cpp @@ -51,10 +51,10 @@ namespace vk bool contains( std::vector const & extensionProperties, std::string const & extensionName ) { - auto propertyIterator = std::find_if( - extensionProperties.begin(), extensionProperties.end(), [&extensionName]( vk::ExtensionProperties const & ep ) { - return extensionName == ep.extensionName; - } ); + auto propertyIterator = std::find_if( extensionProperties.begin(), + extensionProperties.end(), + [&extensionName]( vk::ExtensionProperties const & ep ) + { return extensionName == ep.extensionName; } ); return ( propertyIterator != extensionProperties.end() ); } @@ -75,9 +75,10 @@ namespace vk { assert( !poolSizes.empty() ); uint32_t maxSets = - std::accumulate( poolSizes.begin(), poolSizes.end(), 0, []( uint32_t sum, vk::DescriptorPoolSize const & dps ) { - return sum + dps.descriptorCount; - } ); + std::accumulate( poolSizes.begin(), + poolSizes.end(), + 0, + []( uint32_t sum, vk::DescriptorPoolSize const & dps ) { return sum + dps.descriptorCount; } ); assert( 0 < maxSets ); vk::DescriptorPoolCreateInfo descriptorPoolCreateInfo( @@ -273,18 +274,19 @@ namespace vk enabledExtensions.reserve( extensions.size() ); for ( auto const & ext : extensions ) { - assert( std::find_if( - extensionProperties.begin(), extensionProperties.end(), [ext]( vk::ExtensionProperties const & ep ) { - return ext == ep.extensionName; - } ) != extensionProperties.end() ); + assert( std::find_if( extensionProperties.begin(), + extensionProperties.end(), + [ext]( vk::ExtensionProperties const & ep ) + { return ext == ep.extensionName; } ) != extensionProperties.end() ); enabledExtensions.push_back( ext.data() ); } #if !defined( NDEBUG ) if ( std::find( extensions.begin(), extensions.end(), VK_EXT_DEBUG_UTILS_EXTENSION_NAME ) == extensions.end() && - std::find_if( - extensionProperties.begin(), extensionProperties.end(), []( vk::ExtensionProperties const & ep ) { - return ( strcmp( VK_EXT_DEBUG_UTILS_EXTENSION_NAME, ep.extensionName ) == 0 ); - } ) != extensionProperties.end() ) + std::find_if( extensionProperties.begin(), + extensionProperties.end(), + []( vk::ExtensionProperties const & ep ) { + return ( strcmp( VK_EXT_DEBUG_UTILS_EXTENSION_NAME, ep.extensionName ) == 0 ); + } ) != extensionProperties.end() ) { enabledExtensions.push_back( VK_EXT_DEBUG_UTILS_EXTENSION_NAME ); } @@ -303,18 +305,20 @@ namespace vk enabledLayers.reserve( layers.size() ); for ( auto const & layer : layers ) { - assert( - std::find_if( layerProperties.begin(), layerProperties.end(), [layer]( vk::LayerProperties const & lp ) { - return layer == lp.layerName; - } ) != layerProperties.end() ); + assert( std::find_if( layerProperties.begin(), + layerProperties.end(), + [layer]( vk::LayerProperties const & lp ) + { return layer == lp.layerName; } ) != layerProperties.end() ); enabledLayers.push_back( layer.data() ); } #if !defined( NDEBUG ) // Enable standard validation layer to find as much errors as possible! if ( std::find( layers.begin(), layers.end(), "VK_LAYER_KHRONOS_validation" ) == layers.end() && - std::find_if( layerProperties.begin(), layerProperties.end(), []( vk::LayerProperties const & lp ) { - return ( strcmp( "VK_LAYER_KHRONOS_validation", lp.layerName ) == 0 ); - } ) != layerProperties.end() ) + std::find_if( layerProperties.begin(), + layerProperties.end(), + []( vk::LayerProperties const & lp ) { + return ( strcmp( "VK_LAYER_KHRONOS_validation", lp.layerName ) == 0 ); + } ) != layerProperties.end() ) { enabledLayers.push_back( "VK_LAYER_KHRONOS_validation" ); } @@ -336,9 +340,18 @@ namespace vk #endif vk::ApplicationInfo applicationInfo( appName.c_str(), 1, engineName.c_str(), 1, apiVersion ); - std::vector enabledLayers = vk::su::gatherLayers( layers, vk::enumerateInstanceLayerProperties() ); - std::vector enabledExtensions = - vk::su::gatherExtensions( extensions, vk::enumerateInstanceExtensionProperties() ); + std::vector enabledLayers = vk::su::gatherLayers( layers +#if !defined( NDEBUG ) + , + vk::enumerateInstanceLayerProperties() +#endif + ); + std::vector enabledExtensions = vk::su::gatherExtensions( extensions +#if !defined( NDEBUG ) + , + vk::enumerateInstanceExtensionProperties() +#endif + ); #if defined( NDEBUG ) // in non-debug mode just use the InstanceCreateInfo for instance creation @@ -352,7 +365,7 @@ namespace vk vk::DebugUtilsMessageTypeFlagBitsEXT::ePerformance | vk::DebugUtilsMessageTypeFlagBitsEXT::eValidation ); # if defined( VULKAN_HPP_UTILS_USE_BEST_PRACTICES ) - vk::ValidationFeatureEnableEXT validationFeatureEnable = vk::ValidationFeatureEnableEXT::eBestPractices; + vk::ValidationFeatureEnableEXT validationFeatureEnable = vk::ValidationFeatureEnableEXT::eBestPractices; vk::StructureChain instanceCreateInfo( { {}, &applicationInfo, enabledLayers, enabledExtensions }, { {}, severityFlags, messageTypeFlags, &vk::su::debugUtilsMessengerCallback }, @@ -492,9 +505,9 @@ namespace vk { // get the first index into queueFamiliyProperties which supports graphics std::vector::const_iterator graphicsQueueFamilyProperty = std::find_if( - queueFamilyProperties.begin(), queueFamilyProperties.end(), []( vk::QueueFamilyProperties const & qfp ) { - return qfp.queueFlags & vk::QueueFlagBits::eGraphics; - } ); + queueFamilyProperties.begin(), + queueFamilyProperties.end(), + []( vk::QueueFamilyProperties const & qfp ) { return qfp.queueFlags & vk::QueueFlagBits::eGraphics; } ); assert( graphicsQueueFamilyProperty != queueFamilyProperties.end() ); return static_cast( std::distance( queueFamilyProperties.begin(), graphicsQueueFamilyProperty ) ); } @@ -647,10 +660,11 @@ namespace vk for ( size_t i = 0; i < sizeof( requestedFormats ) / sizeof( requestedFormats[0] ); i++ ) { vk::Format requestedFormat = requestedFormats[i]; - auto it = std::find_if( - formats.begin(), formats.end(), [requestedFormat, requestedColorSpace]( vk::SurfaceFormatKHR const & f ) { - return ( f.format == requestedFormat ) && ( f.colorSpace == requestedColorSpace ); - } ); + auto it = std::find_if( formats.begin(), + formats.end(), + [requestedFormat, requestedColorSpace]( vk::SurfaceFormatKHR const & f ) { + return ( f.format == requestedFormat ) && ( f.colorSpace == requestedColorSpace ); + } ); if ( it != formats.end() ) { pickedFormat = *it; @@ -1133,10 +1147,12 @@ namespace vk glfwContext() { glfwInit(); - glfwSetErrorCallback( []( int error, const char * msg ) { - std::cerr << "glfw: " - << "(" << error << ") " << msg << std::endl; - } ); + glfwSetErrorCallback( + []( int error, const char * msg ) + { + std::cerr << "glfw: " + << "(" << error << ") " << msg << std::endl; + } ); } ~glfwContext() @@ -1174,7 +1190,7 @@ namespace vk #if defined( NDEBUG ) // in non-debug mode just use the InstanceCreateInfo for instance creation vk::StructureChain instanceCreateInfo( - { {}, &applicationInfo, enabledLayers, enabledExtensions } ); + { {}, &applicationInfo, layers, extensions } ); #else // in debug mode, addionally use the debugUtilsMessengerCallback in instance creation! vk::DebugUtilsMessageSeverityFlagsEXT severityFlags( vk::DebugUtilsMessageSeverityFlagBitsEXT::eWarning |