Updated Vulkan headers.

This commit is contained in:
Бранимир Караџић
2025-12-13 11:48:56 -08:00
committed by Branimir Karadžić
parent 3d59e16fd7
commit 913dd0224d

View File

@@ -66,7 +66,7 @@ extern "C" {
//#define VK_API_VERSION VK_MAKE_API_VERSION(0, 1, 0, 0) // Patch version should always be set to 0
// Version of this file
#define VK_HEADER_VERSION 333
#define VK_HEADER_VERSION 336
// Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION)
@@ -177,6 +177,7 @@ typedef enum VkResult {
VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR = -1000023004,
VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR = -1000023005,
VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT = -1000158000,
VK_ERROR_PRESENT_TIMING_QUEUE_FULL_EXT = -1000208000,
VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT = -1000255000,
VK_THREAD_IDLE_KHR = 1000268000,
VK_THREAD_DONE_KHR = 1000268001,
@@ -746,6 +747,16 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV = 1000206001,
VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV = 1000314008,
VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV = 1000314009,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_TIMING_FEATURES_EXT = 1000208000,
VK_STRUCTURE_TYPE_SWAPCHAIN_TIMING_PROPERTIES_EXT = 1000208001,
VK_STRUCTURE_TYPE_SWAPCHAIN_TIME_DOMAIN_PROPERTIES_EXT = 1000208002,
VK_STRUCTURE_TYPE_PRESENT_TIMINGS_INFO_EXT = 1000208003,
VK_STRUCTURE_TYPE_PRESENT_TIMING_INFO_EXT = 1000208004,
VK_STRUCTURE_TYPE_PAST_PRESENTATION_TIMING_INFO_EXT = 1000208005,
VK_STRUCTURE_TYPE_PAST_PRESENTATION_TIMING_PROPERTIES_EXT = 1000208006,
VK_STRUCTURE_TYPE_PAST_PRESENTATION_TIMING_EXT = 1000208007,
VK_STRUCTURE_TYPE_PRESENT_TIMING_SURFACE_CAPABILITIES_EXT = 1000208008,
VK_STRUCTURE_TYPE_SWAPCHAIN_CALIBRATED_TIMESTAMP_INFO_EXT = 1000208009,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL = 1000209000,
VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL = 1000210000,
VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL = 1000210001,
@@ -1134,6 +1145,7 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_KHR = 1000275004,
VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_KHR = 1000275005,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM = 1000488000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV = 1000490000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV = 1000490001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_FEATURES_NV = 1000491000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_PROPERTIES_NV = 1000491001,
@@ -1371,6 +1383,8 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_RESOLVE_IMAGE_MODE_INFO_KHR = 1000630004,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CACHE_INCREMENTAL_MODE_FEATURES_SEC = 1000637000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_UNIFORM_BUFFER_UNSIZED_ARRAY_FEATURES_EXT = 1000642000,
VK_STRUCTURE_TYPE_COMPUTE_OCCUPANCY_PRIORITY_PARAMETERS_NV = 1000645000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_OCCUPANCY_PRIORITY_FEATURES_NV = 1000645001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
// VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT is a legacy alias
@@ -1609,7 +1623,6 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO,
VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO,
VK_STRUCTURE_TYPE_SHADER_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_EXT,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES,
VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES,
@@ -8881,6 +8894,7 @@ typedef enum VkSwapchainCreateFlagBitsKHR {
VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = 0x00000001,
VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR = 0x00000002,
VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR = 0x00000004,
VK_SWAPCHAIN_CREATE_PRESENT_TIMING_BIT_EXT = 0x00000200,
VK_SWAPCHAIN_CREATE_PRESENT_ID_2_BIT_KHR = 0x00000040,
VK_SWAPCHAIN_CREATE_PRESENT_WAIT_2_BIT_KHR = 0x00000080,
VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_KHR = 0x00000008,
@@ -13376,6 +13390,8 @@ typedef enum VkTimeDomainKHR {
VK_TIME_DOMAIN_CLOCK_MONOTONIC_KHR = 1,
VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_KHR = 2,
VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_KHR = 3,
VK_TIME_DOMAIN_PRESENT_STAGE_LOCAL_EXT = 1000208000,
VK_TIME_DOMAIN_SWAPCHAIN_LOCAL_EXT = 1000208001,
VK_TIME_DOMAIN_DEVICE_EXT = VK_TIME_DOMAIN_DEVICE_KHR,
VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT = VK_TIME_DOMAIN_CLOCK_MONOTONIC_KHR,
VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT = VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_KHR,
@@ -16812,6 +16828,161 @@ VKAPI_ATTR void VKAPI_CALL vkGetQueueCheckpointData2NV(
#endif
// VK_EXT_present_timing is a preprocessor guard. Do not pass it to API calls.
#define VK_EXT_present_timing 1
#define VK_EXT_PRESENT_TIMING_SPEC_VERSION 3
#define VK_EXT_PRESENT_TIMING_EXTENSION_NAME "VK_EXT_present_timing"
typedef enum VkPresentStageFlagBitsEXT {
VK_PRESENT_STAGE_QUEUE_OPERATIONS_END_BIT_EXT = 0x00000001,
VK_PRESENT_STAGE_REQUEST_DEQUEUED_BIT_EXT = 0x00000002,
VK_PRESENT_STAGE_IMAGE_FIRST_PIXEL_OUT_BIT_EXT = 0x00000004,
VK_PRESENT_STAGE_IMAGE_FIRST_PIXEL_VISIBLE_BIT_EXT = 0x00000008,
VK_PRESENT_STAGE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
} VkPresentStageFlagBitsEXT;
typedef VkFlags VkPresentStageFlagsEXT;
typedef enum VkPastPresentationTimingFlagBitsEXT {
VK_PAST_PRESENTATION_TIMING_ALLOW_PARTIAL_RESULTS_BIT_EXT = 0x00000001,
VK_PAST_PRESENTATION_TIMING_ALLOW_OUT_OF_ORDER_RESULTS_BIT_EXT = 0x00000002,
VK_PAST_PRESENTATION_TIMING_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
} VkPastPresentationTimingFlagBitsEXT;
typedef VkFlags VkPastPresentationTimingFlagsEXT;
typedef enum VkPresentTimingInfoFlagBitsEXT {
VK_PRESENT_TIMING_INFO_PRESENT_AT_RELATIVE_TIME_BIT_EXT = 0x00000001,
VK_PRESENT_TIMING_INFO_PRESENT_AT_NEAREST_REFRESH_CYCLE_BIT_EXT = 0x00000002,
VK_PRESENT_TIMING_INFO_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
} VkPresentTimingInfoFlagBitsEXT;
typedef VkFlags VkPresentTimingInfoFlagsEXT;
typedef struct VkPhysicalDevicePresentTimingFeaturesEXT {
VkStructureType sType;
void* pNext;
VkBool32 presentTiming;
VkBool32 presentAtAbsoluteTime;
VkBool32 presentAtRelativeTime;
} VkPhysicalDevicePresentTimingFeaturesEXT;
typedef struct VkPresentTimingSurfaceCapabilitiesEXT {
VkStructureType sType;
void* pNext;
VkBool32 presentTimingSupported;
VkBool32 presentAtAbsoluteTimeSupported;
VkBool32 presentAtRelativeTimeSupported;
VkPresentStageFlagsEXT presentStageQueries;
} VkPresentTimingSurfaceCapabilitiesEXT;
typedef struct VkSwapchainCalibratedTimestampInfoEXT {
VkStructureType sType;
const void* pNext;
VkSwapchainKHR swapchain;
VkPresentStageFlagsEXT presentStage;
uint64_t timeDomainId;
} VkSwapchainCalibratedTimestampInfoEXT;
typedef struct VkSwapchainTimingPropertiesEXT {
VkStructureType sType;
void* pNext;
uint64_t refreshDuration;
uint64_t refreshInterval;
} VkSwapchainTimingPropertiesEXT;
typedef struct VkSwapchainTimeDomainPropertiesEXT {
VkStructureType sType;
void* pNext;
uint32_t timeDomainCount;
VkTimeDomainKHR* pTimeDomains;
uint64_t* pTimeDomainIds;
} VkSwapchainTimeDomainPropertiesEXT;
typedef struct VkPastPresentationTimingInfoEXT {
VkStructureType sType;
const void* pNext;
VkPastPresentationTimingFlagsEXT flags;
VkSwapchainKHR swapchain;
} VkPastPresentationTimingInfoEXT;
typedef struct VkPresentStageTimeEXT {
VkPresentStageFlagsEXT stage;
uint64_t time;
} VkPresentStageTimeEXT;
typedef struct VkPastPresentationTimingEXT {
VkStructureType sType;
void* pNext;
uint64_t presentId;
uint64_t targetTime;
uint32_t presentStageCount;
VkPresentStageTimeEXT* pPresentStages;
VkTimeDomainKHR timeDomain;
uint64_t timeDomainId;
VkBool32 reportComplete;
} VkPastPresentationTimingEXT;
typedef struct VkPastPresentationTimingPropertiesEXT {
VkStructureType sType;
void* pNext;
uint64_t timingPropertiesCounter;
uint64_t timeDomainsCounter;
uint32_t presentationTimingCount;
VkPastPresentationTimingEXT* pPresentationTimings;
} VkPastPresentationTimingPropertiesEXT;
typedef struct VkPresentTimingInfoEXT {
VkStructureType sType;
const void* pNext;
VkPresentTimingInfoFlagsEXT flags;
uint64_t targetTime;
uint64_t timeDomainId;
VkPresentStageFlagsEXT presentStageQueries;
VkPresentStageFlagsEXT targetTimeDomainPresentStage;
} VkPresentTimingInfoEXT;
typedef struct VkPresentTimingsInfoEXT {
VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const VkPresentTimingInfoEXT* pTimingInfos;
} VkPresentTimingsInfoEXT;
typedef VkResult (VKAPI_PTR *PFN_vkSetSwapchainPresentTimingQueueSizeEXT)(VkDevice device, VkSwapchainKHR swapchain, uint32_t size);
typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainTimingPropertiesEXT)(VkDevice device, VkSwapchainKHR swapchain, VkSwapchainTimingPropertiesEXT* pSwapchainTimingProperties, uint64_t* pSwapchainTimingPropertiesCounter);
typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainTimeDomainPropertiesEXT)(VkDevice device, VkSwapchainKHR swapchain, VkSwapchainTimeDomainPropertiesEXT* pSwapchainTimeDomainProperties, uint64_t* pTimeDomainsCounter);
typedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingEXT)(VkDevice device, const VkPastPresentationTimingInfoEXT* pPastPresentationTimingInfo, VkPastPresentationTimingPropertiesEXT* pPastPresentationTimingProperties);
#ifndef VK_NO_PROTOTYPES
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkSetSwapchainPresentTimingQueueSizeEXT(
VkDevice device,
VkSwapchainKHR swapchain,
uint32_t size);
#endif
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainTimingPropertiesEXT(
VkDevice device,
VkSwapchainKHR swapchain,
VkSwapchainTimingPropertiesEXT* pSwapchainTimingProperties,
uint64_t* pSwapchainTimingPropertiesCounter);
#endif
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainTimeDomainPropertiesEXT(
VkDevice device,
VkSwapchainKHR swapchain,
VkSwapchainTimeDomainPropertiesEXT* pSwapchainTimeDomainProperties,
uint64_t* pTimeDomainsCounter);
#endif
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkGetPastPresentationTimingEXT(
VkDevice device,
const VkPastPresentationTimingInfoEXT* pPastPresentationTimingInfo,
VkPastPresentationTimingPropertiesEXT* pPastPresentationTimingProperties);
#endif
#endif
// VK_INTEL_shader_integer_functions2 is a preprocessor guard. Do not pass it to API calls.
#define VK_INTEL_shader_integer_functions2 1
#define VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION 1
@@ -21866,13 +22037,11 @@ typedef struct VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV {
VkRayTracingInvocationReorderModeEXT rayTracingInvocationReorderReorderingHint;
} VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV;
typedef struct VkPhysicalDeviceRayTracingInvocationReorderFeaturesEXT {
typedef struct VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV {
VkStructureType sType;
void* pNext;
VkBool32 rayTracingInvocationReorder;
} VkPhysicalDeviceRayTracingInvocationReorderFeaturesEXT;
typedef VkPhysicalDeviceRayTracingInvocationReorderFeaturesEXT VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV;
} VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV;
@@ -23657,6 +23826,12 @@ typedef struct VkPhysicalDeviceRayTracingInvocationReorderPropertiesEXT {
uint32_t maxShaderBindingTableRecordIndex;
} VkPhysicalDeviceRayTracingInvocationReorderPropertiesEXT;
typedef struct VkPhysicalDeviceRayTracingInvocationReorderFeaturesEXT {
VkStructureType sType;
void* pNext;
VkBool32 rayTracingInvocationReorder;
} VkPhysicalDeviceRayTracingInvocationReorderFeaturesEXT;
// VK_EXT_depth_clamp_control is a preprocessor guard. Do not pass it to API calls.
@@ -24018,6 +24193,37 @@ typedef struct VkPhysicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT {
// VK_NV_compute_occupancy_priority is a preprocessor guard. Do not pass it to API calls.
#define VK_NV_compute_occupancy_priority 1
#define VK_NV_COMPUTE_OCCUPANCY_PRIORITY_SPEC_VERSION 1
#define VK_NV_COMPUTE_OCCUPANCY_PRIORITY_EXTENSION_NAME "VK_NV_compute_occupancy_priority"
#define VK_COMPUTE_OCCUPANCY_PRIORITY_LOW_NV 0.25f
#define VK_COMPUTE_OCCUPANCY_PRIORITY_NORMAL_NV 0.50f
#define VK_COMPUTE_OCCUPANCY_PRIORITY_HIGH_NV 0.75f
typedef struct VkComputeOccupancyPriorityParametersNV {
VkStructureType sType;
const void* pNext;
float occupancyPriority;
float occupancyThrottling;
} VkComputeOccupancyPriorityParametersNV;
typedef struct VkPhysicalDeviceComputeOccupancyPriorityFeaturesNV {
VkStructureType sType;
void* pNext;
VkBool32 computeOccupancyPriority;
} VkPhysicalDeviceComputeOccupancyPriorityFeaturesNV;
typedef void (VKAPI_PTR *PFN_vkCmdSetComputeOccupancyPriorityNV)(VkCommandBuffer commandBuffer, const VkComputeOccupancyPriorityParametersNV* pParameters);
#ifndef VK_NO_PROTOTYPES
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR void VKAPI_CALL vkCmdSetComputeOccupancyPriorityNV(
VkCommandBuffer commandBuffer,
const VkComputeOccupancyPriorityParametersNV* pParameters);
#endif
#endif
// VK_KHR_acceleration_structure is a preprocessor guard. Do not pass it to API calls.
#define VK_KHR_acceleration_structure 1
#define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13