@@ -287,6 +287,49 @@ typedef struct VkPhysicalDeviceFloatControlsPropertiesKHR
287287 VkBool32 shaderRoundingModeRTZFloat64 ;
288288} VkPhysicalDeviceFloatControlsPropertiesKHR ;
289289
290+ #endif
291+
292+ #ifndef VK_EXT_validation_features
293+
294+ #define VK_EXT_validation_features 1
295+ #define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 4
296+ #define VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME "VK_EXT_validation_features"
297+
298+ typedef enum VkValidationFeatureEnableEXT {
299+ VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT = 0 ,
300+ VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT = 1 ,
301+ VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT = 2 ,
302+ VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT = 3 ,
303+ VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT = 4 ,
304+ VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT = 0x7FFFFFFF
305+ } VkValidationFeatureEnableEXT ;
306+
307+ typedef enum VkValidationFeatureDisableEXT {
308+ VK_VALIDATION_FEATURE_DISABLE_ALL_EXT = 0 ,
309+ VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT = 1 ,
310+ VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT = 2 ,
311+ VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT = 3 ,
312+ VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = 4 ,
313+ VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = 5 ,
314+ VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = 6 ,
315+ VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT = 0x7FFFFFFF
316+ } VkValidationFeatureDisableEXT ;
317+ typedef struct VkValidationFeaturesEXT {
318+ VkStructureType sType ;
319+ const void * pNext ;
320+ uint32_t enabledValidationFeatureCount ;
321+ const VkValidationFeatureEnableEXT * pEnabledValidationFeatures ;
322+ uint32_t disabledValidationFeatureCount ;
323+ const VkValidationFeatureDisableEXT * pDisabledValidationFeatures ;
324+ } VkValidationFeaturesEXT ;
325+
326+ #else
327+
328+ #if (VK_EXT_VALIDATION_FEATURES_SPEC_VERSION < 4 )
329+ #define VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT static_cast<VkValidationFeatureEnableEXT>(4)
330+ #endif
331+
332+
290333#endif
291334
292335////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -306,13 +349,6 @@ typedef struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT
306349 VkBool32 bufferDeviceAddressCaptureReplay ;
307350 VkBool32 bufferDeviceAddressMultiDevice ;
308351} VkPhysicalDeviceBufferDeviceAddressFeaturesEXT ;
309- #endif
310-
311- ////////////////////////////////////////////////////////////////////////////////////////////////////
312- //
313- // Definitions not provided prior to 1.1.106
314- //
315- #if VK_HEADER_VERSION < 105
316352
317353#define VK_EXT_host_query_reset 1
318354#define VK_EXT_HOST_QUERY_RESET_SPEC_VERSION 1
@@ -325,9 +361,6 @@ typedef struct VkPhysicalDeviceHostQueryResetFeaturesEXT {
325361
326362typedef void (VKAPI_PTR * PFN_vkResetQueryPoolEXT )(VkDevice device , VkQueryPool queryPool , uint32_t firstQuery , uint32_t queryCount );
327363
328-
329-
330-
331364#endif
332365
333366////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -382,10 +415,6 @@ typedef enum VkDescriptorBindingFlagBits {
382415 VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT = 0x00000002 ,
383416 VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT = 0x00000004 ,
384417 VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT = 0x00000008 ,
385- VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT = VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT ,
386- VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT = VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT ,
387- VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT = VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT ,
388- VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT = VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT ,
389418 VK_DESCRIPTOR_BINDING_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
390419} VkDescriptorBindingFlagBits ;
391420typedef VkFlags VkDescriptorBindingFlags ;
@@ -573,47 +602,6 @@ typedef enum VkRayTracingShaderGroupTypeKHR
573602
574603#endif
575604
576-
577- ////////////////////////////////////////////////////////////////////////////////////////////////////
578- //
579- // Definitions not provided prior to 1.2.150
580- //
581- #if VK_HEADER_VERSION < 150
582-
583- #define VK_EXT_validation_features 1
584- #define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 4
585- #define VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME "VK_EXT_validation_features"
586-
587- typedef enum VkValidationFeatureEnableEXT {
588- VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT = 0 ,
589- VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT = 1 ,
590- VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT = 2 ,
591- VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT = 3 ,
592- VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT = 4 ,
593- VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT = 0x7FFFFFFF
594- } VkValidationFeatureEnableEXT ;
595-
596- typedef enum VkValidationFeatureDisableEXT {
597- VK_VALIDATION_FEATURE_DISABLE_ALL_EXT = 0 ,
598- VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT = 1 ,
599- VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT = 2 ,
600- VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT = 3 ,
601- VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = 4 ,
602- VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = 5 ,
603- VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = 6 ,
604- VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT = 0x7FFFFFFF
605- } VkValidationFeatureDisableEXT ;
606- typedef struct VkValidationFeaturesEXT {
607- VkStructureType sType ;
608- const void * pNext ;
609- uint32_t enabledValidationFeatureCount ;
610- const VkValidationFeatureEnableEXT * pEnabledValidationFeatures ;
611- uint32_t disabledValidationFeatureCount ;
612- const VkValidationFeatureDisableEXT * pDisabledValidationFeatures ;
613- } VkValidationFeaturesEXT ;
614-
615- #endif
616-
617605////////////////////////////////////////////////////////////////////////////////////////////////////
618606//
619607// Definitions not provided prior to 1.2.162
@@ -903,7 +891,7 @@ typedef VkResult(VKAPI_PTR* PFN_vkCreateRenderPass2KHR_Compatibility)(VkDevice d
903891typedef VkDeviceAddress (VKAPI_PTR * PFN_vkGetBufferDeviceAddressKHR_Compatibility )(VkDevice device , const VkBufferDeviceAddressInfo * pInfo );
904892
905893//
906- // Definitions not provided prior to 1.3.211
894+ // Definitions not provided prior to 1.3.204
907895//
908896#if VK_HEADER_VERSION < 204
909897#define VK_API_VERSION_1_3 VK_MAKE_VERSION(1, 3, 0)
0 commit comments