Path: blob/master/3rdparty/include/vulkan/vulkan_core.h
16354 views
#ifndef VULKAN_CORE_H_1#define VULKAN_CORE_H_ 123#ifdef __cplusplus4extern "C" {5#endif67/*8** Copyright (c) 2015-2018 The Khronos Group Inc.9**10** Licensed under the Apache License, Version 2.0 (the "License");11** you may not use this file except in compliance with the License.12** You may obtain a copy of the License at13**14** http://www.apache.org/licenses/LICENSE-2.015**16** Unless required by applicable law or agreed to in writing, software17** distributed under the License is distributed on an "AS IS" BASIS,18** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.19** See the License for the specific language governing permissions and20** limitations under the License.21*/2223/*24** This header is generated from the Khronos Vulkan XML API Registry.25**26*/272829#define VK_VERSION_1_0 130#include "vk_platform.h"3132#define VK_MAKE_VERSION(major, minor, patch) \33(((major) << 22) | ((minor) << 12) | (patch))3435// DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead.36//#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) // Patch version should always be set to 03738// Vulkan 1.0 version number39#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 04041#define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22)42#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)43#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)44// Version of this file45#define VK_HEADER_VERSION 87464748#define VK_NULL_HANDLE 049505152#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;535455#if !defined(VK_DEFINE_NON_DISPATCHABLE_HANDLE)56#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)57#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object;58#else59#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;60#endif61#endif62636465typedef uint32_t VkFlags;66typedef uint32_t VkBool32;67typedef uint64_t VkDeviceSize;68typedef uint32_t VkSampleMask;6970VK_DEFINE_HANDLE(VkInstance)71VK_DEFINE_HANDLE(VkPhysicalDevice)72VK_DEFINE_HANDLE(VkDevice)73VK_DEFINE_HANDLE(VkQueue)74VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore)75VK_DEFINE_HANDLE(VkCommandBuffer)76VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFence)77VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory)78VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBuffer)79VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage)80VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkEvent)81VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkQueryPool)82VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferView)83VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImageView)84VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule)85VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache)86VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineLayout)87VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass)88VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipeline)89VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSetLayout)90VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler)91VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool)92VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet)93VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer)94VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool)9596#define VK_LOD_CLAMP_NONE 1000.0f97#define VK_REMAINING_MIP_LEVELS (~0U)98#define VK_REMAINING_ARRAY_LAYERS (~0U)99#define VK_WHOLE_SIZE (~0ULL)100#define VK_ATTACHMENT_UNUSED (~0U)101#define VK_TRUE 1102#define VK_FALSE 0103#define VK_QUEUE_FAMILY_IGNORED (~0U)104#define VK_SUBPASS_EXTERNAL (~0U)105#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256106#define VK_UUID_SIZE 16107#define VK_MAX_MEMORY_TYPES 32108#define VK_MAX_MEMORY_HEAPS 16109#define VK_MAX_EXTENSION_NAME_SIZE 256110#define VK_MAX_DESCRIPTION_SIZE 256111112113typedef enum VkPipelineCacheHeaderVersion {114VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1,115VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,116VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,117VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE = (VK_PIPELINE_CACHE_HEADER_VERSION_ONE - VK_PIPELINE_CACHE_HEADER_VERSION_ONE + 1),118VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF119} VkPipelineCacheHeaderVersion;120121typedef enum VkResult {122VK_SUCCESS = 0,123VK_NOT_READY = 1,124VK_TIMEOUT = 2,125VK_EVENT_SET = 3,126VK_EVENT_RESET = 4,127VK_INCOMPLETE = 5,128VK_ERROR_OUT_OF_HOST_MEMORY = -1,129VK_ERROR_OUT_OF_DEVICE_MEMORY = -2,130VK_ERROR_INITIALIZATION_FAILED = -3,131VK_ERROR_DEVICE_LOST = -4,132VK_ERROR_MEMORY_MAP_FAILED = -5,133VK_ERROR_LAYER_NOT_PRESENT = -6,134VK_ERROR_EXTENSION_NOT_PRESENT = -7,135VK_ERROR_FEATURE_NOT_PRESENT = -8,136VK_ERROR_INCOMPATIBLE_DRIVER = -9,137VK_ERROR_TOO_MANY_OBJECTS = -10,138VK_ERROR_FORMAT_NOT_SUPPORTED = -11,139VK_ERROR_FRAGMENTED_POOL = -12,140VK_ERROR_OUT_OF_POOL_MEMORY = -1000069000,141VK_ERROR_INVALID_EXTERNAL_HANDLE = -1000072003,142VK_ERROR_SURFACE_LOST_KHR = -1000000000,143VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = -1000000001,144VK_SUBOPTIMAL_KHR = 1000001003,145VK_ERROR_OUT_OF_DATE_KHR = -1000001004,146VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,147VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,148VK_ERROR_INVALID_SHADER_NV = -1000012000,149VK_ERROR_FRAGMENTATION_EXT = -1000161000,150VK_ERROR_NOT_PERMITTED_EXT = -1000174001,151VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY,152VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = VK_ERROR_INVALID_EXTERNAL_HANDLE,153VK_RESULT_BEGIN_RANGE = VK_ERROR_FRAGMENTED_POOL,154VK_RESULT_END_RANGE = VK_INCOMPLETE,155VK_RESULT_RANGE_SIZE = (VK_INCOMPLETE - VK_ERROR_FRAGMENTED_POOL + 1),156VK_RESULT_MAX_ENUM = 0x7FFFFFFF157} VkResult;158159typedef enum VkStructureType {160VK_STRUCTURE_TYPE_APPLICATION_INFO = 0,161VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1,162VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2,163VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3,164VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,165VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5,166VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,167VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,168VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,169VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,170VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,171VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11,172VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12,173VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,174VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,175VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,176VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,177VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17,178VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18,179VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19,180VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 20,181VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 21,182VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 22,183VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO = 23,184VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 24,185VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 25,186VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 26,187VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 27,188VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 28,189VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 29,190VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 30,191VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 31,192VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 32,193VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33,194VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO = 34,195VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 35,196VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 36,197VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 37,198VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 38,199VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO = 39,200VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO = 40,201VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO = 41,202VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO = 42,203VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43,204VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44,205VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45,206VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46,207VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = 47,208VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = 48,209VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES = 1000094000,210VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO = 1000157000,211VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO = 1000157001,212VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES = 1000083000,213VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS = 1000127000,214VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO = 1000127001,215VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO = 1000060000,216VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO = 1000060003,217VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO = 1000060004,218VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO = 1000060005,219VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO = 1000060006,220VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO = 1000060013,221VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO = 1000060014,222VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES = 1000070000,223VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO = 1000070001,224VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 = 1000146000,225VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 = 1000146001,226VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 = 1000146002,227VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 = 1000146003,228VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 = 1000146004,229VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 = 1000059000,230VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 = 1000059001,231VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 = 1000059002,232VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 = 1000059003,233VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 = 1000059004,234VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 = 1000059005,235VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 = 1000059006,236VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 = 1000059007,237VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 = 1000059008,238VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES = 1000117000,239VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO = 1000117001,240VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO = 1000117002,241VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO = 1000117003,242VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO = 1000053000,243VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES = 1000053001,244VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES = 1000053002,245VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = 1000120000,246VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO = 1000145000,247VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES = 1000145001,248VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES = 1000145002,249VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 = 1000145003,250VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO = 1000156000,251VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO = 1000156001,252VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO = 1000156002,253VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO = 1000156003,254VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES = 1000156004,255VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES = 1000156005,256VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO = 1000085000,257VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO = 1000071000,258VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES = 1000071001,259VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO = 1000071002,260VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES = 1000071003,261VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES = 1000071004,262VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO = 1000072000,263VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO = 1000072001,264VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO = 1000072002,265VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO = 1000112000,266VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES = 1000112001,267VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO = 1000113000,268VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO = 1000077000,269VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO = 1000076000,270VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES = 1000076001,271VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES = 1000168000,272VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT = 1000168001,273VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = 1000063000,274VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 1000001000,275VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 1000001001,276VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR = 1000060007,277VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR = 1000060008,278VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR = 1000060009,279VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR = 1000060010,280VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR = 1000060011,281VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR = 1000060012,282VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR = 1000002000,283VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR = 1000002001,284VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 1000003000,285VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000,286VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR = 1000005000,287VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000,288VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR = 1000007000,289VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR = 1000008000,290VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000,291VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT = 1000011000,292VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD = 1000018000,293VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT = 1000022000,294VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT = 1000022001,295VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT = 1000022002,296VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV = 1000026000,297VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV = 1000026001,298VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV = 1000026002,299VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD = 1000041000,300VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV = 1000050000,301VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV = 1000056000,302VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV = 1000056001,303VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057000,304VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057001,305VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV = 1000058000,306VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT = 1000061000,307VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN = 1000062000,308VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT = 1000067000,309VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT = 1000067001,310VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073000,311VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073001,312VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR = 1000073002,313VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR = 1000073003,314VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR = 1000074000,315VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR = 1000074001,316VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR = 1000074002,317VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR = 1000075000,318VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR = 1000078000,319VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR = 1000078001,320VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR = 1000078002,321VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR = 1000078003,322VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR = 1000079000,323VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR = 1000079001,324VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR = 1000080000,325VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT = 1000081000,326VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT = 1000081001,327VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT = 1000081002,328VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000,329VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX = 1000086000,330VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX = 1000086001,331VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX = 1000086002,332VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX = 1000086003,333VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX = 1000086004,334VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX = 1000086005,335VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV = 1000087000,336VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT = 1000090000,337VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT = 1000091000,338VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT = 1000091001,339VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT = 1000091002,340VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT = 1000091003,341VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE = 1000092000,342VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX = 1000097000,343VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV = 1000098000,344VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT = 1000099000,345VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT = 1000099001,346VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT = 1000101000,347VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT = 1000101001,348VK_STRUCTURE_TYPE_HDR_METADATA_EXT = 1000105000,349VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR = 1000109000,350VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR = 1000109001,351VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR = 1000109002,352VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR = 1000109003,353VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR = 1000109004,354VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR = 1000109005,355VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR = 1000109006,356VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000,357VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR = 1000114000,358VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR = 1000114001,359VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR = 1000114002,360VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR = 1000115000,361VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR = 1000115001,362VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR = 1000119000,363VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001,364VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002,365VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR = 1000121000,366VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR = 1000121001,367VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR = 1000121002,368VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR = 1000121003,369VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR = 1000121004,370VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK = 1000122000,371VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK = 1000123000,372VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT = 1000128000,373VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT = 1000128001,374VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT = 1000128002,375VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT = 1000128003,376VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT = 1000128004,377VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID = 1000129000,378VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID = 1000129001,379VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID = 1000129002,380VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID = 1000129003,381VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID = 1000129004,382VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID = 1000129005,383VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT = 1000130000,384VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT = 1000130001,385VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT = 1000138000,386VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT = 1000138001,387VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT = 1000138002,388VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT = 1000138003,389VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT = 1000143000,390VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT = 1000143001,391VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT = 1000143002,392VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT = 1000143003,393VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT = 1000143004,394VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR = 1000147000,395VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT = 1000148000,396VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT = 1000148001,397VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT = 1000148002,398VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV = 1000149000,399VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV = 1000152000,400VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160000,401VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160001,402VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT = 1000161000,403VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT = 1000161001,404VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT = 1000161002,405VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT = 1000161003,406VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT = 1000161004,407VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV = 1000164000,408VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV = 1000164001,409VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV = 1000164002,410VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV = 1000164005,411VK_STRUCTURE_TYPE_RAYTRACING_PIPELINE_CREATE_INFO_NVX = 1000165000,412VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NVX = 1000165001,413VK_STRUCTURE_TYPE_GEOMETRY_INSTANCE_NVX = 1000165002,414VK_STRUCTURE_TYPE_GEOMETRY_NVX = 1000165003,415VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NVX = 1000165004,416VK_STRUCTURE_TYPE_GEOMETRY_AABB_NVX = 1000165005,417VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NVX = 1000165006,418VK_STRUCTURE_TYPE_DESCRIPTOR_ACCELERATION_STRUCTURE_INFO_NVX = 1000165007,419VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NVX = 1000165008,420VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAYTRACING_PROPERTIES_NVX = 1000165009,421VK_STRUCTURE_TYPE_HIT_SHADER_MODULE_CREATE_INFO_NVX = 1000165010,422VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV = 1000166000,423VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV = 1000166001,424VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT = 1000174000,425VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR = 1000177000,426VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT = 1000178000,427VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT = 1000178001,428VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT = 1000178002,429VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR = 1000180000,430VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD = 1000185000,431VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT = 1000190000,432VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT = 1000190001,433VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT = 1000190002,434VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR = 1000196000,435VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV = 1000201000,436VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV = 1000202000,437VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV = 1000202001,438VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV = 1000203000,439VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV = 1000204000,440VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV = 1000205000,441VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV = 1000205002,442VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV = 1000206000,443VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV = 1000206001,444VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR = 1000211000,445VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA = 1000214000,446VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,447VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,448VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,449VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES,450VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,451VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2,452VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2,453VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2,454VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,455VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2,456VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2,457VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2,458VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2,459VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO,460VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO,461VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO,462VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO,463VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO,464VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO,465VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO,466VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES,467VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO,468VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO,469VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES,470VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO,471VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES,472VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES,473VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO,474VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO,475VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO,476VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO,477VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES,478VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO,479VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES,480VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO,481VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT,482VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO,483VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES,484VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO,485VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES,486VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO,487VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO,488VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO,489VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES,490VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS,491VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO,492VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2,493VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2,494VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,495VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2,496VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2,497VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO,498VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO,499VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO,500VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO,501VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES,502VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES,503VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO,504VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO,505VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,506VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,507VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO,508VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,509VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),510VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF511} VkStructureType;512513typedef enum VkSystemAllocationScope {514VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0,515VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1,516VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2,517VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3,518VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4,519VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND,520VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE,521VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE = (VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND + 1),522VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM = 0x7FFFFFFF523} VkSystemAllocationScope;524525typedef enum VkInternalAllocationType {526VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0,527VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,528VK_INTERNAL_ALLOCATION_TYPE_END_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,529VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE = (VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE + 1),530VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM = 0x7FFFFFFF531} VkInternalAllocationType;532533typedef enum VkFormat {534VK_FORMAT_UNDEFINED = 0,535VK_FORMAT_R4G4_UNORM_PACK8 = 1,536VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2,537VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3,538VK_FORMAT_R5G6B5_UNORM_PACK16 = 4,539VK_FORMAT_B5G6R5_UNORM_PACK16 = 5,540VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6,541VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7,542VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8,543VK_FORMAT_R8_UNORM = 9,544VK_FORMAT_R8_SNORM = 10,545VK_FORMAT_R8_USCALED = 11,546VK_FORMAT_R8_SSCALED = 12,547VK_FORMAT_R8_UINT = 13,548VK_FORMAT_R8_SINT = 14,549VK_FORMAT_R8_SRGB = 15,550VK_FORMAT_R8G8_UNORM = 16,551VK_FORMAT_R8G8_SNORM = 17,552VK_FORMAT_R8G8_USCALED = 18,553VK_FORMAT_R8G8_SSCALED = 19,554VK_FORMAT_R8G8_UINT = 20,555VK_FORMAT_R8G8_SINT = 21,556VK_FORMAT_R8G8_SRGB = 22,557VK_FORMAT_R8G8B8_UNORM = 23,558VK_FORMAT_R8G8B8_SNORM = 24,559VK_FORMAT_R8G8B8_USCALED = 25,560VK_FORMAT_R8G8B8_SSCALED = 26,561VK_FORMAT_R8G8B8_UINT = 27,562VK_FORMAT_R8G8B8_SINT = 28,563VK_FORMAT_R8G8B8_SRGB = 29,564VK_FORMAT_B8G8R8_UNORM = 30,565VK_FORMAT_B8G8R8_SNORM = 31,566VK_FORMAT_B8G8R8_USCALED = 32,567VK_FORMAT_B8G8R8_SSCALED = 33,568VK_FORMAT_B8G8R8_UINT = 34,569VK_FORMAT_B8G8R8_SINT = 35,570VK_FORMAT_B8G8R8_SRGB = 36,571VK_FORMAT_R8G8B8A8_UNORM = 37,572VK_FORMAT_R8G8B8A8_SNORM = 38,573VK_FORMAT_R8G8B8A8_USCALED = 39,574VK_FORMAT_R8G8B8A8_SSCALED = 40,575VK_FORMAT_R8G8B8A8_UINT = 41,576VK_FORMAT_R8G8B8A8_SINT = 42,577VK_FORMAT_R8G8B8A8_SRGB = 43,578VK_FORMAT_B8G8R8A8_UNORM = 44,579VK_FORMAT_B8G8R8A8_SNORM = 45,580VK_FORMAT_B8G8R8A8_USCALED = 46,581VK_FORMAT_B8G8R8A8_SSCALED = 47,582VK_FORMAT_B8G8R8A8_UINT = 48,583VK_FORMAT_B8G8R8A8_SINT = 49,584VK_FORMAT_B8G8R8A8_SRGB = 50,585VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51,586VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52,587VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53,588VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54,589VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55,590VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56,591VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57,592VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58,593VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59,594VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60,595VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61,596VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62,597VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63,598VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64,599VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65,600VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66,601VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67,602VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68,603VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69,604VK_FORMAT_R16_UNORM = 70,605VK_FORMAT_R16_SNORM = 71,606VK_FORMAT_R16_USCALED = 72,607VK_FORMAT_R16_SSCALED = 73,608VK_FORMAT_R16_UINT = 74,609VK_FORMAT_R16_SINT = 75,610VK_FORMAT_R16_SFLOAT = 76,611VK_FORMAT_R16G16_UNORM = 77,612VK_FORMAT_R16G16_SNORM = 78,613VK_FORMAT_R16G16_USCALED = 79,614VK_FORMAT_R16G16_SSCALED = 80,615VK_FORMAT_R16G16_UINT = 81,616VK_FORMAT_R16G16_SINT = 82,617VK_FORMAT_R16G16_SFLOAT = 83,618VK_FORMAT_R16G16B16_UNORM = 84,619VK_FORMAT_R16G16B16_SNORM = 85,620VK_FORMAT_R16G16B16_USCALED = 86,621VK_FORMAT_R16G16B16_SSCALED = 87,622VK_FORMAT_R16G16B16_UINT = 88,623VK_FORMAT_R16G16B16_SINT = 89,624VK_FORMAT_R16G16B16_SFLOAT = 90,625VK_FORMAT_R16G16B16A16_UNORM = 91,626VK_FORMAT_R16G16B16A16_SNORM = 92,627VK_FORMAT_R16G16B16A16_USCALED = 93,628VK_FORMAT_R16G16B16A16_SSCALED = 94,629VK_FORMAT_R16G16B16A16_UINT = 95,630VK_FORMAT_R16G16B16A16_SINT = 96,631VK_FORMAT_R16G16B16A16_SFLOAT = 97,632VK_FORMAT_R32_UINT = 98,633VK_FORMAT_R32_SINT = 99,634VK_FORMAT_R32_SFLOAT = 100,635VK_FORMAT_R32G32_UINT = 101,636VK_FORMAT_R32G32_SINT = 102,637VK_FORMAT_R32G32_SFLOAT = 103,638VK_FORMAT_R32G32B32_UINT = 104,639VK_FORMAT_R32G32B32_SINT = 105,640VK_FORMAT_R32G32B32_SFLOAT = 106,641VK_FORMAT_R32G32B32A32_UINT = 107,642VK_FORMAT_R32G32B32A32_SINT = 108,643VK_FORMAT_R32G32B32A32_SFLOAT = 109,644VK_FORMAT_R64_UINT = 110,645VK_FORMAT_R64_SINT = 111,646VK_FORMAT_R64_SFLOAT = 112,647VK_FORMAT_R64G64_UINT = 113,648VK_FORMAT_R64G64_SINT = 114,649VK_FORMAT_R64G64_SFLOAT = 115,650VK_FORMAT_R64G64B64_UINT = 116,651VK_FORMAT_R64G64B64_SINT = 117,652VK_FORMAT_R64G64B64_SFLOAT = 118,653VK_FORMAT_R64G64B64A64_UINT = 119,654VK_FORMAT_R64G64B64A64_SINT = 120,655VK_FORMAT_R64G64B64A64_SFLOAT = 121,656VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122,657VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123,658VK_FORMAT_D16_UNORM = 124,659VK_FORMAT_X8_D24_UNORM_PACK32 = 125,660VK_FORMAT_D32_SFLOAT = 126,661VK_FORMAT_S8_UINT = 127,662VK_FORMAT_D16_UNORM_S8_UINT = 128,663VK_FORMAT_D24_UNORM_S8_UINT = 129,664VK_FORMAT_D32_SFLOAT_S8_UINT = 130,665VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131,666VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132,667VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133,668VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134,669VK_FORMAT_BC2_UNORM_BLOCK = 135,670VK_FORMAT_BC2_SRGB_BLOCK = 136,671VK_FORMAT_BC3_UNORM_BLOCK = 137,672VK_FORMAT_BC3_SRGB_BLOCK = 138,673VK_FORMAT_BC4_UNORM_BLOCK = 139,674VK_FORMAT_BC4_SNORM_BLOCK = 140,675VK_FORMAT_BC5_UNORM_BLOCK = 141,676VK_FORMAT_BC5_SNORM_BLOCK = 142,677VK_FORMAT_BC6H_UFLOAT_BLOCK = 143,678VK_FORMAT_BC6H_SFLOAT_BLOCK = 144,679VK_FORMAT_BC7_UNORM_BLOCK = 145,680VK_FORMAT_BC7_SRGB_BLOCK = 146,681VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147,682VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148,683VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149,684VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150,685VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151,686VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152,687VK_FORMAT_EAC_R11_UNORM_BLOCK = 153,688VK_FORMAT_EAC_R11_SNORM_BLOCK = 154,689VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155,690VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156,691VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157,692VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158,693VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159,694VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160,695VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161,696VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162,697VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163,698VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164,699VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165,700VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166,701VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167,702VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168,703VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169,704VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170,705VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171,706VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172,707VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173,708VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174,709VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175,710VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176,711VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177,712VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178,713VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179,714VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180,715VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181,716VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182,717VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183,718VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184,719VK_FORMAT_G8B8G8R8_422_UNORM = 1000156000,720VK_FORMAT_B8G8R8G8_422_UNORM = 1000156001,721VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM = 1000156002,722VK_FORMAT_G8_B8R8_2PLANE_420_UNORM = 1000156003,723VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM = 1000156004,724VK_FORMAT_G8_B8R8_2PLANE_422_UNORM = 1000156005,725VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM = 1000156006,726VK_FORMAT_R10X6_UNORM_PACK16 = 1000156007,727VK_FORMAT_R10X6G10X6_UNORM_2PACK16 = 1000156008,728VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 = 1000156009,729VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 = 1000156010,730VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 = 1000156011,731VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 = 1000156012,732VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 = 1000156013,733VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 = 1000156014,734VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 = 1000156015,735VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 = 1000156016,736VK_FORMAT_R12X4_UNORM_PACK16 = 1000156017,737VK_FORMAT_R12X4G12X4_UNORM_2PACK16 = 1000156018,738VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 = 1000156019,739VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 = 1000156020,740VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 = 1000156021,741VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 = 1000156022,742VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 = 1000156023,743VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 = 1000156024,744VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 = 1000156025,745VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 = 1000156026,746VK_FORMAT_G16B16G16R16_422_UNORM = 1000156027,747VK_FORMAT_B16G16R16G16_422_UNORM = 1000156028,748VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM = 1000156029,749VK_FORMAT_G16_B16R16_2PLANE_420_UNORM = 1000156030,750VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM = 1000156031,751VK_FORMAT_G16_B16R16_2PLANE_422_UNORM = 1000156032,752VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM = 1000156033,753VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000,754VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001,755VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002,756VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003,757VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004,758VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005,759VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006,760VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007,761VK_FORMAT_G8B8G8R8_422_UNORM_KHR = VK_FORMAT_G8B8G8R8_422_UNORM,762VK_FORMAT_B8G8R8G8_422_UNORM_KHR = VK_FORMAT_B8G8R8G8_422_UNORM,763VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,764VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM,765VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM,766VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM,767VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM,768VK_FORMAT_R10X6_UNORM_PACK16_KHR = VK_FORMAT_R10X6_UNORM_PACK16,769VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR = VK_FORMAT_R10X6G10X6_UNORM_2PACK16,770VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,771VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,772VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,773VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,774VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,775VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,776VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,777VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,778VK_FORMAT_R12X4_UNORM_PACK16_KHR = VK_FORMAT_R12X4_UNORM_PACK16,779VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR = VK_FORMAT_R12X4G12X4_UNORM_2PACK16,780VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16,781VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,782VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,783VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,784VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,785VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,786VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,787VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,788VK_FORMAT_G16B16G16R16_422_UNORM_KHR = VK_FORMAT_G16B16G16R16_422_UNORM,789VK_FORMAT_B16G16R16G16_422_UNORM_KHR = VK_FORMAT_B16G16R16G16_422_UNORM,790VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM,791VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM,792VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM,793VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM,794VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM,795VK_FORMAT_BEGIN_RANGE = VK_FORMAT_UNDEFINED,796VK_FORMAT_END_RANGE = VK_FORMAT_ASTC_12x12_SRGB_BLOCK,797VK_FORMAT_RANGE_SIZE = (VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1),798VK_FORMAT_MAX_ENUM = 0x7FFFFFFF799} VkFormat;800801typedef enum VkImageType {802VK_IMAGE_TYPE_1D = 0,803VK_IMAGE_TYPE_2D = 1,804VK_IMAGE_TYPE_3D = 2,805VK_IMAGE_TYPE_BEGIN_RANGE = VK_IMAGE_TYPE_1D,806VK_IMAGE_TYPE_END_RANGE = VK_IMAGE_TYPE_3D,807VK_IMAGE_TYPE_RANGE_SIZE = (VK_IMAGE_TYPE_3D - VK_IMAGE_TYPE_1D + 1),808VK_IMAGE_TYPE_MAX_ENUM = 0x7FFFFFFF809} VkImageType;810811typedef enum VkImageTiling {812VK_IMAGE_TILING_OPTIMAL = 0,813VK_IMAGE_TILING_LINEAR = 1,814VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL,815VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR,816VK_IMAGE_TILING_RANGE_SIZE = (VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1),817VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF818} VkImageTiling;819820typedef enum VkPhysicalDeviceType {821VK_PHYSICAL_DEVICE_TYPE_OTHER = 0,822VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1,823VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2,824VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3,825VK_PHYSICAL_DEVICE_TYPE_CPU = 4,826VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE = VK_PHYSICAL_DEVICE_TYPE_OTHER,827VK_PHYSICAL_DEVICE_TYPE_END_RANGE = VK_PHYSICAL_DEVICE_TYPE_CPU,828VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE = (VK_PHYSICAL_DEVICE_TYPE_CPU - VK_PHYSICAL_DEVICE_TYPE_OTHER + 1),829VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF830} VkPhysicalDeviceType;831832typedef enum VkQueryType {833VK_QUERY_TYPE_OCCLUSION = 0,834VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,835VK_QUERY_TYPE_TIMESTAMP = 2,836VK_QUERY_TYPE_COMPACTED_SIZE_NVX = 1000165000,837VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION,838VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP,839VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1),840VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF841} VkQueryType;842843typedef enum VkSharingMode {844VK_SHARING_MODE_EXCLUSIVE = 0,845VK_SHARING_MODE_CONCURRENT = 1,846VK_SHARING_MODE_BEGIN_RANGE = VK_SHARING_MODE_EXCLUSIVE,847VK_SHARING_MODE_END_RANGE = VK_SHARING_MODE_CONCURRENT,848VK_SHARING_MODE_RANGE_SIZE = (VK_SHARING_MODE_CONCURRENT - VK_SHARING_MODE_EXCLUSIVE + 1),849VK_SHARING_MODE_MAX_ENUM = 0x7FFFFFFF850} VkSharingMode;851852typedef enum VkImageLayout {853VK_IMAGE_LAYOUT_UNDEFINED = 0,854VK_IMAGE_LAYOUT_GENERAL = 1,855VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2,856VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3,857VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4,858VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5,859VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6,860VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7,861VK_IMAGE_LAYOUT_PREINITIALIZED = 8,862VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL = 1000117000,863VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL = 1000117001,864VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002,865VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR = 1000111000,866VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV = 1000164003,867VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,868VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,869VK_IMAGE_LAYOUT_BEGIN_RANGE = VK_IMAGE_LAYOUT_UNDEFINED,870VK_IMAGE_LAYOUT_END_RANGE = VK_IMAGE_LAYOUT_PREINITIALIZED,871VK_IMAGE_LAYOUT_RANGE_SIZE = (VK_IMAGE_LAYOUT_PREINITIALIZED - VK_IMAGE_LAYOUT_UNDEFINED + 1),872VK_IMAGE_LAYOUT_MAX_ENUM = 0x7FFFFFFF873} VkImageLayout;874875typedef enum VkImageViewType {876VK_IMAGE_VIEW_TYPE_1D = 0,877VK_IMAGE_VIEW_TYPE_2D = 1,878VK_IMAGE_VIEW_TYPE_3D = 2,879VK_IMAGE_VIEW_TYPE_CUBE = 3,880VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4,881VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5,882VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6,883VK_IMAGE_VIEW_TYPE_BEGIN_RANGE = VK_IMAGE_VIEW_TYPE_1D,884VK_IMAGE_VIEW_TYPE_END_RANGE = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY,885VK_IMAGE_VIEW_TYPE_RANGE_SIZE = (VK_IMAGE_VIEW_TYPE_CUBE_ARRAY - VK_IMAGE_VIEW_TYPE_1D + 1),886VK_IMAGE_VIEW_TYPE_MAX_ENUM = 0x7FFFFFFF887} VkImageViewType;888889typedef enum VkComponentSwizzle {890VK_COMPONENT_SWIZZLE_IDENTITY = 0,891VK_COMPONENT_SWIZZLE_ZERO = 1,892VK_COMPONENT_SWIZZLE_ONE = 2,893VK_COMPONENT_SWIZZLE_R = 3,894VK_COMPONENT_SWIZZLE_G = 4,895VK_COMPONENT_SWIZZLE_B = 5,896VK_COMPONENT_SWIZZLE_A = 6,897VK_COMPONENT_SWIZZLE_BEGIN_RANGE = VK_COMPONENT_SWIZZLE_IDENTITY,898VK_COMPONENT_SWIZZLE_END_RANGE = VK_COMPONENT_SWIZZLE_A,899VK_COMPONENT_SWIZZLE_RANGE_SIZE = (VK_COMPONENT_SWIZZLE_A - VK_COMPONENT_SWIZZLE_IDENTITY + 1),900VK_COMPONENT_SWIZZLE_MAX_ENUM = 0x7FFFFFFF901} VkComponentSwizzle;902903typedef enum VkVertexInputRate {904VK_VERTEX_INPUT_RATE_VERTEX = 0,905VK_VERTEX_INPUT_RATE_INSTANCE = 1,906VK_VERTEX_INPUT_RATE_BEGIN_RANGE = VK_VERTEX_INPUT_RATE_VERTEX,907VK_VERTEX_INPUT_RATE_END_RANGE = VK_VERTEX_INPUT_RATE_INSTANCE,908VK_VERTEX_INPUT_RATE_RANGE_SIZE = (VK_VERTEX_INPUT_RATE_INSTANCE - VK_VERTEX_INPUT_RATE_VERTEX + 1),909VK_VERTEX_INPUT_RATE_MAX_ENUM = 0x7FFFFFFF910} VkVertexInputRate;911912typedef enum VkPrimitiveTopology {913VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0,914VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1,915VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2,916VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3,917VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4,918VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5,919VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6,920VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7,921VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8,922VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9,923VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10,924VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE = VK_PRIMITIVE_TOPOLOGY_POINT_LIST,925VK_PRIMITIVE_TOPOLOGY_END_RANGE = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST,926VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE = (VK_PRIMITIVE_TOPOLOGY_PATCH_LIST - VK_PRIMITIVE_TOPOLOGY_POINT_LIST + 1),927VK_PRIMITIVE_TOPOLOGY_MAX_ENUM = 0x7FFFFFFF928} VkPrimitiveTopology;929930typedef enum VkPolygonMode {931VK_POLYGON_MODE_FILL = 0,932VK_POLYGON_MODE_LINE = 1,933VK_POLYGON_MODE_POINT = 2,934VK_POLYGON_MODE_FILL_RECTANGLE_NV = 1000153000,935VK_POLYGON_MODE_BEGIN_RANGE = VK_POLYGON_MODE_FILL,936VK_POLYGON_MODE_END_RANGE = VK_POLYGON_MODE_POINT,937VK_POLYGON_MODE_RANGE_SIZE = (VK_POLYGON_MODE_POINT - VK_POLYGON_MODE_FILL + 1),938VK_POLYGON_MODE_MAX_ENUM = 0x7FFFFFFF939} VkPolygonMode;940941typedef enum VkFrontFace {942VK_FRONT_FACE_COUNTER_CLOCKWISE = 0,943VK_FRONT_FACE_CLOCKWISE = 1,944VK_FRONT_FACE_BEGIN_RANGE = VK_FRONT_FACE_COUNTER_CLOCKWISE,945VK_FRONT_FACE_END_RANGE = VK_FRONT_FACE_CLOCKWISE,946VK_FRONT_FACE_RANGE_SIZE = (VK_FRONT_FACE_CLOCKWISE - VK_FRONT_FACE_COUNTER_CLOCKWISE + 1),947VK_FRONT_FACE_MAX_ENUM = 0x7FFFFFFF948} VkFrontFace;949950typedef enum VkCompareOp {951VK_COMPARE_OP_NEVER = 0,952VK_COMPARE_OP_LESS = 1,953VK_COMPARE_OP_EQUAL = 2,954VK_COMPARE_OP_LESS_OR_EQUAL = 3,955VK_COMPARE_OP_GREATER = 4,956VK_COMPARE_OP_NOT_EQUAL = 5,957VK_COMPARE_OP_GREATER_OR_EQUAL = 6,958VK_COMPARE_OP_ALWAYS = 7,959VK_COMPARE_OP_BEGIN_RANGE = VK_COMPARE_OP_NEVER,960VK_COMPARE_OP_END_RANGE = VK_COMPARE_OP_ALWAYS,961VK_COMPARE_OP_RANGE_SIZE = (VK_COMPARE_OP_ALWAYS - VK_COMPARE_OP_NEVER + 1),962VK_COMPARE_OP_MAX_ENUM = 0x7FFFFFFF963} VkCompareOp;964965typedef enum VkStencilOp {966VK_STENCIL_OP_KEEP = 0,967VK_STENCIL_OP_ZERO = 1,968VK_STENCIL_OP_REPLACE = 2,969VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3,970VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4,971VK_STENCIL_OP_INVERT = 5,972VK_STENCIL_OP_INCREMENT_AND_WRAP = 6,973VK_STENCIL_OP_DECREMENT_AND_WRAP = 7,974VK_STENCIL_OP_BEGIN_RANGE = VK_STENCIL_OP_KEEP,975VK_STENCIL_OP_END_RANGE = VK_STENCIL_OP_DECREMENT_AND_WRAP,976VK_STENCIL_OP_RANGE_SIZE = (VK_STENCIL_OP_DECREMENT_AND_WRAP - VK_STENCIL_OP_KEEP + 1),977VK_STENCIL_OP_MAX_ENUM = 0x7FFFFFFF978} VkStencilOp;979980typedef enum VkLogicOp {981VK_LOGIC_OP_CLEAR = 0,982VK_LOGIC_OP_AND = 1,983VK_LOGIC_OP_AND_REVERSE = 2,984VK_LOGIC_OP_COPY = 3,985VK_LOGIC_OP_AND_INVERTED = 4,986VK_LOGIC_OP_NO_OP = 5,987VK_LOGIC_OP_XOR = 6,988VK_LOGIC_OP_OR = 7,989VK_LOGIC_OP_NOR = 8,990VK_LOGIC_OP_EQUIVALENT = 9,991VK_LOGIC_OP_INVERT = 10,992VK_LOGIC_OP_OR_REVERSE = 11,993VK_LOGIC_OP_COPY_INVERTED = 12,994VK_LOGIC_OP_OR_INVERTED = 13,995VK_LOGIC_OP_NAND = 14,996VK_LOGIC_OP_SET = 15,997VK_LOGIC_OP_BEGIN_RANGE = VK_LOGIC_OP_CLEAR,998VK_LOGIC_OP_END_RANGE = VK_LOGIC_OP_SET,999VK_LOGIC_OP_RANGE_SIZE = (VK_LOGIC_OP_SET - VK_LOGIC_OP_CLEAR + 1),1000VK_LOGIC_OP_MAX_ENUM = 0x7FFFFFFF1001} VkLogicOp;10021003typedef enum VkBlendFactor {1004VK_BLEND_FACTOR_ZERO = 0,1005VK_BLEND_FACTOR_ONE = 1,1006VK_BLEND_FACTOR_SRC_COLOR = 2,1007VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3,1008VK_BLEND_FACTOR_DST_COLOR = 4,1009VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5,1010VK_BLEND_FACTOR_SRC_ALPHA = 6,1011VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7,1012VK_BLEND_FACTOR_DST_ALPHA = 8,1013VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9,1014VK_BLEND_FACTOR_CONSTANT_COLOR = 10,1015VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11,1016VK_BLEND_FACTOR_CONSTANT_ALPHA = 12,1017VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13,1018VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14,1019VK_BLEND_FACTOR_SRC1_COLOR = 15,1020VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16,1021VK_BLEND_FACTOR_SRC1_ALPHA = 17,1022VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18,1023VK_BLEND_FACTOR_BEGIN_RANGE = VK_BLEND_FACTOR_ZERO,1024VK_BLEND_FACTOR_END_RANGE = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA,1025VK_BLEND_FACTOR_RANGE_SIZE = (VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - VK_BLEND_FACTOR_ZERO + 1),1026VK_BLEND_FACTOR_MAX_ENUM = 0x7FFFFFFF1027} VkBlendFactor;10281029typedef enum VkBlendOp {1030VK_BLEND_OP_ADD = 0,1031VK_BLEND_OP_SUBTRACT = 1,1032VK_BLEND_OP_REVERSE_SUBTRACT = 2,1033VK_BLEND_OP_MIN = 3,1034VK_BLEND_OP_MAX = 4,1035VK_BLEND_OP_ZERO_EXT = 1000148000,1036VK_BLEND_OP_SRC_EXT = 1000148001,1037VK_BLEND_OP_DST_EXT = 1000148002,1038VK_BLEND_OP_SRC_OVER_EXT = 1000148003,1039VK_BLEND_OP_DST_OVER_EXT = 1000148004,1040VK_BLEND_OP_SRC_IN_EXT = 1000148005,1041VK_BLEND_OP_DST_IN_EXT = 1000148006,1042VK_BLEND_OP_SRC_OUT_EXT = 1000148007,1043VK_BLEND_OP_DST_OUT_EXT = 1000148008,1044VK_BLEND_OP_SRC_ATOP_EXT = 1000148009,1045VK_BLEND_OP_DST_ATOP_EXT = 1000148010,1046VK_BLEND_OP_XOR_EXT = 1000148011,1047VK_BLEND_OP_MULTIPLY_EXT = 1000148012,1048VK_BLEND_OP_SCREEN_EXT = 1000148013,1049VK_BLEND_OP_OVERLAY_EXT = 1000148014,1050VK_BLEND_OP_DARKEN_EXT = 1000148015,1051VK_BLEND_OP_LIGHTEN_EXT = 1000148016,1052VK_BLEND_OP_COLORDODGE_EXT = 1000148017,1053VK_BLEND_OP_COLORBURN_EXT = 1000148018,1054VK_BLEND_OP_HARDLIGHT_EXT = 1000148019,1055VK_BLEND_OP_SOFTLIGHT_EXT = 1000148020,1056VK_BLEND_OP_DIFFERENCE_EXT = 1000148021,1057VK_BLEND_OP_EXCLUSION_EXT = 1000148022,1058VK_BLEND_OP_INVERT_EXT = 1000148023,1059VK_BLEND_OP_INVERT_RGB_EXT = 1000148024,1060VK_BLEND_OP_LINEARDODGE_EXT = 1000148025,1061VK_BLEND_OP_LINEARBURN_EXT = 1000148026,1062VK_BLEND_OP_VIVIDLIGHT_EXT = 1000148027,1063VK_BLEND_OP_LINEARLIGHT_EXT = 1000148028,1064VK_BLEND_OP_PINLIGHT_EXT = 1000148029,1065VK_BLEND_OP_HARDMIX_EXT = 1000148030,1066VK_BLEND_OP_HSL_HUE_EXT = 1000148031,1067VK_BLEND_OP_HSL_SATURATION_EXT = 1000148032,1068VK_BLEND_OP_HSL_COLOR_EXT = 1000148033,1069VK_BLEND_OP_HSL_LUMINOSITY_EXT = 1000148034,1070VK_BLEND_OP_PLUS_EXT = 1000148035,1071VK_BLEND_OP_PLUS_CLAMPED_EXT = 1000148036,1072VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT = 1000148037,1073VK_BLEND_OP_PLUS_DARKER_EXT = 1000148038,1074VK_BLEND_OP_MINUS_EXT = 1000148039,1075VK_BLEND_OP_MINUS_CLAMPED_EXT = 1000148040,1076VK_BLEND_OP_CONTRAST_EXT = 1000148041,1077VK_BLEND_OP_INVERT_OVG_EXT = 1000148042,1078VK_BLEND_OP_RED_EXT = 1000148043,1079VK_BLEND_OP_GREEN_EXT = 1000148044,1080VK_BLEND_OP_BLUE_EXT = 1000148045,1081VK_BLEND_OP_BEGIN_RANGE = VK_BLEND_OP_ADD,1082VK_BLEND_OP_END_RANGE = VK_BLEND_OP_MAX,1083VK_BLEND_OP_RANGE_SIZE = (VK_BLEND_OP_MAX - VK_BLEND_OP_ADD + 1),1084VK_BLEND_OP_MAX_ENUM = 0x7FFFFFFF1085} VkBlendOp;10861087typedef enum VkDynamicState {1088VK_DYNAMIC_STATE_VIEWPORT = 0,1089VK_DYNAMIC_STATE_SCISSOR = 1,1090VK_DYNAMIC_STATE_LINE_WIDTH = 2,1091VK_DYNAMIC_STATE_DEPTH_BIAS = 3,1092VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4,1093VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5,1094VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6,1095VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7,1096VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8,1097VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000,1098VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000,1099VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT = 1000143000,1100VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV = 1000164004,1101VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV = 1000164006,1102VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV = 1000205001,1103VK_DYNAMIC_STATE_BEGIN_RANGE = VK_DYNAMIC_STATE_VIEWPORT,1104VK_DYNAMIC_STATE_END_RANGE = VK_DYNAMIC_STATE_STENCIL_REFERENCE,1105VK_DYNAMIC_STATE_RANGE_SIZE = (VK_DYNAMIC_STATE_STENCIL_REFERENCE - VK_DYNAMIC_STATE_VIEWPORT + 1),1106VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF1107} VkDynamicState;11081109typedef enum VkFilter {1110VK_FILTER_NEAREST = 0,1111VK_FILTER_LINEAR = 1,1112VK_FILTER_CUBIC_IMG = 1000015000,1113VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST,1114VK_FILTER_END_RANGE = VK_FILTER_LINEAR,1115VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1),1116VK_FILTER_MAX_ENUM = 0x7FFFFFFF1117} VkFilter;11181119typedef enum VkSamplerMipmapMode {1120VK_SAMPLER_MIPMAP_MODE_NEAREST = 0,1121VK_SAMPLER_MIPMAP_MODE_LINEAR = 1,1122VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE = VK_SAMPLER_MIPMAP_MODE_NEAREST,1123VK_SAMPLER_MIPMAP_MODE_END_RANGE = VK_SAMPLER_MIPMAP_MODE_LINEAR,1124VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE = (VK_SAMPLER_MIPMAP_MODE_LINEAR - VK_SAMPLER_MIPMAP_MODE_NEAREST + 1),1125VK_SAMPLER_MIPMAP_MODE_MAX_ENUM = 0x7FFFFFFF1126} VkSamplerMipmapMode;11271128typedef enum VkSamplerAddressMode {1129VK_SAMPLER_ADDRESS_MODE_REPEAT = 0,1130VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1,1131VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2,1132VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3,1133VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4,1134VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_REPEAT,1135VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER,1136VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE = (VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1),1137VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF1138} VkSamplerAddressMode;11391140typedef enum VkBorderColor {1141VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0,1142VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1,1143VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2,1144VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3,1145VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4,1146VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5,1147VK_BORDER_COLOR_BEGIN_RANGE = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,1148VK_BORDER_COLOR_END_RANGE = VK_BORDER_COLOR_INT_OPAQUE_WHITE,1149VK_BORDER_COLOR_RANGE_SIZE = (VK_BORDER_COLOR_INT_OPAQUE_WHITE - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK + 1),1150VK_BORDER_COLOR_MAX_ENUM = 0x7FFFFFFF1151} VkBorderColor;11521153typedef enum VkDescriptorType {1154VK_DESCRIPTOR_TYPE_SAMPLER = 0,1155VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1,1156VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2,1157VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3,1158VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4,1159VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5,1160VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6,1161VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7,1162VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8,1163VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9,1164VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10,1165VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = 1000138000,1166VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NVX = 1000165000,1167VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER,1168VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,1169VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1),1170VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF1171} VkDescriptorType;11721173typedef enum VkAttachmentLoadOp {1174VK_ATTACHMENT_LOAD_OP_LOAD = 0,1175VK_ATTACHMENT_LOAD_OP_CLEAR = 1,1176VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2,1177VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE = VK_ATTACHMENT_LOAD_OP_LOAD,1178VK_ATTACHMENT_LOAD_OP_END_RANGE = VK_ATTACHMENT_LOAD_OP_DONT_CARE,1179VK_ATTACHMENT_LOAD_OP_RANGE_SIZE = (VK_ATTACHMENT_LOAD_OP_DONT_CARE - VK_ATTACHMENT_LOAD_OP_LOAD + 1),1180VK_ATTACHMENT_LOAD_OP_MAX_ENUM = 0x7FFFFFFF1181} VkAttachmentLoadOp;11821183typedef enum VkAttachmentStoreOp {1184VK_ATTACHMENT_STORE_OP_STORE = 0,1185VK_ATTACHMENT_STORE_OP_DONT_CARE = 1,1186VK_ATTACHMENT_STORE_OP_BEGIN_RANGE = VK_ATTACHMENT_STORE_OP_STORE,1187VK_ATTACHMENT_STORE_OP_END_RANGE = VK_ATTACHMENT_STORE_OP_DONT_CARE,1188VK_ATTACHMENT_STORE_OP_RANGE_SIZE = (VK_ATTACHMENT_STORE_OP_DONT_CARE - VK_ATTACHMENT_STORE_OP_STORE + 1),1189VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF1190} VkAttachmentStoreOp;11911192typedef enum VkPipelineBindPoint {1193VK_PIPELINE_BIND_POINT_GRAPHICS = 0,1194VK_PIPELINE_BIND_POINT_COMPUTE = 1,1195VK_PIPELINE_BIND_POINT_RAYTRACING_NVX = 1000165000,1196VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS,1197VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE,1198VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1),1199VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF1200} VkPipelineBindPoint;12011202typedef enum VkCommandBufferLevel {1203VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0,1204VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1,1205VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE = VK_COMMAND_BUFFER_LEVEL_PRIMARY,1206VK_COMMAND_BUFFER_LEVEL_END_RANGE = VK_COMMAND_BUFFER_LEVEL_SECONDARY,1207VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE = (VK_COMMAND_BUFFER_LEVEL_SECONDARY - VK_COMMAND_BUFFER_LEVEL_PRIMARY + 1),1208VK_COMMAND_BUFFER_LEVEL_MAX_ENUM = 0x7FFFFFFF1209} VkCommandBufferLevel;12101211typedef enum VkIndexType {1212VK_INDEX_TYPE_UINT16 = 0,1213VK_INDEX_TYPE_UINT32 = 1,1214VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16,1215VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32,1216VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1),1217VK_INDEX_TYPE_MAX_ENUM = 0x7FFFFFFF1218} VkIndexType;12191220typedef enum VkSubpassContents {1221VK_SUBPASS_CONTENTS_INLINE = 0,1222VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1,1223VK_SUBPASS_CONTENTS_BEGIN_RANGE = VK_SUBPASS_CONTENTS_INLINE,1224VK_SUBPASS_CONTENTS_END_RANGE = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS,1225VK_SUBPASS_CONTENTS_RANGE_SIZE = (VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS - VK_SUBPASS_CONTENTS_INLINE + 1),1226VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF1227} VkSubpassContents;12281229typedef enum VkObjectType {1230VK_OBJECT_TYPE_UNKNOWN = 0,1231VK_OBJECT_TYPE_INSTANCE = 1,1232VK_OBJECT_TYPE_PHYSICAL_DEVICE = 2,1233VK_OBJECT_TYPE_DEVICE = 3,1234VK_OBJECT_TYPE_QUEUE = 4,1235VK_OBJECT_TYPE_SEMAPHORE = 5,1236VK_OBJECT_TYPE_COMMAND_BUFFER = 6,1237VK_OBJECT_TYPE_FENCE = 7,1238VK_OBJECT_TYPE_DEVICE_MEMORY = 8,1239VK_OBJECT_TYPE_BUFFER = 9,1240VK_OBJECT_TYPE_IMAGE = 10,1241VK_OBJECT_TYPE_EVENT = 11,1242VK_OBJECT_TYPE_QUERY_POOL = 12,1243VK_OBJECT_TYPE_BUFFER_VIEW = 13,1244VK_OBJECT_TYPE_IMAGE_VIEW = 14,1245VK_OBJECT_TYPE_SHADER_MODULE = 15,1246VK_OBJECT_TYPE_PIPELINE_CACHE = 16,1247VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17,1248VK_OBJECT_TYPE_RENDER_PASS = 18,1249VK_OBJECT_TYPE_PIPELINE = 19,1250VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT = 20,1251VK_OBJECT_TYPE_SAMPLER = 21,1252VK_OBJECT_TYPE_DESCRIPTOR_POOL = 22,1253VK_OBJECT_TYPE_DESCRIPTOR_SET = 23,1254VK_OBJECT_TYPE_FRAMEBUFFER = 24,1255VK_OBJECT_TYPE_COMMAND_POOL = 25,1256VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION = 1000156000,1257VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE = 1000085000,1258VK_OBJECT_TYPE_SURFACE_KHR = 1000000000,1259VK_OBJECT_TYPE_SWAPCHAIN_KHR = 1000001000,1260VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000,1261VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001,1262VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000,1263VK_OBJECT_TYPE_OBJECT_TABLE_NVX = 1000086000,1264VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX = 1000086001,1265VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000128000,1266VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000,1267VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NVX = 1000165000,1268VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,1269VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,1270VK_OBJECT_TYPE_BEGIN_RANGE = VK_OBJECT_TYPE_UNKNOWN,1271VK_OBJECT_TYPE_END_RANGE = VK_OBJECT_TYPE_COMMAND_POOL,1272VK_OBJECT_TYPE_RANGE_SIZE = (VK_OBJECT_TYPE_COMMAND_POOL - VK_OBJECT_TYPE_UNKNOWN + 1),1273VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF1274} VkObjectType;12751276typedef enum VkVendorId {1277VK_VENDOR_ID_VIV = 0x10001,1278VK_VENDOR_ID_VSI = 0x10002,1279VK_VENDOR_ID_KAZAN = 0x10003,1280VK_VENDOR_ID_BEGIN_RANGE = VK_VENDOR_ID_VIV,1281VK_VENDOR_ID_END_RANGE = VK_VENDOR_ID_KAZAN,1282VK_VENDOR_ID_RANGE_SIZE = (VK_VENDOR_ID_KAZAN - VK_VENDOR_ID_VIV + 1),1283VK_VENDOR_ID_MAX_ENUM = 0x7FFFFFFF1284} VkVendorId;12851286typedef VkFlags VkInstanceCreateFlags;12871288typedef enum VkFormatFeatureFlagBits {1289VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 0x00000001,1290VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 0x00000002,1291VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004,1292VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008,1293VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 0x00000010,1294VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020,1295VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 0x00000040,1296VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 0x00000080,1297VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100,1298VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200,1299VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400,1300VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800,1301VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000,1302VK_FORMAT_FEATURE_TRANSFER_SRC_BIT = 0x00004000,1303VK_FORMAT_FEATURE_TRANSFER_DST_BIT = 0x00008000,1304VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT = 0x00020000,1305VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT = 0x00040000,1306VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT = 0x00080000,1307VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT = 0x00100000,1308VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT = 0x00200000,1309VK_FORMAT_FEATURE_DISJOINT_BIT = 0x00400000,1310VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT = 0x00800000,1311VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,1312VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT = 0x00010000,1313VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,1314VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,1315VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,1316VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,1317VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,1318VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,1319VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,1320VK_FORMAT_FEATURE_DISJOINT_BIT_KHR = VK_FORMAT_FEATURE_DISJOINT_BIT,1321VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,1322VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1323} VkFormatFeatureFlagBits;1324typedef VkFlags VkFormatFeatureFlags;13251326typedef enum VkImageUsageFlagBits {1327VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 0x00000001,1328VK_IMAGE_USAGE_TRANSFER_DST_BIT = 0x00000002,1329VK_IMAGE_USAGE_SAMPLED_BIT = 0x00000004,1330VK_IMAGE_USAGE_STORAGE_BIT = 0x00000008,1331VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 0x00000010,1332VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020,1333VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040,1334VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080,1335VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV = 0x00000100,1336VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1337} VkImageUsageFlagBits;1338typedef VkFlags VkImageUsageFlags;13391340typedef enum VkImageCreateFlagBits {1341VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 0x00000001,1342VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,1343VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 0x00000004,1344VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 0x00000008,1345VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 0x00000010,1346VK_IMAGE_CREATE_ALIAS_BIT = 0x00000400,1347VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT = 0x00000040,1348VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT = 0x00000020,1349VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT = 0x00000080,1350VK_IMAGE_CREATE_EXTENDED_USAGE_BIT = 0x00000100,1351VK_IMAGE_CREATE_PROTECTED_BIT = 0x00000800,1352VK_IMAGE_CREATE_DISJOINT_BIT = 0x00000200,1353VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV = 0x00002000,1354VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT = 0x00001000,1355VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,1356VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,1357VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,1358VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,1359VK_IMAGE_CREATE_DISJOINT_BIT_KHR = VK_IMAGE_CREATE_DISJOINT_BIT,1360VK_IMAGE_CREATE_ALIAS_BIT_KHR = VK_IMAGE_CREATE_ALIAS_BIT,1361VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1362} VkImageCreateFlagBits;1363typedef VkFlags VkImageCreateFlags;13641365typedef enum VkSampleCountFlagBits {1366VK_SAMPLE_COUNT_1_BIT = 0x00000001,1367VK_SAMPLE_COUNT_2_BIT = 0x00000002,1368VK_SAMPLE_COUNT_4_BIT = 0x00000004,1369VK_SAMPLE_COUNT_8_BIT = 0x00000008,1370VK_SAMPLE_COUNT_16_BIT = 0x00000010,1371VK_SAMPLE_COUNT_32_BIT = 0x00000020,1372VK_SAMPLE_COUNT_64_BIT = 0x00000040,1373VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1374} VkSampleCountFlagBits;1375typedef VkFlags VkSampleCountFlags;13761377typedef enum VkQueueFlagBits {1378VK_QUEUE_GRAPHICS_BIT = 0x00000001,1379VK_QUEUE_COMPUTE_BIT = 0x00000002,1380VK_QUEUE_TRANSFER_BIT = 0x00000004,1381VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008,1382VK_QUEUE_PROTECTED_BIT = 0x00000010,1383VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1384} VkQueueFlagBits;1385typedef VkFlags VkQueueFlags;13861387typedef enum VkMemoryPropertyFlagBits {1388VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001,1389VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002,1390VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004,1391VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008,1392VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010,1393VK_MEMORY_PROPERTY_PROTECTED_BIT = 0x00000020,1394VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1395} VkMemoryPropertyFlagBits;1396typedef VkFlags VkMemoryPropertyFlags;13971398typedef enum VkMemoryHeapFlagBits {1399VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 0x00000001,1400VK_MEMORY_HEAP_MULTI_INSTANCE_BIT = 0x00000002,1401VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT,1402VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1403} VkMemoryHeapFlagBits;1404typedef VkFlags VkMemoryHeapFlags;1405typedef VkFlags VkDeviceCreateFlags;14061407typedef enum VkDeviceQueueCreateFlagBits {1408VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT = 0x00000001,1409VK_DEVICE_QUEUE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1410} VkDeviceQueueCreateFlagBits;1411typedef VkFlags VkDeviceQueueCreateFlags;14121413typedef enum VkPipelineStageFlagBits {1414VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 0x00000001,1415VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 0x00000002,1416VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 0x00000004,1417VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 0x00000008,1418VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010,1419VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020,1420VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 0x00000040,1421VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 0x00000080,1422VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 0x00000100,1423VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 0x00000200,1424VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400,1425VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 0x00000800,1426VK_PIPELINE_STAGE_TRANSFER_BIT = 0x00001000,1427VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 0x00002000,1428VK_PIPELINE_STAGE_HOST_BIT = 0x00004000,1429VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000,1430VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,1431VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000,1432VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000,1433VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = 0x00400000,1434VK_PIPELINE_STAGE_RAYTRACING_BIT_NVX = 0x00200000,1435VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV = 0x00080000,1436VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV = 0x00100000,1437VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1438} VkPipelineStageFlagBits;1439typedef VkFlags VkPipelineStageFlags;1440typedef VkFlags VkMemoryMapFlags;14411442typedef enum VkImageAspectFlagBits {1443VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001,1444VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002,1445VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004,1446VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008,1447VK_IMAGE_ASPECT_PLANE_0_BIT = 0x00000010,1448VK_IMAGE_ASPECT_PLANE_1_BIT = 0x00000020,1449VK_IMAGE_ASPECT_PLANE_2_BIT = 0x00000040,1450VK_IMAGE_ASPECT_PLANE_0_BIT_KHR = VK_IMAGE_ASPECT_PLANE_0_BIT,1451VK_IMAGE_ASPECT_PLANE_1_BIT_KHR = VK_IMAGE_ASPECT_PLANE_1_BIT,1452VK_IMAGE_ASPECT_PLANE_2_BIT_KHR = VK_IMAGE_ASPECT_PLANE_2_BIT,1453VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1454} VkImageAspectFlagBits;1455typedef VkFlags VkImageAspectFlags;14561457typedef enum VkSparseImageFormatFlagBits {1458VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 0x00000001,1459VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 0x00000002,1460VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 0x00000004,1461VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1462} VkSparseImageFormatFlagBits;1463typedef VkFlags VkSparseImageFormatFlags;14641465typedef enum VkSparseMemoryBindFlagBits {1466VK_SPARSE_MEMORY_BIND_METADATA_BIT = 0x00000001,1467VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1468} VkSparseMemoryBindFlagBits;1469typedef VkFlags VkSparseMemoryBindFlags;14701471typedef enum VkFenceCreateFlagBits {1472VK_FENCE_CREATE_SIGNALED_BIT = 0x00000001,1473VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1474} VkFenceCreateFlagBits;1475typedef VkFlags VkFenceCreateFlags;1476typedef VkFlags VkSemaphoreCreateFlags;1477typedef VkFlags VkEventCreateFlags;1478typedef VkFlags VkQueryPoolCreateFlags;14791480typedef enum VkQueryPipelineStatisticFlagBits {1481VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 0x00000001,1482VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 0x00000002,1483VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 0x00000004,1484VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 0x00000008,1485VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 0x00000010,1486VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 0x00000020,1487VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 0x00000040,1488VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 0x00000080,1489VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 0x00000100,1490VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 0x00000200,1491VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400,1492VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1493} VkQueryPipelineStatisticFlagBits;1494typedef VkFlags VkQueryPipelineStatisticFlags;14951496typedef enum VkQueryResultFlagBits {1497VK_QUERY_RESULT_64_BIT = 0x00000001,1498VK_QUERY_RESULT_WAIT_BIT = 0x00000002,1499VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004,1500VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008,1501VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1502} VkQueryResultFlagBits;1503typedef VkFlags VkQueryResultFlags;15041505typedef enum VkBufferCreateFlagBits {1506VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 0x00000001,1507VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,1508VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004,1509VK_BUFFER_CREATE_PROTECTED_BIT = 0x00000008,1510VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1511} VkBufferCreateFlagBits;1512typedef VkFlags VkBufferCreateFlags;15131514typedef enum VkBufferUsageFlagBits {1515VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 0x00000001,1516VK_BUFFER_USAGE_TRANSFER_DST_BIT = 0x00000002,1517VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000004,1518VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 0x00000008,1519VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 0x00000010,1520VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 0x00000020,1521VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040,1522VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080,1523VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100,1524VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00000200,1525VK_BUFFER_USAGE_RAYTRACING_BIT_NVX = 0x00000400,1526VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1527} VkBufferUsageFlagBits;1528typedef VkFlags VkBufferUsageFlags;1529typedef VkFlags VkBufferViewCreateFlags;1530typedef VkFlags VkImageViewCreateFlags;1531typedef VkFlags VkShaderModuleCreateFlags;1532typedef VkFlags VkPipelineCacheCreateFlags;15331534typedef enum VkPipelineCreateFlagBits {1535VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001,1536VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002,1537VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,1538VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = 0x00000008,1539VK_PIPELINE_CREATE_DISPATCH_BASE = 0x00000010,1540VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NVX = 0x00000020,1541VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,1542VK_PIPELINE_CREATE_DISPATCH_BASE_KHR = VK_PIPELINE_CREATE_DISPATCH_BASE,1543VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1544} VkPipelineCreateFlagBits;1545typedef VkFlags VkPipelineCreateFlags;1546typedef VkFlags VkPipelineShaderStageCreateFlags;15471548typedef enum VkShaderStageFlagBits {1549VK_SHADER_STAGE_VERTEX_BIT = 0x00000001,1550VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002,1551VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004,1552VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,1553VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,1554VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,1555VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F,1556VK_SHADER_STAGE_ALL = 0x7FFFFFFF,1557VK_SHADER_STAGE_RAYGEN_BIT_NVX = 0x00000100,1558VK_SHADER_STAGE_ANY_HIT_BIT_NVX = 0x00000200,1559VK_SHADER_STAGE_CLOSEST_HIT_BIT_NVX = 0x00000400,1560VK_SHADER_STAGE_MISS_BIT_NVX = 0x00000800,1561VK_SHADER_STAGE_INTERSECTION_BIT_NVX = 0x00001000,1562VK_SHADER_STAGE_CALLABLE_BIT_NVX = 0x00002000,1563VK_SHADER_STAGE_TASK_BIT_NV = 0x00000040,1564VK_SHADER_STAGE_MESH_BIT_NV = 0x00000080,1565VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1566} VkShaderStageFlagBits;1567typedef VkFlags VkPipelineVertexInputStateCreateFlags;1568typedef VkFlags VkPipelineInputAssemblyStateCreateFlags;1569typedef VkFlags VkPipelineTessellationStateCreateFlags;1570typedef VkFlags VkPipelineViewportStateCreateFlags;1571typedef VkFlags VkPipelineRasterizationStateCreateFlags;15721573typedef enum VkCullModeFlagBits {1574VK_CULL_MODE_NONE = 0,1575VK_CULL_MODE_FRONT_BIT = 0x00000001,1576VK_CULL_MODE_BACK_BIT = 0x00000002,1577VK_CULL_MODE_FRONT_AND_BACK = 0x00000003,1578VK_CULL_MODE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1579} VkCullModeFlagBits;1580typedef VkFlags VkCullModeFlags;1581typedef VkFlags VkPipelineMultisampleStateCreateFlags;1582typedef VkFlags VkPipelineDepthStencilStateCreateFlags;1583typedef VkFlags VkPipelineColorBlendStateCreateFlags;15841585typedef enum VkColorComponentFlagBits {1586VK_COLOR_COMPONENT_R_BIT = 0x00000001,1587VK_COLOR_COMPONENT_G_BIT = 0x00000002,1588VK_COLOR_COMPONENT_B_BIT = 0x00000004,1589VK_COLOR_COMPONENT_A_BIT = 0x00000008,1590VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1591} VkColorComponentFlagBits;1592typedef VkFlags VkColorComponentFlags;1593typedef VkFlags VkPipelineDynamicStateCreateFlags;1594typedef VkFlags VkPipelineLayoutCreateFlags;1595typedef VkFlags VkShaderStageFlags;1596typedef VkFlags VkSamplerCreateFlags;15971598typedef enum VkDescriptorSetLayoutCreateFlagBits {1599VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001,1600VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT = 0x00000002,1601VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1602} VkDescriptorSetLayoutCreateFlagBits;1603typedef VkFlags VkDescriptorSetLayoutCreateFlags;16041605typedef enum VkDescriptorPoolCreateFlagBits {1606VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001,1607VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT = 0x00000002,1608VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1609} VkDescriptorPoolCreateFlagBits;1610typedef VkFlags VkDescriptorPoolCreateFlags;1611typedef VkFlags VkDescriptorPoolResetFlags;1612typedef VkFlags VkFramebufferCreateFlags;1613typedef VkFlags VkRenderPassCreateFlags;16141615typedef enum VkAttachmentDescriptionFlagBits {1616VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 0x00000001,1617VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1618} VkAttachmentDescriptionFlagBits;1619typedef VkFlags VkAttachmentDescriptionFlags;16201621typedef enum VkSubpassDescriptionFlagBits {1622VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX = 0x00000001,1623VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX = 0x00000002,1624VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1625} VkSubpassDescriptionFlagBits;1626typedef VkFlags VkSubpassDescriptionFlags;16271628typedef enum VkAccessFlagBits {1629VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 0x00000001,1630VK_ACCESS_INDEX_READ_BIT = 0x00000002,1631VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004,1632VK_ACCESS_UNIFORM_READ_BIT = 0x00000008,1633VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 0x00000010,1634VK_ACCESS_SHADER_READ_BIT = 0x00000020,1635VK_ACCESS_SHADER_WRITE_BIT = 0x00000040,1636VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 0x00000080,1637VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100,1638VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200,1639VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400,1640VK_ACCESS_TRANSFER_READ_BIT = 0x00000800,1641VK_ACCESS_TRANSFER_WRITE_BIT = 0x00001000,1642VK_ACCESS_HOST_READ_BIT = 0x00002000,1643VK_ACCESS_HOST_WRITE_BIT = 0x00004000,1644VK_ACCESS_MEMORY_READ_BIT = 0x00008000,1645VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000,1646VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT = 0x00100000,1647VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX = 0x00020000,1648VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX = 0x00040000,1649VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000,1650VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV = 0x00800000,1651VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NVX = 0x00200000,1652VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NVX = 0x00400000,1653VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1654} VkAccessFlagBits;1655typedef VkFlags VkAccessFlags;16561657typedef enum VkDependencyFlagBits {1658VK_DEPENDENCY_BY_REGION_BIT = 0x00000001,1659VK_DEPENDENCY_DEVICE_GROUP_BIT = 0x00000004,1660VK_DEPENDENCY_VIEW_LOCAL_BIT = 0x00000002,1661VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR = VK_DEPENDENCY_VIEW_LOCAL_BIT,1662VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR = VK_DEPENDENCY_DEVICE_GROUP_BIT,1663VK_DEPENDENCY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1664} VkDependencyFlagBits;1665typedef VkFlags VkDependencyFlags;16661667typedef enum VkCommandPoolCreateFlagBits {1668VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 0x00000001,1669VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 0x00000002,1670VK_COMMAND_POOL_CREATE_PROTECTED_BIT = 0x00000004,1671VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1672} VkCommandPoolCreateFlagBits;1673typedef VkFlags VkCommandPoolCreateFlags;16741675typedef enum VkCommandPoolResetFlagBits {1676VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001,1677VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1678} VkCommandPoolResetFlagBits;1679typedef VkFlags VkCommandPoolResetFlags;16801681typedef enum VkCommandBufferUsageFlagBits {1682VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001,1683VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002,1684VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004,1685VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1686} VkCommandBufferUsageFlagBits;1687typedef VkFlags VkCommandBufferUsageFlags;16881689typedef enum VkQueryControlFlagBits {1690VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001,1691VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1692} VkQueryControlFlagBits;1693typedef VkFlags VkQueryControlFlags;16941695typedef enum VkCommandBufferResetFlagBits {1696VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001,1697VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1698} VkCommandBufferResetFlagBits;1699typedef VkFlags VkCommandBufferResetFlags;17001701typedef enum VkStencilFaceFlagBits {1702VK_STENCIL_FACE_FRONT_BIT = 0x00000001,1703VK_STENCIL_FACE_BACK_BIT = 0x00000002,1704VK_STENCIL_FRONT_AND_BACK = 0x00000003,1705VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF1706} VkStencilFaceFlagBits;1707typedef VkFlags VkStencilFaceFlags;17081709typedef struct VkApplicationInfo {1710VkStructureType sType;1711const void* pNext;1712const char* pApplicationName;1713uint32_t applicationVersion;1714const char* pEngineName;1715uint32_t engineVersion;1716uint32_t apiVersion;1717} VkApplicationInfo;17181719typedef struct VkInstanceCreateInfo {1720VkStructureType sType;1721const void* pNext;1722VkInstanceCreateFlags flags;1723const VkApplicationInfo* pApplicationInfo;1724uint32_t enabledLayerCount;1725const char* const* ppEnabledLayerNames;1726uint32_t enabledExtensionCount;1727const char* const* ppEnabledExtensionNames;1728} VkInstanceCreateInfo;17291730typedef void* (VKAPI_PTR *PFN_vkAllocationFunction)(1731void* pUserData,1732size_t size,1733size_t alignment,1734VkSystemAllocationScope allocationScope);17351736typedef void* (VKAPI_PTR *PFN_vkReallocationFunction)(1737void* pUserData,1738void* pOriginal,1739size_t size,1740size_t alignment,1741VkSystemAllocationScope allocationScope);17421743typedef void (VKAPI_PTR *PFN_vkFreeFunction)(1744void* pUserData,1745void* pMemory);17461747typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)(1748void* pUserData,1749size_t size,1750VkInternalAllocationType allocationType,1751VkSystemAllocationScope allocationScope);17521753typedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)(1754void* pUserData,1755size_t size,1756VkInternalAllocationType allocationType,1757VkSystemAllocationScope allocationScope);17581759typedef struct VkAllocationCallbacks {1760void* pUserData;1761PFN_vkAllocationFunction pfnAllocation;1762PFN_vkReallocationFunction pfnReallocation;1763PFN_vkFreeFunction pfnFree;1764PFN_vkInternalAllocationNotification pfnInternalAllocation;1765PFN_vkInternalFreeNotification pfnInternalFree;1766} VkAllocationCallbacks;17671768typedef struct VkPhysicalDeviceFeatures {1769VkBool32 robustBufferAccess;1770VkBool32 fullDrawIndexUint32;1771VkBool32 imageCubeArray;1772VkBool32 independentBlend;1773VkBool32 geometryShader;1774VkBool32 tessellationShader;1775VkBool32 sampleRateShading;1776VkBool32 dualSrcBlend;1777VkBool32 logicOp;1778VkBool32 multiDrawIndirect;1779VkBool32 drawIndirectFirstInstance;1780VkBool32 depthClamp;1781VkBool32 depthBiasClamp;1782VkBool32 fillModeNonSolid;1783VkBool32 depthBounds;1784VkBool32 wideLines;1785VkBool32 largePoints;1786VkBool32 alphaToOne;1787VkBool32 multiViewport;1788VkBool32 samplerAnisotropy;1789VkBool32 textureCompressionETC2;1790VkBool32 textureCompressionASTC_LDR;1791VkBool32 textureCompressionBC;1792VkBool32 occlusionQueryPrecise;1793VkBool32 pipelineStatisticsQuery;1794VkBool32 vertexPipelineStoresAndAtomics;1795VkBool32 fragmentStoresAndAtomics;1796VkBool32 shaderTessellationAndGeometryPointSize;1797VkBool32 shaderImageGatherExtended;1798VkBool32 shaderStorageImageExtendedFormats;1799VkBool32 shaderStorageImageMultisample;1800VkBool32 shaderStorageImageReadWithoutFormat;1801VkBool32 shaderStorageImageWriteWithoutFormat;1802VkBool32 shaderUniformBufferArrayDynamicIndexing;1803VkBool32 shaderSampledImageArrayDynamicIndexing;1804VkBool32 shaderStorageBufferArrayDynamicIndexing;1805VkBool32 shaderStorageImageArrayDynamicIndexing;1806VkBool32 shaderClipDistance;1807VkBool32 shaderCullDistance;1808VkBool32 shaderFloat64;1809VkBool32 shaderInt64;1810VkBool32 shaderInt16;1811VkBool32 shaderResourceResidency;1812VkBool32 shaderResourceMinLod;1813VkBool32 sparseBinding;1814VkBool32 sparseResidencyBuffer;1815VkBool32 sparseResidencyImage2D;1816VkBool32 sparseResidencyImage3D;1817VkBool32 sparseResidency2Samples;1818VkBool32 sparseResidency4Samples;1819VkBool32 sparseResidency8Samples;1820VkBool32 sparseResidency16Samples;1821VkBool32 sparseResidencyAliased;1822VkBool32 variableMultisampleRate;1823VkBool32 inheritedQueries;1824} VkPhysicalDeviceFeatures;18251826typedef struct VkFormatProperties {1827VkFormatFeatureFlags linearTilingFeatures;1828VkFormatFeatureFlags optimalTilingFeatures;1829VkFormatFeatureFlags bufferFeatures;1830} VkFormatProperties;18311832typedef struct VkExtent3D {1833uint32_t width;1834uint32_t height;1835uint32_t depth;1836} VkExtent3D;18371838typedef struct VkImageFormatProperties {1839VkExtent3D maxExtent;1840uint32_t maxMipLevels;1841uint32_t maxArrayLayers;1842VkSampleCountFlags sampleCounts;1843VkDeviceSize maxResourceSize;1844} VkImageFormatProperties;18451846typedef struct VkPhysicalDeviceLimits {1847uint32_t maxImageDimension1D;1848uint32_t maxImageDimension2D;1849uint32_t maxImageDimension3D;1850uint32_t maxImageDimensionCube;1851uint32_t maxImageArrayLayers;1852uint32_t maxTexelBufferElements;1853uint32_t maxUniformBufferRange;1854uint32_t maxStorageBufferRange;1855uint32_t maxPushConstantsSize;1856uint32_t maxMemoryAllocationCount;1857uint32_t maxSamplerAllocationCount;1858VkDeviceSize bufferImageGranularity;1859VkDeviceSize sparseAddressSpaceSize;1860uint32_t maxBoundDescriptorSets;1861uint32_t maxPerStageDescriptorSamplers;1862uint32_t maxPerStageDescriptorUniformBuffers;1863uint32_t maxPerStageDescriptorStorageBuffers;1864uint32_t maxPerStageDescriptorSampledImages;1865uint32_t maxPerStageDescriptorStorageImages;1866uint32_t maxPerStageDescriptorInputAttachments;1867uint32_t maxPerStageResources;1868uint32_t maxDescriptorSetSamplers;1869uint32_t maxDescriptorSetUniformBuffers;1870uint32_t maxDescriptorSetUniformBuffersDynamic;1871uint32_t maxDescriptorSetStorageBuffers;1872uint32_t maxDescriptorSetStorageBuffersDynamic;1873uint32_t maxDescriptorSetSampledImages;1874uint32_t maxDescriptorSetStorageImages;1875uint32_t maxDescriptorSetInputAttachments;1876uint32_t maxVertexInputAttributes;1877uint32_t maxVertexInputBindings;1878uint32_t maxVertexInputAttributeOffset;1879uint32_t maxVertexInputBindingStride;1880uint32_t maxVertexOutputComponents;1881uint32_t maxTessellationGenerationLevel;1882uint32_t maxTessellationPatchSize;1883uint32_t maxTessellationControlPerVertexInputComponents;1884uint32_t maxTessellationControlPerVertexOutputComponents;1885uint32_t maxTessellationControlPerPatchOutputComponents;1886uint32_t maxTessellationControlTotalOutputComponents;1887uint32_t maxTessellationEvaluationInputComponents;1888uint32_t maxTessellationEvaluationOutputComponents;1889uint32_t maxGeometryShaderInvocations;1890uint32_t maxGeometryInputComponents;1891uint32_t maxGeometryOutputComponents;1892uint32_t maxGeometryOutputVertices;1893uint32_t maxGeometryTotalOutputComponents;1894uint32_t maxFragmentInputComponents;1895uint32_t maxFragmentOutputAttachments;1896uint32_t maxFragmentDualSrcAttachments;1897uint32_t maxFragmentCombinedOutputResources;1898uint32_t maxComputeSharedMemorySize;1899uint32_t maxComputeWorkGroupCount[3];1900uint32_t maxComputeWorkGroupInvocations;1901uint32_t maxComputeWorkGroupSize[3];1902uint32_t subPixelPrecisionBits;1903uint32_t subTexelPrecisionBits;1904uint32_t mipmapPrecisionBits;1905uint32_t maxDrawIndexedIndexValue;1906uint32_t maxDrawIndirectCount;1907float maxSamplerLodBias;1908float maxSamplerAnisotropy;1909uint32_t maxViewports;1910uint32_t maxViewportDimensions[2];1911float viewportBoundsRange[2];1912uint32_t viewportSubPixelBits;1913size_t minMemoryMapAlignment;1914VkDeviceSize minTexelBufferOffsetAlignment;1915VkDeviceSize minUniformBufferOffsetAlignment;1916VkDeviceSize minStorageBufferOffsetAlignment;1917int32_t minTexelOffset;1918uint32_t maxTexelOffset;1919int32_t minTexelGatherOffset;1920uint32_t maxTexelGatherOffset;1921float minInterpolationOffset;1922float maxInterpolationOffset;1923uint32_t subPixelInterpolationOffsetBits;1924uint32_t maxFramebufferWidth;1925uint32_t maxFramebufferHeight;1926uint32_t maxFramebufferLayers;1927VkSampleCountFlags framebufferColorSampleCounts;1928VkSampleCountFlags framebufferDepthSampleCounts;1929VkSampleCountFlags framebufferStencilSampleCounts;1930VkSampleCountFlags framebufferNoAttachmentsSampleCounts;1931uint32_t maxColorAttachments;1932VkSampleCountFlags sampledImageColorSampleCounts;1933VkSampleCountFlags sampledImageIntegerSampleCounts;1934VkSampleCountFlags sampledImageDepthSampleCounts;1935VkSampleCountFlags sampledImageStencilSampleCounts;1936VkSampleCountFlags storageImageSampleCounts;1937uint32_t maxSampleMaskWords;1938VkBool32 timestampComputeAndGraphics;1939float timestampPeriod;1940uint32_t maxClipDistances;1941uint32_t maxCullDistances;1942uint32_t maxCombinedClipAndCullDistances;1943uint32_t discreteQueuePriorities;1944float pointSizeRange[2];1945float lineWidthRange[2];1946float pointSizeGranularity;1947float lineWidthGranularity;1948VkBool32 strictLines;1949VkBool32 standardSampleLocations;1950VkDeviceSize optimalBufferCopyOffsetAlignment;1951VkDeviceSize optimalBufferCopyRowPitchAlignment;1952VkDeviceSize nonCoherentAtomSize;1953} VkPhysicalDeviceLimits;19541955typedef struct VkPhysicalDeviceSparseProperties {1956VkBool32 residencyStandard2DBlockShape;1957VkBool32 residencyStandard2DMultisampleBlockShape;1958VkBool32 residencyStandard3DBlockShape;1959VkBool32 residencyAlignedMipSize;1960VkBool32 residencyNonResidentStrict;1961} VkPhysicalDeviceSparseProperties;19621963typedef struct VkPhysicalDeviceProperties {1964uint32_t apiVersion;1965uint32_t driverVersion;1966uint32_t vendorID;1967uint32_t deviceID;1968VkPhysicalDeviceType deviceType;1969char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE];1970uint8_t pipelineCacheUUID[VK_UUID_SIZE];1971VkPhysicalDeviceLimits limits;1972VkPhysicalDeviceSparseProperties sparseProperties;1973} VkPhysicalDeviceProperties;19741975typedef struct VkQueueFamilyProperties {1976VkQueueFlags queueFlags;1977uint32_t queueCount;1978uint32_t timestampValidBits;1979VkExtent3D minImageTransferGranularity;1980} VkQueueFamilyProperties;19811982typedef struct VkMemoryType {1983VkMemoryPropertyFlags propertyFlags;1984uint32_t heapIndex;1985} VkMemoryType;19861987typedef struct VkMemoryHeap {1988VkDeviceSize size;1989VkMemoryHeapFlags flags;1990} VkMemoryHeap;19911992typedef struct VkPhysicalDeviceMemoryProperties {1993uint32_t memoryTypeCount;1994VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES];1995uint32_t memoryHeapCount;1996VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS];1997} VkPhysicalDeviceMemoryProperties;19981999typedef void (VKAPI_PTR *PFN_vkVoidFunction)(void);2000typedef struct VkDeviceQueueCreateInfo {2001VkStructureType sType;2002const void* pNext;2003VkDeviceQueueCreateFlags flags;2004uint32_t queueFamilyIndex;2005uint32_t queueCount;2006const float* pQueuePriorities;2007} VkDeviceQueueCreateInfo;20082009typedef struct VkDeviceCreateInfo {2010VkStructureType sType;2011const void* pNext;2012VkDeviceCreateFlags flags;2013uint32_t queueCreateInfoCount;2014const VkDeviceQueueCreateInfo* pQueueCreateInfos;2015uint32_t enabledLayerCount;2016const char* const* ppEnabledLayerNames;2017uint32_t enabledExtensionCount;2018const char* const* ppEnabledExtensionNames;2019const VkPhysicalDeviceFeatures* pEnabledFeatures;2020} VkDeviceCreateInfo;20212022typedef struct VkExtensionProperties {2023char extensionName[VK_MAX_EXTENSION_NAME_SIZE];2024uint32_t specVersion;2025} VkExtensionProperties;20262027typedef struct VkLayerProperties {2028char layerName[VK_MAX_EXTENSION_NAME_SIZE];2029uint32_t specVersion;2030uint32_t implementationVersion;2031char description[VK_MAX_DESCRIPTION_SIZE];2032} VkLayerProperties;20332034typedef struct VkSubmitInfo {2035VkStructureType sType;2036const void* pNext;2037uint32_t waitSemaphoreCount;2038const VkSemaphore* pWaitSemaphores;2039const VkPipelineStageFlags* pWaitDstStageMask;2040uint32_t commandBufferCount;2041const VkCommandBuffer* pCommandBuffers;2042uint32_t signalSemaphoreCount;2043const VkSemaphore* pSignalSemaphores;2044} VkSubmitInfo;20452046typedef struct VkMemoryAllocateInfo {2047VkStructureType sType;2048const void* pNext;2049VkDeviceSize allocationSize;2050uint32_t memoryTypeIndex;2051} VkMemoryAllocateInfo;20522053typedef struct VkMappedMemoryRange {2054VkStructureType sType;2055const void* pNext;2056VkDeviceMemory memory;2057VkDeviceSize offset;2058VkDeviceSize size;2059} VkMappedMemoryRange;20602061typedef struct VkMemoryRequirements {2062VkDeviceSize size;2063VkDeviceSize alignment;2064uint32_t memoryTypeBits;2065} VkMemoryRequirements;20662067typedef struct VkSparseImageFormatProperties {2068VkImageAspectFlags aspectMask;2069VkExtent3D imageGranularity;2070VkSparseImageFormatFlags flags;2071} VkSparseImageFormatProperties;20722073typedef struct VkSparseImageMemoryRequirements {2074VkSparseImageFormatProperties formatProperties;2075uint32_t imageMipTailFirstLod;2076VkDeviceSize imageMipTailSize;2077VkDeviceSize imageMipTailOffset;2078VkDeviceSize imageMipTailStride;2079} VkSparseImageMemoryRequirements;20802081typedef struct VkSparseMemoryBind {2082VkDeviceSize resourceOffset;2083VkDeviceSize size;2084VkDeviceMemory memory;2085VkDeviceSize memoryOffset;2086VkSparseMemoryBindFlags flags;2087} VkSparseMemoryBind;20882089typedef struct VkSparseBufferMemoryBindInfo {2090VkBuffer buffer;2091uint32_t bindCount;2092const VkSparseMemoryBind* pBinds;2093} VkSparseBufferMemoryBindInfo;20942095typedef struct VkSparseImageOpaqueMemoryBindInfo {2096VkImage image;2097uint32_t bindCount;2098const VkSparseMemoryBind* pBinds;2099} VkSparseImageOpaqueMemoryBindInfo;21002101typedef struct VkImageSubresource {2102VkImageAspectFlags aspectMask;2103uint32_t mipLevel;2104uint32_t arrayLayer;2105} VkImageSubresource;21062107typedef struct VkOffset3D {2108int32_t x;2109int32_t y;2110int32_t z;2111} VkOffset3D;21122113typedef struct VkSparseImageMemoryBind {2114VkImageSubresource subresource;2115VkOffset3D offset;2116VkExtent3D extent;2117VkDeviceMemory memory;2118VkDeviceSize memoryOffset;2119VkSparseMemoryBindFlags flags;2120} VkSparseImageMemoryBind;21212122typedef struct VkSparseImageMemoryBindInfo {2123VkImage image;2124uint32_t bindCount;2125const VkSparseImageMemoryBind* pBinds;2126} VkSparseImageMemoryBindInfo;21272128typedef struct VkBindSparseInfo {2129VkStructureType sType;2130const void* pNext;2131uint32_t waitSemaphoreCount;2132const VkSemaphore* pWaitSemaphores;2133uint32_t bufferBindCount;2134const VkSparseBufferMemoryBindInfo* pBufferBinds;2135uint32_t imageOpaqueBindCount;2136const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds;2137uint32_t imageBindCount;2138const VkSparseImageMemoryBindInfo* pImageBinds;2139uint32_t signalSemaphoreCount;2140const VkSemaphore* pSignalSemaphores;2141} VkBindSparseInfo;21422143typedef struct VkFenceCreateInfo {2144VkStructureType sType;2145const void* pNext;2146VkFenceCreateFlags flags;2147} VkFenceCreateInfo;21482149typedef struct VkSemaphoreCreateInfo {2150VkStructureType sType;2151const void* pNext;2152VkSemaphoreCreateFlags flags;2153} VkSemaphoreCreateInfo;21542155typedef struct VkEventCreateInfo {2156VkStructureType sType;2157const void* pNext;2158VkEventCreateFlags flags;2159} VkEventCreateInfo;21602161typedef struct VkQueryPoolCreateInfo {2162VkStructureType sType;2163const void* pNext;2164VkQueryPoolCreateFlags flags;2165VkQueryType queryType;2166uint32_t queryCount;2167VkQueryPipelineStatisticFlags pipelineStatistics;2168} VkQueryPoolCreateInfo;21692170typedef struct VkBufferCreateInfo {2171VkStructureType sType;2172const void* pNext;2173VkBufferCreateFlags flags;2174VkDeviceSize size;2175VkBufferUsageFlags usage;2176VkSharingMode sharingMode;2177uint32_t queueFamilyIndexCount;2178const uint32_t* pQueueFamilyIndices;2179} VkBufferCreateInfo;21802181typedef struct VkBufferViewCreateInfo {2182VkStructureType sType;2183const void* pNext;2184VkBufferViewCreateFlags flags;2185VkBuffer buffer;2186VkFormat format;2187VkDeviceSize offset;2188VkDeviceSize range;2189} VkBufferViewCreateInfo;21902191typedef struct VkImageCreateInfo {2192VkStructureType sType;2193const void* pNext;2194VkImageCreateFlags flags;2195VkImageType imageType;2196VkFormat format;2197VkExtent3D extent;2198uint32_t mipLevels;2199uint32_t arrayLayers;2200VkSampleCountFlagBits samples;2201VkImageTiling tiling;2202VkImageUsageFlags usage;2203VkSharingMode sharingMode;2204uint32_t queueFamilyIndexCount;2205const uint32_t* pQueueFamilyIndices;2206VkImageLayout initialLayout;2207} VkImageCreateInfo;22082209typedef struct VkSubresourceLayout {2210VkDeviceSize offset;2211VkDeviceSize size;2212VkDeviceSize rowPitch;2213VkDeviceSize arrayPitch;2214VkDeviceSize depthPitch;2215} VkSubresourceLayout;22162217typedef struct VkComponentMapping {2218VkComponentSwizzle r;2219VkComponentSwizzle g;2220VkComponentSwizzle b;2221VkComponentSwizzle a;2222} VkComponentMapping;22232224typedef struct VkImageSubresourceRange {2225VkImageAspectFlags aspectMask;2226uint32_t baseMipLevel;2227uint32_t levelCount;2228uint32_t baseArrayLayer;2229uint32_t layerCount;2230} VkImageSubresourceRange;22312232typedef struct VkImageViewCreateInfo {2233VkStructureType sType;2234const void* pNext;2235VkImageViewCreateFlags flags;2236VkImage image;2237VkImageViewType viewType;2238VkFormat format;2239VkComponentMapping components;2240VkImageSubresourceRange subresourceRange;2241} VkImageViewCreateInfo;22422243typedef struct VkShaderModuleCreateInfo {2244VkStructureType sType;2245const void* pNext;2246VkShaderModuleCreateFlags flags;2247size_t codeSize;2248const uint32_t* pCode;2249} VkShaderModuleCreateInfo;22502251typedef struct VkPipelineCacheCreateInfo {2252VkStructureType sType;2253const void* pNext;2254VkPipelineCacheCreateFlags flags;2255size_t initialDataSize;2256const void* pInitialData;2257} VkPipelineCacheCreateInfo;22582259typedef struct VkSpecializationMapEntry {2260uint32_t constantID;2261uint32_t offset;2262size_t size;2263} VkSpecializationMapEntry;22642265typedef struct VkSpecializationInfo {2266uint32_t mapEntryCount;2267const VkSpecializationMapEntry* pMapEntries;2268size_t dataSize;2269const void* pData;2270} VkSpecializationInfo;22712272typedef struct VkPipelineShaderStageCreateInfo {2273VkStructureType sType;2274const void* pNext;2275VkPipelineShaderStageCreateFlags flags;2276VkShaderStageFlagBits stage;2277VkShaderModule module;2278const char* pName;2279const VkSpecializationInfo* pSpecializationInfo;2280} VkPipelineShaderStageCreateInfo;22812282typedef struct VkVertexInputBindingDescription {2283uint32_t binding;2284uint32_t stride;2285VkVertexInputRate inputRate;2286} VkVertexInputBindingDescription;22872288typedef struct VkVertexInputAttributeDescription {2289uint32_t location;2290uint32_t binding;2291VkFormat format;2292uint32_t offset;2293} VkVertexInputAttributeDescription;22942295typedef struct VkPipelineVertexInputStateCreateInfo {2296VkStructureType sType;2297const void* pNext;2298VkPipelineVertexInputStateCreateFlags flags;2299uint32_t vertexBindingDescriptionCount;2300const VkVertexInputBindingDescription* pVertexBindingDescriptions;2301uint32_t vertexAttributeDescriptionCount;2302const VkVertexInputAttributeDescription* pVertexAttributeDescriptions;2303} VkPipelineVertexInputStateCreateInfo;23042305typedef struct VkPipelineInputAssemblyStateCreateInfo {2306VkStructureType sType;2307const void* pNext;2308VkPipelineInputAssemblyStateCreateFlags flags;2309VkPrimitiveTopology topology;2310VkBool32 primitiveRestartEnable;2311} VkPipelineInputAssemblyStateCreateInfo;23122313typedef struct VkPipelineTessellationStateCreateInfo {2314VkStructureType sType;2315const void* pNext;2316VkPipelineTessellationStateCreateFlags flags;2317uint32_t patchControlPoints;2318} VkPipelineTessellationStateCreateInfo;23192320typedef struct VkViewport {2321float x;2322float y;2323float width;2324float height;2325float minDepth;2326float maxDepth;2327} VkViewport;23282329typedef struct VkOffset2D {2330int32_t x;2331int32_t y;2332} VkOffset2D;23332334typedef struct VkExtent2D {2335uint32_t width;2336uint32_t height;2337} VkExtent2D;23382339typedef struct VkRect2D {2340VkOffset2D offset;2341VkExtent2D extent;2342} VkRect2D;23432344typedef struct VkPipelineViewportStateCreateInfo {2345VkStructureType sType;2346const void* pNext;2347VkPipelineViewportStateCreateFlags flags;2348uint32_t viewportCount;2349const VkViewport* pViewports;2350uint32_t scissorCount;2351const VkRect2D* pScissors;2352} VkPipelineViewportStateCreateInfo;23532354typedef struct VkPipelineRasterizationStateCreateInfo {2355VkStructureType sType;2356const void* pNext;2357VkPipelineRasterizationStateCreateFlags flags;2358VkBool32 depthClampEnable;2359VkBool32 rasterizerDiscardEnable;2360VkPolygonMode polygonMode;2361VkCullModeFlags cullMode;2362VkFrontFace frontFace;2363VkBool32 depthBiasEnable;2364float depthBiasConstantFactor;2365float depthBiasClamp;2366float depthBiasSlopeFactor;2367float lineWidth;2368} VkPipelineRasterizationStateCreateInfo;23692370typedef struct VkPipelineMultisampleStateCreateInfo {2371VkStructureType sType;2372const void* pNext;2373VkPipelineMultisampleStateCreateFlags flags;2374VkSampleCountFlagBits rasterizationSamples;2375VkBool32 sampleShadingEnable;2376float minSampleShading;2377const VkSampleMask* pSampleMask;2378VkBool32 alphaToCoverageEnable;2379VkBool32 alphaToOneEnable;2380} VkPipelineMultisampleStateCreateInfo;23812382typedef struct VkStencilOpState {2383VkStencilOp failOp;2384VkStencilOp passOp;2385VkStencilOp depthFailOp;2386VkCompareOp compareOp;2387uint32_t compareMask;2388uint32_t writeMask;2389uint32_t reference;2390} VkStencilOpState;23912392typedef struct VkPipelineDepthStencilStateCreateInfo {2393VkStructureType sType;2394const void* pNext;2395VkPipelineDepthStencilStateCreateFlags flags;2396VkBool32 depthTestEnable;2397VkBool32 depthWriteEnable;2398VkCompareOp depthCompareOp;2399VkBool32 depthBoundsTestEnable;2400VkBool32 stencilTestEnable;2401VkStencilOpState front;2402VkStencilOpState back;2403float minDepthBounds;2404float maxDepthBounds;2405} VkPipelineDepthStencilStateCreateInfo;24062407typedef struct VkPipelineColorBlendAttachmentState {2408VkBool32 blendEnable;2409VkBlendFactor srcColorBlendFactor;2410VkBlendFactor dstColorBlendFactor;2411VkBlendOp colorBlendOp;2412VkBlendFactor srcAlphaBlendFactor;2413VkBlendFactor dstAlphaBlendFactor;2414VkBlendOp alphaBlendOp;2415VkColorComponentFlags colorWriteMask;2416} VkPipelineColorBlendAttachmentState;24172418typedef struct VkPipelineColorBlendStateCreateInfo {2419VkStructureType sType;2420const void* pNext;2421VkPipelineColorBlendStateCreateFlags flags;2422VkBool32 logicOpEnable;2423VkLogicOp logicOp;2424uint32_t attachmentCount;2425const VkPipelineColorBlendAttachmentState* pAttachments;2426float blendConstants[4];2427} VkPipelineColorBlendStateCreateInfo;24282429typedef struct VkPipelineDynamicStateCreateInfo {2430VkStructureType sType;2431const void* pNext;2432VkPipelineDynamicStateCreateFlags flags;2433uint32_t dynamicStateCount;2434const VkDynamicState* pDynamicStates;2435} VkPipelineDynamicStateCreateInfo;24362437typedef struct VkGraphicsPipelineCreateInfo {2438VkStructureType sType;2439const void* pNext;2440VkPipelineCreateFlags flags;2441uint32_t stageCount;2442const VkPipelineShaderStageCreateInfo* pStages;2443const VkPipelineVertexInputStateCreateInfo* pVertexInputState;2444const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState;2445const VkPipelineTessellationStateCreateInfo* pTessellationState;2446const VkPipelineViewportStateCreateInfo* pViewportState;2447const VkPipelineRasterizationStateCreateInfo* pRasterizationState;2448const VkPipelineMultisampleStateCreateInfo* pMultisampleState;2449const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState;2450const VkPipelineColorBlendStateCreateInfo* pColorBlendState;2451const VkPipelineDynamicStateCreateInfo* pDynamicState;2452VkPipelineLayout layout;2453VkRenderPass renderPass;2454uint32_t subpass;2455VkPipeline basePipelineHandle;2456int32_t basePipelineIndex;2457} VkGraphicsPipelineCreateInfo;24582459typedef struct VkComputePipelineCreateInfo {2460VkStructureType sType;2461const void* pNext;2462VkPipelineCreateFlags flags;2463VkPipelineShaderStageCreateInfo stage;2464VkPipelineLayout layout;2465VkPipeline basePipelineHandle;2466int32_t basePipelineIndex;2467} VkComputePipelineCreateInfo;24682469typedef struct VkPushConstantRange {2470VkShaderStageFlags stageFlags;2471uint32_t offset;2472uint32_t size;2473} VkPushConstantRange;24742475typedef struct VkPipelineLayoutCreateInfo {2476VkStructureType sType;2477const void* pNext;2478VkPipelineLayoutCreateFlags flags;2479uint32_t setLayoutCount;2480const VkDescriptorSetLayout* pSetLayouts;2481uint32_t pushConstantRangeCount;2482const VkPushConstantRange* pPushConstantRanges;2483} VkPipelineLayoutCreateInfo;24842485typedef struct VkSamplerCreateInfo {2486VkStructureType sType;2487const void* pNext;2488VkSamplerCreateFlags flags;2489VkFilter magFilter;2490VkFilter minFilter;2491VkSamplerMipmapMode mipmapMode;2492VkSamplerAddressMode addressModeU;2493VkSamplerAddressMode addressModeV;2494VkSamplerAddressMode addressModeW;2495float mipLodBias;2496VkBool32 anisotropyEnable;2497float maxAnisotropy;2498VkBool32 compareEnable;2499VkCompareOp compareOp;2500float minLod;2501float maxLod;2502VkBorderColor borderColor;2503VkBool32 unnormalizedCoordinates;2504} VkSamplerCreateInfo;25052506typedef struct VkDescriptorSetLayoutBinding {2507uint32_t binding;2508VkDescriptorType descriptorType;2509uint32_t descriptorCount;2510VkShaderStageFlags stageFlags;2511const VkSampler* pImmutableSamplers;2512} VkDescriptorSetLayoutBinding;25132514typedef struct VkDescriptorSetLayoutCreateInfo {2515VkStructureType sType;2516const void* pNext;2517VkDescriptorSetLayoutCreateFlags flags;2518uint32_t bindingCount;2519const VkDescriptorSetLayoutBinding* pBindings;2520} VkDescriptorSetLayoutCreateInfo;25212522typedef struct VkDescriptorPoolSize {2523VkDescriptorType type;2524uint32_t descriptorCount;2525} VkDescriptorPoolSize;25262527typedef struct VkDescriptorPoolCreateInfo {2528VkStructureType sType;2529const void* pNext;2530VkDescriptorPoolCreateFlags flags;2531uint32_t maxSets;2532uint32_t poolSizeCount;2533const VkDescriptorPoolSize* pPoolSizes;2534} VkDescriptorPoolCreateInfo;25352536typedef struct VkDescriptorSetAllocateInfo {2537VkStructureType sType;2538const void* pNext;2539VkDescriptorPool descriptorPool;2540uint32_t descriptorSetCount;2541const VkDescriptorSetLayout* pSetLayouts;2542} VkDescriptorSetAllocateInfo;25432544typedef struct VkDescriptorImageInfo {2545VkSampler sampler;2546VkImageView imageView;2547VkImageLayout imageLayout;2548} VkDescriptorImageInfo;25492550typedef struct VkDescriptorBufferInfo {2551VkBuffer buffer;2552VkDeviceSize offset;2553VkDeviceSize range;2554} VkDescriptorBufferInfo;25552556typedef struct VkWriteDescriptorSet {2557VkStructureType sType;2558const void* pNext;2559VkDescriptorSet dstSet;2560uint32_t dstBinding;2561uint32_t dstArrayElement;2562uint32_t descriptorCount;2563VkDescriptorType descriptorType;2564const VkDescriptorImageInfo* pImageInfo;2565const VkDescriptorBufferInfo* pBufferInfo;2566const VkBufferView* pTexelBufferView;2567} VkWriteDescriptorSet;25682569typedef struct VkCopyDescriptorSet {2570VkStructureType sType;2571const void* pNext;2572VkDescriptorSet srcSet;2573uint32_t srcBinding;2574uint32_t srcArrayElement;2575VkDescriptorSet dstSet;2576uint32_t dstBinding;2577uint32_t dstArrayElement;2578uint32_t descriptorCount;2579} VkCopyDescriptorSet;25802581typedef struct VkFramebufferCreateInfo {2582VkStructureType sType;2583const void* pNext;2584VkFramebufferCreateFlags flags;2585VkRenderPass renderPass;2586uint32_t attachmentCount;2587const VkImageView* pAttachments;2588uint32_t width;2589uint32_t height;2590uint32_t layers;2591} VkFramebufferCreateInfo;25922593typedef struct VkAttachmentDescription {2594VkAttachmentDescriptionFlags flags;2595VkFormat format;2596VkSampleCountFlagBits samples;2597VkAttachmentLoadOp loadOp;2598VkAttachmentStoreOp storeOp;2599VkAttachmentLoadOp stencilLoadOp;2600VkAttachmentStoreOp stencilStoreOp;2601VkImageLayout initialLayout;2602VkImageLayout finalLayout;2603} VkAttachmentDescription;26042605typedef struct VkAttachmentReference {2606uint32_t attachment;2607VkImageLayout layout;2608} VkAttachmentReference;26092610typedef struct VkSubpassDescription {2611VkSubpassDescriptionFlags flags;2612VkPipelineBindPoint pipelineBindPoint;2613uint32_t inputAttachmentCount;2614const VkAttachmentReference* pInputAttachments;2615uint32_t colorAttachmentCount;2616const VkAttachmentReference* pColorAttachments;2617const VkAttachmentReference* pResolveAttachments;2618const VkAttachmentReference* pDepthStencilAttachment;2619uint32_t preserveAttachmentCount;2620const uint32_t* pPreserveAttachments;2621} VkSubpassDescription;26222623typedef struct VkSubpassDependency {2624uint32_t srcSubpass;2625uint32_t dstSubpass;2626VkPipelineStageFlags srcStageMask;2627VkPipelineStageFlags dstStageMask;2628VkAccessFlags srcAccessMask;2629VkAccessFlags dstAccessMask;2630VkDependencyFlags dependencyFlags;2631} VkSubpassDependency;26322633typedef struct VkRenderPassCreateInfo {2634VkStructureType sType;2635const void* pNext;2636VkRenderPassCreateFlags flags;2637uint32_t attachmentCount;2638const VkAttachmentDescription* pAttachments;2639uint32_t subpassCount;2640const VkSubpassDescription* pSubpasses;2641uint32_t dependencyCount;2642const VkSubpassDependency* pDependencies;2643} VkRenderPassCreateInfo;26442645typedef struct VkCommandPoolCreateInfo {2646VkStructureType sType;2647const void* pNext;2648VkCommandPoolCreateFlags flags;2649uint32_t queueFamilyIndex;2650} VkCommandPoolCreateInfo;26512652typedef struct VkCommandBufferAllocateInfo {2653VkStructureType sType;2654const void* pNext;2655VkCommandPool commandPool;2656VkCommandBufferLevel level;2657uint32_t commandBufferCount;2658} VkCommandBufferAllocateInfo;26592660typedef struct VkCommandBufferInheritanceInfo {2661VkStructureType sType;2662const void* pNext;2663VkRenderPass renderPass;2664uint32_t subpass;2665VkFramebuffer framebuffer;2666VkBool32 occlusionQueryEnable;2667VkQueryControlFlags queryFlags;2668VkQueryPipelineStatisticFlags pipelineStatistics;2669} VkCommandBufferInheritanceInfo;26702671typedef struct VkCommandBufferBeginInfo {2672VkStructureType sType;2673const void* pNext;2674VkCommandBufferUsageFlags flags;2675const VkCommandBufferInheritanceInfo* pInheritanceInfo;2676} VkCommandBufferBeginInfo;26772678typedef struct VkBufferCopy {2679VkDeviceSize srcOffset;2680VkDeviceSize dstOffset;2681VkDeviceSize size;2682} VkBufferCopy;26832684typedef struct VkImageSubresourceLayers {2685VkImageAspectFlags aspectMask;2686uint32_t mipLevel;2687uint32_t baseArrayLayer;2688uint32_t layerCount;2689} VkImageSubresourceLayers;26902691typedef struct VkImageCopy {2692VkImageSubresourceLayers srcSubresource;2693VkOffset3D srcOffset;2694VkImageSubresourceLayers dstSubresource;2695VkOffset3D dstOffset;2696VkExtent3D extent;2697} VkImageCopy;26982699typedef struct VkImageBlit {2700VkImageSubresourceLayers srcSubresource;2701VkOffset3D srcOffsets[2];2702VkImageSubresourceLayers dstSubresource;2703VkOffset3D dstOffsets[2];2704} VkImageBlit;27052706typedef struct VkBufferImageCopy {2707VkDeviceSize bufferOffset;2708uint32_t bufferRowLength;2709uint32_t bufferImageHeight;2710VkImageSubresourceLayers imageSubresource;2711VkOffset3D imageOffset;2712VkExtent3D imageExtent;2713} VkBufferImageCopy;27142715typedef union VkClearColorValue {2716float float32[4];2717int32_t int32[4];2718uint32_t uint32[4];2719} VkClearColorValue;27202721typedef struct VkClearDepthStencilValue {2722float depth;2723uint32_t stencil;2724} VkClearDepthStencilValue;27252726typedef union VkClearValue {2727VkClearColorValue color;2728VkClearDepthStencilValue depthStencil;2729} VkClearValue;27302731typedef struct VkClearAttachment {2732VkImageAspectFlags aspectMask;2733uint32_t colorAttachment;2734VkClearValue clearValue;2735} VkClearAttachment;27362737typedef struct VkClearRect {2738VkRect2D rect;2739uint32_t baseArrayLayer;2740uint32_t layerCount;2741} VkClearRect;27422743typedef struct VkImageResolve {2744VkImageSubresourceLayers srcSubresource;2745VkOffset3D srcOffset;2746VkImageSubresourceLayers dstSubresource;2747VkOffset3D dstOffset;2748VkExtent3D extent;2749} VkImageResolve;27502751typedef struct VkMemoryBarrier {2752VkStructureType sType;2753const void* pNext;2754VkAccessFlags srcAccessMask;2755VkAccessFlags dstAccessMask;2756} VkMemoryBarrier;27572758typedef struct VkBufferMemoryBarrier {2759VkStructureType sType;2760const void* pNext;2761VkAccessFlags srcAccessMask;2762VkAccessFlags dstAccessMask;2763uint32_t srcQueueFamilyIndex;2764uint32_t dstQueueFamilyIndex;2765VkBuffer buffer;2766VkDeviceSize offset;2767VkDeviceSize size;2768} VkBufferMemoryBarrier;27692770typedef struct VkImageMemoryBarrier {2771VkStructureType sType;2772const void* pNext;2773VkAccessFlags srcAccessMask;2774VkAccessFlags dstAccessMask;2775VkImageLayout oldLayout;2776VkImageLayout newLayout;2777uint32_t srcQueueFamilyIndex;2778uint32_t dstQueueFamilyIndex;2779VkImage image;2780VkImageSubresourceRange subresourceRange;2781} VkImageMemoryBarrier;27822783typedef struct VkRenderPassBeginInfo {2784VkStructureType sType;2785const void* pNext;2786VkRenderPass renderPass;2787VkFramebuffer framebuffer;2788VkRect2D renderArea;2789uint32_t clearValueCount;2790const VkClearValue* pClearValues;2791} VkRenderPassBeginInfo;27922793typedef struct VkDispatchIndirectCommand {2794uint32_t x;2795uint32_t y;2796uint32_t z;2797} VkDispatchIndirectCommand;27982799typedef struct VkDrawIndexedIndirectCommand {2800uint32_t indexCount;2801uint32_t instanceCount;2802uint32_t firstIndex;2803int32_t vertexOffset;2804uint32_t firstInstance;2805} VkDrawIndexedIndirectCommand;28062807typedef struct VkDrawIndirectCommand {2808uint32_t vertexCount;2809uint32_t instanceCount;2810uint32_t firstVertex;2811uint32_t firstInstance;2812} VkDrawIndirectCommand;28132814typedef struct VkBaseOutStructure {2815VkStructureType sType;2816struct VkBaseOutStructure* pNext;2817} VkBaseOutStructure;28182819typedef struct VkBaseInStructure {2820VkStructureType sType;2821const struct VkBaseInStructure* pNext;2822} VkBaseInStructure;282328242825typedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance);2826typedef void (VKAPI_PTR *PFN_vkDestroyInstance)(VkInstance instance, const VkAllocationCallbacks* pAllocator);2827typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices);2828typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures);2829typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties);2830typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties);2831typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties);2832typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties);2833typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties);2834typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName);2835typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetDeviceProcAddr)(VkDevice device, const char* pName);2836typedef VkResult (VKAPI_PTR *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice);2837typedef void (VKAPI_PTR *PFN_vkDestroyDevice)(VkDevice device, const VkAllocationCallbacks* pAllocator);2838typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceExtensionProperties)(const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);2839typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);2840typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceLayerProperties)(uint32_t* pPropertyCount, VkLayerProperties* pProperties);2841typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties);2842typedef void (VKAPI_PTR *PFN_vkGetDeviceQueue)(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue);2843typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence);2844typedef VkResult (VKAPI_PTR *PFN_vkQueueWaitIdle)(VkQueue queue);2845typedef VkResult (VKAPI_PTR *PFN_vkDeviceWaitIdle)(VkDevice device);2846typedef VkResult (VKAPI_PTR *PFN_vkAllocateMemory)(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory);2847typedef void (VKAPI_PTR *PFN_vkFreeMemory)(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator);2848typedef VkResult (VKAPI_PTR *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData);2849typedef void (VKAPI_PTR *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory memory);2850typedef VkResult (VKAPI_PTR *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);2851typedef VkResult (VKAPI_PTR *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);2852typedef void (VKAPI_PTR *PFN_vkGetDeviceMemoryCommitment)(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes);2853typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory)(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset);2854typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory)(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset);2855typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements)(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements);2856typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements)(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements);2857typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements)(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements);2858typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties);2859typedef VkResult (VKAPI_PTR *PFN_vkQueueBindSparse)(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence);2860typedef VkResult (VKAPI_PTR *PFN_vkCreateFence)(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);2861typedef void (VKAPI_PTR *PFN_vkDestroyFence)(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator);2862typedef VkResult (VKAPI_PTR *PFN_vkResetFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences);2863typedef VkResult (VKAPI_PTR *PFN_vkGetFenceStatus)(VkDevice device, VkFence fence);2864typedef VkResult (VKAPI_PTR *PFN_vkWaitForFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout);2865typedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore);2866typedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator);2867typedef VkResult (VKAPI_PTR *PFN_vkCreateEvent)(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent);2868typedef void (VKAPI_PTR *PFN_vkDestroyEvent)(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator);2869typedef VkResult (VKAPI_PTR *PFN_vkGetEventStatus)(VkDevice device, VkEvent event);2870typedef VkResult (VKAPI_PTR *PFN_vkSetEvent)(VkDevice device, VkEvent event);2871typedef VkResult (VKAPI_PTR *PFN_vkResetEvent)(VkDevice device, VkEvent event);2872typedef VkResult (VKAPI_PTR *PFN_vkCreateQueryPool)(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool);2873typedef void (VKAPI_PTR *PFN_vkDestroyQueryPool)(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator);2874typedef VkResult (VKAPI_PTR *PFN_vkGetQueryPoolResults)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags);2875typedef VkResult (VKAPI_PTR *PFN_vkCreateBuffer)(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer);2876typedef void (VKAPI_PTR *PFN_vkDestroyBuffer)(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator);2877typedef VkResult (VKAPI_PTR *PFN_vkCreateBufferView)(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView);2878typedef void (VKAPI_PTR *PFN_vkDestroyBufferView)(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator);2879typedef VkResult (VKAPI_PTR *PFN_vkCreateImage)(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage);2880typedef void (VKAPI_PTR *PFN_vkDestroyImage)(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator);2881typedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout);2882typedef VkResult (VKAPI_PTR *PFN_vkCreateImageView)(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView);2883typedef void (VKAPI_PTR *PFN_vkDestroyImageView)(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator);2884typedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule);2885typedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator);2886typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineCache)(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache);2887typedef void (VKAPI_PTR *PFN_vkDestroyPipelineCache)(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator);2888typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData);2889typedef VkResult (VKAPI_PTR *PFN_vkMergePipelineCaches)(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches);2890typedef VkResult (VKAPI_PTR *PFN_vkCreateGraphicsPipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);2891typedef VkResult (VKAPI_PTR *PFN_vkCreateComputePipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);2892typedef void (VKAPI_PTR *PFN_vkDestroyPipeline)(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator);2893typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineLayout)(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout);2894typedef void (VKAPI_PTR *PFN_vkDestroyPipelineLayout)(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator);2895typedef VkResult (VKAPI_PTR *PFN_vkCreateSampler)(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler);2896typedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator);2897typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorSetLayout)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout);2898typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorSetLayout)(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator);2899typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorPool)(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool);2900typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator);2901typedef VkResult (VKAPI_PTR *PFN_vkResetDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags);2902typedef VkResult (VKAPI_PTR *PFN_vkAllocateDescriptorSets)(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets);2903typedef VkResult (VKAPI_PTR *PFN_vkFreeDescriptorSets)(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets);2904typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSets)(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies);2905typedef VkResult (VKAPI_PTR *PFN_vkCreateFramebuffer)(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer);2906typedef void (VKAPI_PTR *PFN_vkDestroyFramebuffer)(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator);2907typedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass)(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);2908typedef void (VKAPI_PTR *PFN_vkDestroyRenderPass)(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator);2909typedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity);2910typedef VkResult (VKAPI_PTR *PFN_vkCreateCommandPool)(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool);2911typedef void (VKAPI_PTR *PFN_vkDestroyCommandPool)(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator);2912typedef VkResult (VKAPI_PTR *PFN_vkResetCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags);2913typedef VkResult (VKAPI_PTR *PFN_vkAllocateCommandBuffers)(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers);2914typedef void (VKAPI_PTR *PFN_vkFreeCommandBuffers)(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);2915typedef VkResult (VKAPI_PTR *PFN_vkBeginCommandBuffer)(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo);2916typedef VkResult (VKAPI_PTR *PFN_vkEndCommandBuffer)(VkCommandBuffer commandBuffer);2917typedef VkResult (VKAPI_PTR *PFN_vkResetCommandBuffer)(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags);2918typedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline);2919typedef void (VKAPI_PTR *PFN_vkCmdSetViewport)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports);2920typedef void (VKAPI_PTR *PFN_vkCmdSetScissor)(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors);2921typedef void (VKAPI_PTR *PFN_vkCmdSetLineWidth)(VkCommandBuffer commandBuffer, float lineWidth);2922typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBias)(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor);2923typedef void (VKAPI_PTR *PFN_vkCmdSetBlendConstants)(VkCommandBuffer commandBuffer, const float blendConstants[4]);2924typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBounds)(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds);2925typedef void (VKAPI_PTR *PFN_vkCmdSetStencilCompareMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask);2926typedef void (VKAPI_PTR *PFN_vkCmdSetStencilWriteMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask);2927typedef void (VKAPI_PTR *PFN_vkCmdSetStencilReference)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference);2928typedef void (VKAPI_PTR *PFN_vkCmdBindDescriptorSets)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets);2929typedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType);2930typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets);2931typedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance);2932typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance);2933typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);2934typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);2935typedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);2936typedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);2937typedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions);2938typedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions);2939typedef void (VKAPI_PTR *PFN_vkCmdBlitImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter);2940typedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions);2941typedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions);2942typedef void (VKAPI_PTR *PFN_vkCmdUpdateBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData);2943typedef void (VKAPI_PTR *PFN_vkCmdFillBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data);2944typedef void (VKAPI_PTR *PFN_vkCmdClearColorImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);2945typedef void (VKAPI_PTR *PFN_vkCmdClearDepthStencilImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);2946typedef void (VKAPI_PTR *PFN_vkCmdClearAttachments)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects);2947typedef void (VKAPI_PTR *PFN_vkCmdResolveImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions);2948typedef void (VKAPI_PTR *PFN_vkCmdSetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);2949typedef void (VKAPI_PTR *PFN_vkCmdResetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);2950typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents)(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers);2951typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier)(VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers);2952typedef void (VKAPI_PTR *PFN_vkCmdBeginQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags);2953typedef void (VKAPI_PTR *PFN_vkCmdEndQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query);2954typedef void (VKAPI_PTR *PFN_vkCmdResetQueryPool)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount);2955typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query);2956typedef void (VKAPI_PTR *PFN_vkCmdCopyQueryPoolResults)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags);2957typedef void (VKAPI_PTR *PFN_vkCmdPushConstants)(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues);2958typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents);2959typedef void (VKAPI_PTR *PFN_vkCmdNextSubpass)(VkCommandBuffer commandBuffer, VkSubpassContents contents);2960typedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass)(VkCommandBuffer commandBuffer);2961typedef void (VKAPI_PTR *PFN_vkCmdExecuteCommands)(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);29622963#ifndef VK_NO_PROTOTYPES2964VKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance(2965const VkInstanceCreateInfo* pCreateInfo,2966const VkAllocationCallbacks* pAllocator,2967VkInstance* pInstance);29682969VKAPI_ATTR void VKAPI_CALL vkDestroyInstance(2970VkInstance instance,2971const VkAllocationCallbacks* pAllocator);29722973VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices(2974VkInstance instance,2975uint32_t* pPhysicalDeviceCount,2976VkPhysicalDevice* pPhysicalDevices);29772978VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures(2979VkPhysicalDevice physicalDevice,2980VkPhysicalDeviceFeatures* pFeatures);29812982VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties(2983VkPhysicalDevice physicalDevice,2984VkFormat format,2985VkFormatProperties* pFormatProperties);29862987VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties(2988VkPhysicalDevice physicalDevice,2989VkFormat format,2990VkImageType type,2991VkImageTiling tiling,2992VkImageUsageFlags usage,2993VkImageCreateFlags flags,2994VkImageFormatProperties* pImageFormatProperties);29952996VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties(2997VkPhysicalDevice physicalDevice,2998VkPhysicalDeviceProperties* pProperties);29993000VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties(3001VkPhysicalDevice physicalDevice,3002uint32_t* pQueueFamilyPropertyCount,3003VkQueueFamilyProperties* pQueueFamilyProperties);30043005VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties(3006VkPhysicalDevice physicalDevice,3007VkPhysicalDeviceMemoryProperties* pMemoryProperties);30083009VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(3010VkInstance instance,3011const char* pName);30123013VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(3014VkDevice device,3015const char* pName);30163017VKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice(3018VkPhysicalDevice physicalDevice,3019const VkDeviceCreateInfo* pCreateInfo,3020const VkAllocationCallbacks* pAllocator,3021VkDevice* pDevice);30223023VKAPI_ATTR void VKAPI_CALL vkDestroyDevice(3024VkDevice device,3025const VkAllocationCallbacks* pAllocator);30263027VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties(3028const char* pLayerName,3029uint32_t* pPropertyCount,3030VkExtensionProperties* pProperties);30313032VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties(3033VkPhysicalDevice physicalDevice,3034const char* pLayerName,3035uint32_t* pPropertyCount,3036VkExtensionProperties* pProperties);30373038VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties(3039uint32_t* pPropertyCount,3040VkLayerProperties* pProperties);30413042VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties(3043VkPhysicalDevice physicalDevice,3044uint32_t* pPropertyCount,3045VkLayerProperties* pProperties);30463047VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue(3048VkDevice device,3049uint32_t queueFamilyIndex,3050uint32_t queueIndex,3051VkQueue* pQueue);30523053VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit(3054VkQueue queue,3055uint32_t submitCount,3056const VkSubmitInfo* pSubmits,3057VkFence fence);30583059VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(3060VkQueue queue);30613062VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(3063VkDevice device);30643065VKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory(3066VkDevice device,3067const VkMemoryAllocateInfo* pAllocateInfo,3068const VkAllocationCallbacks* pAllocator,3069VkDeviceMemory* pMemory);30703071VKAPI_ATTR void VKAPI_CALL vkFreeMemory(3072VkDevice device,3073VkDeviceMemory memory,3074const VkAllocationCallbacks* pAllocator);30753076VKAPI_ATTR VkResult VKAPI_CALL vkMapMemory(3077VkDevice device,3078VkDeviceMemory memory,3079VkDeviceSize offset,3080VkDeviceSize size,3081VkMemoryMapFlags flags,3082void** ppData);30833084VKAPI_ATTR void VKAPI_CALL vkUnmapMemory(3085VkDevice device,3086VkDeviceMemory memory);30873088VKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges(3089VkDevice device,3090uint32_t memoryRangeCount,3091const VkMappedMemoryRange* pMemoryRanges);30923093VKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges(3094VkDevice device,3095uint32_t memoryRangeCount,3096const VkMappedMemoryRange* pMemoryRanges);30973098VKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment(3099VkDevice device,3100VkDeviceMemory memory,3101VkDeviceSize* pCommittedMemoryInBytes);31023103VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory(3104VkDevice device,3105VkBuffer buffer,3106VkDeviceMemory memory,3107VkDeviceSize memoryOffset);31083109VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory(3110VkDevice device,3111VkImage image,3112VkDeviceMemory memory,3113VkDeviceSize memoryOffset);31143115VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements(3116VkDevice device,3117VkBuffer buffer,3118VkMemoryRequirements* pMemoryRequirements);31193120VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements(3121VkDevice device,3122VkImage image,3123VkMemoryRequirements* pMemoryRequirements);31243125VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements(3126VkDevice device,3127VkImage image,3128uint32_t* pSparseMemoryRequirementCount,3129VkSparseImageMemoryRequirements* pSparseMemoryRequirements);31303131VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties(3132VkPhysicalDevice physicalDevice,3133VkFormat format,3134VkImageType type,3135VkSampleCountFlagBits samples,3136VkImageUsageFlags usage,3137VkImageTiling tiling,3138uint32_t* pPropertyCount,3139VkSparseImageFormatProperties* pProperties);31403141VKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse(3142VkQueue queue,3143uint32_t bindInfoCount,3144const VkBindSparseInfo* pBindInfo,3145VkFence fence);31463147VKAPI_ATTR VkResult VKAPI_CALL vkCreateFence(3148VkDevice device,3149const VkFenceCreateInfo* pCreateInfo,3150const VkAllocationCallbacks* pAllocator,3151VkFence* pFence);31523153VKAPI_ATTR void VKAPI_CALL vkDestroyFence(3154VkDevice device,3155VkFence fence,3156const VkAllocationCallbacks* pAllocator);31573158VKAPI_ATTR VkResult VKAPI_CALL vkResetFences(3159VkDevice device,3160uint32_t fenceCount,3161const VkFence* pFences);31623163VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus(3164VkDevice device,3165VkFence fence);31663167VKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences(3168VkDevice device,3169uint32_t fenceCount,3170const VkFence* pFences,3171VkBool32 waitAll,3172uint64_t timeout);31733174VKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore(3175VkDevice device,3176const VkSemaphoreCreateInfo* pCreateInfo,3177const VkAllocationCallbacks* pAllocator,3178VkSemaphore* pSemaphore);31793180VKAPI_ATTR void VKAPI_CALL vkDestroySemaphore(3181VkDevice device,3182VkSemaphore semaphore,3183const VkAllocationCallbacks* pAllocator);31843185VKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent(3186VkDevice device,3187const VkEventCreateInfo* pCreateInfo,3188const VkAllocationCallbacks* pAllocator,3189VkEvent* pEvent);31903191VKAPI_ATTR void VKAPI_CALL vkDestroyEvent(3192VkDevice device,3193VkEvent event,3194const VkAllocationCallbacks* pAllocator);31953196VKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus(3197VkDevice device,3198VkEvent event);31993200VKAPI_ATTR VkResult VKAPI_CALL vkSetEvent(3201VkDevice device,3202VkEvent event);32033204VKAPI_ATTR VkResult VKAPI_CALL vkResetEvent(3205VkDevice device,3206VkEvent event);32073208VKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool(3209VkDevice device,3210const VkQueryPoolCreateInfo* pCreateInfo,3211const VkAllocationCallbacks* pAllocator,3212VkQueryPool* pQueryPool);32133214VKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool(3215VkDevice device,3216VkQueryPool queryPool,3217const VkAllocationCallbacks* pAllocator);32183219VKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults(3220VkDevice device,3221VkQueryPool queryPool,3222uint32_t firstQuery,3223uint32_t queryCount,3224size_t dataSize,3225void* pData,3226VkDeviceSize stride,3227VkQueryResultFlags flags);32283229VKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer(3230VkDevice device,3231const VkBufferCreateInfo* pCreateInfo,3232const VkAllocationCallbacks* pAllocator,3233VkBuffer* pBuffer);32343235VKAPI_ATTR void VKAPI_CALL vkDestroyBuffer(3236VkDevice device,3237VkBuffer buffer,3238const VkAllocationCallbacks* pAllocator);32393240VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView(3241VkDevice device,3242const VkBufferViewCreateInfo* pCreateInfo,3243const VkAllocationCallbacks* pAllocator,3244VkBufferView* pView);32453246VKAPI_ATTR void VKAPI_CALL vkDestroyBufferView(3247VkDevice device,3248VkBufferView bufferView,3249const VkAllocationCallbacks* pAllocator);32503251VKAPI_ATTR VkResult VKAPI_CALL vkCreateImage(3252VkDevice device,3253const VkImageCreateInfo* pCreateInfo,3254const VkAllocationCallbacks* pAllocator,3255VkImage* pImage);32563257VKAPI_ATTR void VKAPI_CALL vkDestroyImage(3258VkDevice device,3259VkImage image,3260const VkAllocationCallbacks* pAllocator);32613262VKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout(3263VkDevice device,3264VkImage image,3265const VkImageSubresource* pSubresource,3266VkSubresourceLayout* pLayout);32673268VKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView(3269VkDevice device,3270const VkImageViewCreateInfo* pCreateInfo,3271const VkAllocationCallbacks* pAllocator,3272VkImageView* pView);32733274VKAPI_ATTR void VKAPI_CALL vkDestroyImageView(3275VkDevice device,3276VkImageView imageView,3277const VkAllocationCallbacks* pAllocator);32783279VKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule(3280VkDevice device,3281const VkShaderModuleCreateInfo* pCreateInfo,3282const VkAllocationCallbacks* pAllocator,3283VkShaderModule* pShaderModule);32843285VKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule(3286VkDevice device,3287VkShaderModule shaderModule,3288const VkAllocationCallbacks* pAllocator);32893290VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache(3291VkDevice device,3292const VkPipelineCacheCreateInfo* pCreateInfo,3293const VkAllocationCallbacks* pAllocator,3294VkPipelineCache* pPipelineCache);32953296VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache(3297VkDevice device,3298VkPipelineCache pipelineCache,3299const VkAllocationCallbacks* pAllocator);33003301VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData(3302VkDevice device,3303VkPipelineCache pipelineCache,3304size_t* pDataSize,3305void* pData);33063307VKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches(3308VkDevice device,3309VkPipelineCache dstCache,3310uint32_t srcCacheCount,3311const VkPipelineCache* pSrcCaches);33123313VKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines(3314VkDevice device,3315VkPipelineCache pipelineCache,3316uint32_t createInfoCount,3317const VkGraphicsPipelineCreateInfo* pCreateInfos,3318const VkAllocationCallbacks* pAllocator,3319VkPipeline* pPipelines);33203321VKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines(3322VkDevice device,3323VkPipelineCache pipelineCache,3324uint32_t createInfoCount,3325const VkComputePipelineCreateInfo* pCreateInfos,3326const VkAllocationCallbacks* pAllocator,3327VkPipeline* pPipelines);33283329VKAPI_ATTR void VKAPI_CALL vkDestroyPipeline(3330VkDevice device,3331VkPipeline pipeline,3332const VkAllocationCallbacks* pAllocator);33333334VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout(3335VkDevice device,3336const VkPipelineLayoutCreateInfo* pCreateInfo,3337const VkAllocationCallbacks* pAllocator,3338VkPipelineLayout* pPipelineLayout);33393340VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout(3341VkDevice device,3342VkPipelineLayout pipelineLayout,3343const VkAllocationCallbacks* pAllocator);33443345VKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler(3346VkDevice device,3347const VkSamplerCreateInfo* pCreateInfo,3348const VkAllocationCallbacks* pAllocator,3349VkSampler* pSampler);33503351VKAPI_ATTR void VKAPI_CALL vkDestroySampler(3352VkDevice device,3353VkSampler sampler,3354const VkAllocationCallbacks* pAllocator);33553356VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout(3357VkDevice device,3358const VkDescriptorSetLayoutCreateInfo* pCreateInfo,3359const VkAllocationCallbacks* pAllocator,3360VkDescriptorSetLayout* pSetLayout);33613362VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout(3363VkDevice device,3364VkDescriptorSetLayout descriptorSetLayout,3365const VkAllocationCallbacks* pAllocator);33663367VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool(3368VkDevice device,3369const VkDescriptorPoolCreateInfo* pCreateInfo,3370const VkAllocationCallbacks* pAllocator,3371VkDescriptorPool* pDescriptorPool);33723373VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool(3374VkDevice device,3375VkDescriptorPool descriptorPool,3376const VkAllocationCallbacks* pAllocator);33773378VKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool(3379VkDevice device,3380VkDescriptorPool descriptorPool,3381VkDescriptorPoolResetFlags flags);33823383VKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets(3384VkDevice device,3385const VkDescriptorSetAllocateInfo* pAllocateInfo,3386VkDescriptorSet* pDescriptorSets);33873388VKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets(3389VkDevice device,3390VkDescriptorPool descriptorPool,3391uint32_t descriptorSetCount,3392const VkDescriptorSet* pDescriptorSets);33933394VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets(3395VkDevice device,3396uint32_t descriptorWriteCount,3397const VkWriteDescriptorSet* pDescriptorWrites,3398uint32_t descriptorCopyCount,3399const VkCopyDescriptorSet* pDescriptorCopies);34003401VKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer(3402VkDevice device,3403const VkFramebufferCreateInfo* pCreateInfo,3404const VkAllocationCallbacks* pAllocator,3405VkFramebuffer* pFramebuffer);34063407VKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer(3408VkDevice device,3409VkFramebuffer framebuffer,3410const VkAllocationCallbacks* pAllocator);34113412VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass(3413VkDevice device,3414const VkRenderPassCreateInfo* pCreateInfo,3415const VkAllocationCallbacks* pAllocator,3416VkRenderPass* pRenderPass);34173418VKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass(3419VkDevice device,3420VkRenderPass renderPass,3421const VkAllocationCallbacks* pAllocator);34223423VKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity(3424VkDevice device,3425VkRenderPass renderPass,3426VkExtent2D* pGranularity);34273428VKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool(3429VkDevice device,3430const VkCommandPoolCreateInfo* pCreateInfo,3431const VkAllocationCallbacks* pAllocator,3432VkCommandPool* pCommandPool);34333434VKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool(3435VkDevice device,3436VkCommandPool commandPool,3437const VkAllocationCallbacks* pAllocator);34383439VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool(3440VkDevice device,3441VkCommandPool commandPool,3442VkCommandPoolResetFlags flags);34433444VKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers(3445VkDevice device,3446const VkCommandBufferAllocateInfo* pAllocateInfo,3447VkCommandBuffer* pCommandBuffers);34483449VKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers(3450VkDevice device,3451VkCommandPool commandPool,3452uint32_t commandBufferCount,3453const VkCommandBuffer* pCommandBuffers);34543455VKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer(3456VkCommandBuffer commandBuffer,3457const VkCommandBufferBeginInfo* pBeginInfo);34583459VKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer(3460VkCommandBuffer commandBuffer);34613462VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer(3463VkCommandBuffer commandBuffer,3464VkCommandBufferResetFlags flags);34653466VKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline(3467VkCommandBuffer commandBuffer,3468VkPipelineBindPoint pipelineBindPoint,3469VkPipeline pipeline);34703471VKAPI_ATTR void VKAPI_CALL vkCmdSetViewport(3472VkCommandBuffer commandBuffer,3473uint32_t firstViewport,3474uint32_t viewportCount,3475const VkViewport* pViewports);34763477VKAPI_ATTR void VKAPI_CALL vkCmdSetScissor(3478VkCommandBuffer commandBuffer,3479uint32_t firstScissor,3480uint32_t scissorCount,3481const VkRect2D* pScissors);34823483VKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth(3484VkCommandBuffer commandBuffer,3485float lineWidth);34863487VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias(3488VkCommandBuffer commandBuffer,3489float depthBiasConstantFactor,3490float depthBiasClamp,3491float depthBiasSlopeFactor);34923493VKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants(3494VkCommandBuffer commandBuffer,3495const float blendConstants[4]);34963497VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds(3498VkCommandBuffer commandBuffer,3499float minDepthBounds,3500float maxDepthBounds);35013502VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask(3503VkCommandBuffer commandBuffer,3504VkStencilFaceFlags faceMask,3505uint32_t compareMask);35063507VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask(3508VkCommandBuffer commandBuffer,3509VkStencilFaceFlags faceMask,3510uint32_t writeMask);35113512VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference(3513VkCommandBuffer commandBuffer,3514VkStencilFaceFlags faceMask,3515uint32_t reference);35163517VKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets(3518VkCommandBuffer commandBuffer,3519VkPipelineBindPoint pipelineBindPoint,3520VkPipelineLayout layout,3521uint32_t firstSet,3522uint32_t descriptorSetCount,3523const VkDescriptorSet* pDescriptorSets,3524uint32_t dynamicOffsetCount,3525const uint32_t* pDynamicOffsets);35263527VKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer(3528VkCommandBuffer commandBuffer,3529VkBuffer buffer,3530VkDeviceSize offset,3531VkIndexType indexType);35323533VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers(3534VkCommandBuffer commandBuffer,3535uint32_t firstBinding,3536uint32_t bindingCount,3537const VkBuffer* pBuffers,3538const VkDeviceSize* pOffsets);35393540VKAPI_ATTR void VKAPI_CALL vkCmdDraw(3541VkCommandBuffer commandBuffer,3542uint32_t vertexCount,3543uint32_t instanceCount,3544uint32_t firstVertex,3545uint32_t firstInstance);35463547VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed(3548VkCommandBuffer commandBuffer,3549uint32_t indexCount,3550uint32_t instanceCount,3551uint32_t firstIndex,3552int32_t vertexOffset,3553uint32_t firstInstance);35543555VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect(3556VkCommandBuffer commandBuffer,3557VkBuffer buffer,3558VkDeviceSize offset,3559uint32_t drawCount,3560uint32_t stride);35613562VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect(3563VkCommandBuffer commandBuffer,3564VkBuffer buffer,3565VkDeviceSize offset,3566uint32_t drawCount,3567uint32_t stride);35683569VKAPI_ATTR void VKAPI_CALL vkCmdDispatch(3570VkCommandBuffer commandBuffer,3571uint32_t groupCountX,3572uint32_t groupCountY,3573uint32_t groupCountZ);35743575VKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect(3576VkCommandBuffer commandBuffer,3577VkBuffer buffer,3578VkDeviceSize offset);35793580VKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer(3581VkCommandBuffer commandBuffer,3582VkBuffer srcBuffer,3583VkBuffer dstBuffer,3584uint32_t regionCount,3585const VkBufferCopy* pRegions);35863587VKAPI_ATTR void VKAPI_CALL vkCmdCopyImage(3588VkCommandBuffer commandBuffer,3589VkImage srcImage,3590VkImageLayout srcImageLayout,3591VkImage dstImage,3592VkImageLayout dstImageLayout,3593uint32_t regionCount,3594const VkImageCopy* pRegions);35953596VKAPI_ATTR void VKAPI_CALL vkCmdBlitImage(3597VkCommandBuffer commandBuffer,3598VkImage srcImage,3599VkImageLayout srcImageLayout,3600VkImage dstImage,3601VkImageLayout dstImageLayout,3602uint32_t regionCount,3603const VkImageBlit* pRegions,3604VkFilter filter);36053606VKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage(3607VkCommandBuffer commandBuffer,3608VkBuffer srcBuffer,3609VkImage dstImage,3610VkImageLayout dstImageLayout,3611uint32_t regionCount,3612const VkBufferImageCopy* pRegions);36133614VKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer(3615VkCommandBuffer commandBuffer,3616VkImage srcImage,3617VkImageLayout srcImageLayout,3618VkBuffer dstBuffer,3619uint32_t regionCount,3620const VkBufferImageCopy* pRegions);36213622VKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer(3623VkCommandBuffer commandBuffer,3624VkBuffer dstBuffer,3625VkDeviceSize dstOffset,3626VkDeviceSize dataSize,3627const void* pData);36283629VKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer(3630VkCommandBuffer commandBuffer,3631VkBuffer dstBuffer,3632VkDeviceSize dstOffset,3633VkDeviceSize size,3634uint32_t data);36353636VKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage(3637VkCommandBuffer commandBuffer,3638VkImage image,3639VkImageLayout imageLayout,3640const VkClearColorValue* pColor,3641uint32_t rangeCount,3642const VkImageSubresourceRange* pRanges);36433644VKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage(3645VkCommandBuffer commandBuffer,3646VkImage image,3647VkImageLayout imageLayout,3648const VkClearDepthStencilValue* pDepthStencil,3649uint32_t rangeCount,3650const VkImageSubresourceRange* pRanges);36513652VKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments(3653VkCommandBuffer commandBuffer,3654uint32_t attachmentCount,3655const VkClearAttachment* pAttachments,3656uint32_t rectCount,3657const VkClearRect* pRects);36583659VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage(3660VkCommandBuffer commandBuffer,3661VkImage srcImage,3662VkImageLayout srcImageLayout,3663VkImage dstImage,3664VkImageLayout dstImageLayout,3665uint32_t regionCount,3666const VkImageResolve* pRegions);36673668VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent(3669VkCommandBuffer commandBuffer,3670VkEvent event,3671VkPipelineStageFlags stageMask);36723673VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent(3674VkCommandBuffer commandBuffer,3675VkEvent event,3676VkPipelineStageFlags stageMask);36773678VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents(3679VkCommandBuffer commandBuffer,3680uint32_t eventCount,3681const VkEvent* pEvents,3682VkPipelineStageFlags srcStageMask,3683VkPipelineStageFlags dstStageMask,3684uint32_t memoryBarrierCount,3685const VkMemoryBarrier* pMemoryBarriers,3686uint32_t bufferMemoryBarrierCount,3687const VkBufferMemoryBarrier* pBufferMemoryBarriers,3688uint32_t imageMemoryBarrierCount,3689const VkImageMemoryBarrier* pImageMemoryBarriers);36903691VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier(3692VkCommandBuffer commandBuffer,3693VkPipelineStageFlags srcStageMask,3694VkPipelineStageFlags dstStageMask,3695VkDependencyFlags dependencyFlags,3696uint32_t memoryBarrierCount,3697const VkMemoryBarrier* pMemoryBarriers,3698uint32_t bufferMemoryBarrierCount,3699const VkBufferMemoryBarrier* pBufferMemoryBarriers,3700uint32_t imageMemoryBarrierCount,3701const VkImageMemoryBarrier* pImageMemoryBarriers);37023703VKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery(3704VkCommandBuffer commandBuffer,3705VkQueryPool queryPool,3706uint32_t query,3707VkQueryControlFlags flags);37083709VKAPI_ATTR void VKAPI_CALL vkCmdEndQuery(3710VkCommandBuffer commandBuffer,3711VkQueryPool queryPool,3712uint32_t query);37133714VKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool(3715VkCommandBuffer commandBuffer,3716VkQueryPool queryPool,3717uint32_t firstQuery,3718uint32_t queryCount);37193720VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp(3721VkCommandBuffer commandBuffer,3722VkPipelineStageFlagBits pipelineStage,3723VkQueryPool queryPool,3724uint32_t query);37253726VKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults(3727VkCommandBuffer commandBuffer,3728VkQueryPool queryPool,3729uint32_t firstQuery,3730uint32_t queryCount,3731VkBuffer dstBuffer,3732VkDeviceSize dstOffset,3733VkDeviceSize stride,3734VkQueryResultFlags flags);37353736VKAPI_ATTR void VKAPI_CALL vkCmdPushConstants(3737VkCommandBuffer commandBuffer,3738VkPipelineLayout layout,3739VkShaderStageFlags stageFlags,3740uint32_t offset,3741uint32_t size,3742const void* pValues);37433744VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass(3745VkCommandBuffer commandBuffer,3746const VkRenderPassBeginInfo* pRenderPassBegin,3747VkSubpassContents contents);37483749VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass(3750VkCommandBuffer commandBuffer,3751VkSubpassContents contents);37523753VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass(3754VkCommandBuffer commandBuffer);37553756VKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands(3757VkCommandBuffer commandBuffer,3758uint32_t commandBufferCount,3759const VkCommandBuffer* pCommandBuffers);3760#endif37613762#define VK_VERSION_1_1 13763// Vulkan 1.1 version number3764#define VK_API_VERSION_1_1 VK_MAKE_VERSION(1, 1, 0)// Patch version should always be set to 0376537663767VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSamplerYcbcrConversion)3768VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplate)37693770#define VK_MAX_DEVICE_GROUP_SIZE 323771#define VK_LUID_SIZE 83772#define VK_QUEUE_FAMILY_EXTERNAL (~0U-1)377337743775typedef enum VkPointClippingBehavior {3776VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES = 0,3777VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY = 1,3778VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,3779VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY,3780VK_POINT_CLIPPING_BEHAVIOR_BEGIN_RANGE = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,3781VK_POINT_CLIPPING_BEHAVIOR_END_RANGE = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY,3782VK_POINT_CLIPPING_BEHAVIOR_RANGE_SIZE = (VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY - VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES + 1),3783VK_POINT_CLIPPING_BEHAVIOR_MAX_ENUM = 0x7FFFFFFF3784} VkPointClippingBehavior;37853786typedef enum VkTessellationDomainOrigin {3787VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT = 0,3788VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT = 1,3789VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,3790VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT,3791VK_TESSELLATION_DOMAIN_ORIGIN_BEGIN_RANGE = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,3792VK_TESSELLATION_DOMAIN_ORIGIN_END_RANGE = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT,3793VK_TESSELLATION_DOMAIN_ORIGIN_RANGE_SIZE = (VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT - VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT + 1),3794VK_TESSELLATION_DOMAIN_ORIGIN_MAX_ENUM = 0x7FFFFFFF3795} VkTessellationDomainOrigin;37963797typedef enum VkSamplerYcbcrModelConversion {3798VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY = 0,3799VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY = 1,3800VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 = 2,3801VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 = 3,3802VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 = 4,3803VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,3804VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY,3805VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709,3806VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601,3807VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020,3808VK_SAMPLER_YCBCR_MODEL_CONVERSION_BEGIN_RANGE = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,3809VK_SAMPLER_YCBCR_MODEL_CONVERSION_END_RANGE = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020,3810VK_SAMPLER_YCBCR_MODEL_CONVERSION_RANGE_SIZE = (VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 - VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY + 1),3811VK_SAMPLER_YCBCR_MODEL_CONVERSION_MAX_ENUM = 0x7FFFFFFF3812} VkSamplerYcbcrModelConversion;38133814typedef enum VkSamplerYcbcrRange {3815VK_SAMPLER_YCBCR_RANGE_ITU_FULL = 0,3816VK_SAMPLER_YCBCR_RANGE_ITU_NARROW = 1,3817VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,3818VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW,3819VK_SAMPLER_YCBCR_RANGE_BEGIN_RANGE = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,3820VK_SAMPLER_YCBCR_RANGE_END_RANGE = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW,3821VK_SAMPLER_YCBCR_RANGE_RANGE_SIZE = (VK_SAMPLER_YCBCR_RANGE_ITU_NARROW - VK_SAMPLER_YCBCR_RANGE_ITU_FULL + 1),3822VK_SAMPLER_YCBCR_RANGE_MAX_ENUM = 0x7FFFFFFF3823} VkSamplerYcbcrRange;38243825typedef enum VkChromaLocation {3826VK_CHROMA_LOCATION_COSITED_EVEN = 0,3827VK_CHROMA_LOCATION_MIDPOINT = 1,3828VK_CHROMA_LOCATION_COSITED_EVEN_KHR = VK_CHROMA_LOCATION_COSITED_EVEN,3829VK_CHROMA_LOCATION_MIDPOINT_KHR = VK_CHROMA_LOCATION_MIDPOINT,3830VK_CHROMA_LOCATION_BEGIN_RANGE = VK_CHROMA_LOCATION_COSITED_EVEN,3831VK_CHROMA_LOCATION_END_RANGE = VK_CHROMA_LOCATION_MIDPOINT,3832VK_CHROMA_LOCATION_RANGE_SIZE = (VK_CHROMA_LOCATION_MIDPOINT - VK_CHROMA_LOCATION_COSITED_EVEN + 1),3833VK_CHROMA_LOCATION_MAX_ENUM = 0x7FFFFFFF3834} VkChromaLocation;38353836typedef enum VkDescriptorUpdateTemplateType {3837VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET = 0,3838VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1,3839VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,3840VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,3841VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,3842VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET + 1),3843VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM = 0x7FFFFFFF3844} VkDescriptorUpdateTemplateType;384538463847typedef enum VkSubgroupFeatureFlagBits {3848VK_SUBGROUP_FEATURE_BASIC_BIT = 0x00000001,3849VK_SUBGROUP_FEATURE_VOTE_BIT = 0x00000002,3850VK_SUBGROUP_FEATURE_ARITHMETIC_BIT = 0x00000004,3851VK_SUBGROUP_FEATURE_BALLOT_BIT = 0x00000008,3852VK_SUBGROUP_FEATURE_SHUFFLE_BIT = 0x00000010,3853VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT = 0x00000020,3854VK_SUBGROUP_FEATURE_CLUSTERED_BIT = 0x00000040,3855VK_SUBGROUP_FEATURE_QUAD_BIT = 0x00000080,3856VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = 0x00000100,3857VK_SUBGROUP_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3858} VkSubgroupFeatureFlagBits;3859typedef VkFlags VkSubgroupFeatureFlags;38603861typedef enum VkPeerMemoryFeatureFlagBits {3862VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT = 0x00000001,3863VK_PEER_MEMORY_FEATURE_COPY_DST_BIT = 0x00000002,3864VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT = 0x00000004,3865VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT = 0x00000008,3866VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR = VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT,3867VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR = VK_PEER_MEMORY_FEATURE_COPY_DST_BIT,3868VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR = VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT,3869VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR = VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT,3870VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3871} VkPeerMemoryFeatureFlagBits;3872typedef VkFlags VkPeerMemoryFeatureFlags;38733874typedef enum VkMemoryAllocateFlagBits {3875VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT = 0x00000001,3876VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT,3877VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3878} VkMemoryAllocateFlagBits;3879typedef VkFlags VkMemoryAllocateFlags;3880typedef VkFlags VkCommandPoolTrimFlags;3881typedef VkFlags VkDescriptorUpdateTemplateCreateFlags;38823883typedef enum VkExternalMemoryHandleTypeFlagBits {3884VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,3885VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,3886VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,3887VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT = 0x00000008,3888VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT = 0x00000010,3889VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT = 0x00000020,3890VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT = 0x00000040,3891VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT = 0x00000200,3892VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID = 0x00000400,3893VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT = 0x00000080,3894VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT = 0x00000100,3895VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT,3896VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,3897VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,3898VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,3899VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,3900VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT,3901VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT,3902VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3903} VkExternalMemoryHandleTypeFlagBits;3904typedef VkFlags VkExternalMemoryHandleTypeFlags;39053906typedef enum VkExternalMemoryFeatureFlagBits {3907VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT = 0x00000001,3908VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT = 0x00000002,3909VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT = 0x00000004,3910VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT,3911VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT,3912VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT,3913VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3914} VkExternalMemoryFeatureFlagBits;3915typedef VkFlags VkExternalMemoryFeatureFlags;39163917typedef enum VkExternalFenceHandleTypeFlagBits {3918VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,3919VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,3920VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,3921VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT = 0x00000008,3922VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT,3923VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT,3924VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,3925VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT,3926VK_EXTERNAL_FENCE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3927} VkExternalFenceHandleTypeFlagBits;3928typedef VkFlags VkExternalFenceHandleTypeFlags;39293930typedef enum VkExternalFenceFeatureFlagBits {3931VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT = 0x00000001,3932VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT = 0x00000002,3933VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT,3934VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT,3935VK_EXTERNAL_FENCE_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3936} VkExternalFenceFeatureFlagBits;3937typedef VkFlags VkExternalFenceFeatureFlags;39383939typedef enum VkFenceImportFlagBits {3940VK_FENCE_IMPORT_TEMPORARY_BIT = 0x00000001,3941VK_FENCE_IMPORT_TEMPORARY_BIT_KHR = VK_FENCE_IMPORT_TEMPORARY_BIT,3942VK_FENCE_IMPORT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3943} VkFenceImportFlagBits;3944typedef VkFlags VkFenceImportFlags;39453946typedef enum VkSemaphoreImportFlagBits {3947VK_SEMAPHORE_IMPORT_TEMPORARY_BIT = 0x00000001,3948VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR = VK_SEMAPHORE_IMPORT_TEMPORARY_BIT,3949VK_SEMAPHORE_IMPORT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3950} VkSemaphoreImportFlagBits;3951typedef VkFlags VkSemaphoreImportFlags;39523953typedef enum VkExternalSemaphoreHandleTypeFlagBits {3954VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,3955VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,3956VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,3957VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT = 0x00000008,3958VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT = 0x00000010,3959VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT,3960VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT,3961VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,3962VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,3963VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT,3964VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3965} VkExternalSemaphoreHandleTypeFlagBits;3966typedef VkFlags VkExternalSemaphoreHandleTypeFlags;39673968typedef enum VkExternalSemaphoreFeatureFlagBits {3969VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT = 0x00000001,3970VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT = 0x00000002,3971VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT,3972VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT,3973VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF3974} VkExternalSemaphoreFeatureFlagBits;3975typedef VkFlags VkExternalSemaphoreFeatureFlags;39763977typedef struct VkPhysicalDeviceSubgroupProperties {3978VkStructureType sType;3979void* pNext;3980uint32_t subgroupSize;3981VkShaderStageFlags supportedStages;3982VkSubgroupFeatureFlags supportedOperations;3983VkBool32 quadOperationsInAllStages;3984} VkPhysicalDeviceSubgroupProperties;39853986typedef struct VkBindBufferMemoryInfo {3987VkStructureType sType;3988const void* pNext;3989VkBuffer buffer;3990VkDeviceMemory memory;3991VkDeviceSize memoryOffset;3992} VkBindBufferMemoryInfo;39933994typedef struct VkBindImageMemoryInfo {3995VkStructureType sType;3996const void* pNext;3997VkImage image;3998VkDeviceMemory memory;3999VkDeviceSize memoryOffset;4000} VkBindImageMemoryInfo;40014002typedef struct VkPhysicalDevice16BitStorageFeatures {4003VkStructureType sType;4004void* pNext;4005VkBool32 storageBuffer16BitAccess;4006VkBool32 uniformAndStorageBuffer16BitAccess;4007VkBool32 storagePushConstant16;4008VkBool32 storageInputOutput16;4009} VkPhysicalDevice16BitStorageFeatures;40104011typedef struct VkMemoryDedicatedRequirements {4012VkStructureType sType;4013void* pNext;4014VkBool32 prefersDedicatedAllocation;4015VkBool32 requiresDedicatedAllocation;4016} VkMemoryDedicatedRequirements;40174018typedef struct VkMemoryDedicatedAllocateInfo {4019VkStructureType sType;4020const void* pNext;4021VkImage image;4022VkBuffer buffer;4023} VkMemoryDedicatedAllocateInfo;40244025typedef struct VkMemoryAllocateFlagsInfo {4026VkStructureType sType;4027const void* pNext;4028VkMemoryAllocateFlags flags;4029uint32_t deviceMask;4030} VkMemoryAllocateFlagsInfo;40314032typedef struct VkDeviceGroupRenderPassBeginInfo {4033VkStructureType sType;4034const void* pNext;4035uint32_t deviceMask;4036uint32_t deviceRenderAreaCount;4037const VkRect2D* pDeviceRenderAreas;4038} VkDeviceGroupRenderPassBeginInfo;40394040typedef struct VkDeviceGroupCommandBufferBeginInfo {4041VkStructureType sType;4042const void* pNext;4043uint32_t deviceMask;4044} VkDeviceGroupCommandBufferBeginInfo;40454046typedef struct VkDeviceGroupSubmitInfo {4047VkStructureType sType;4048const void* pNext;4049uint32_t waitSemaphoreCount;4050const uint32_t* pWaitSemaphoreDeviceIndices;4051uint32_t commandBufferCount;4052const uint32_t* pCommandBufferDeviceMasks;4053uint32_t signalSemaphoreCount;4054const uint32_t* pSignalSemaphoreDeviceIndices;4055} VkDeviceGroupSubmitInfo;40564057typedef struct VkDeviceGroupBindSparseInfo {4058VkStructureType sType;4059const void* pNext;4060uint32_t resourceDeviceIndex;4061uint32_t memoryDeviceIndex;4062} VkDeviceGroupBindSparseInfo;40634064typedef struct VkBindBufferMemoryDeviceGroupInfo {4065VkStructureType sType;4066const void* pNext;4067uint32_t deviceIndexCount;4068const uint32_t* pDeviceIndices;4069} VkBindBufferMemoryDeviceGroupInfo;40704071typedef struct VkBindImageMemoryDeviceGroupInfo {4072VkStructureType sType;4073const void* pNext;4074uint32_t deviceIndexCount;4075const uint32_t* pDeviceIndices;4076uint32_t splitInstanceBindRegionCount;4077const VkRect2D* pSplitInstanceBindRegions;4078} VkBindImageMemoryDeviceGroupInfo;40794080typedef struct VkPhysicalDeviceGroupProperties {4081VkStructureType sType;4082void* pNext;4083uint32_t physicalDeviceCount;4084VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE];4085VkBool32 subsetAllocation;4086} VkPhysicalDeviceGroupProperties;40874088typedef struct VkDeviceGroupDeviceCreateInfo {4089VkStructureType sType;4090const void* pNext;4091uint32_t physicalDeviceCount;4092const VkPhysicalDevice* pPhysicalDevices;4093} VkDeviceGroupDeviceCreateInfo;40944095typedef struct VkBufferMemoryRequirementsInfo2 {4096VkStructureType sType;4097const void* pNext;4098VkBuffer buffer;4099} VkBufferMemoryRequirementsInfo2;41004101typedef struct VkImageMemoryRequirementsInfo2 {4102VkStructureType sType;4103const void* pNext;4104VkImage image;4105} VkImageMemoryRequirementsInfo2;41064107typedef struct VkImageSparseMemoryRequirementsInfo2 {4108VkStructureType sType;4109const void* pNext;4110VkImage image;4111} VkImageSparseMemoryRequirementsInfo2;41124113typedef struct VkMemoryRequirements2 {4114VkStructureType sType;4115void* pNext;4116VkMemoryRequirements memoryRequirements;4117} VkMemoryRequirements2;41184119typedef VkMemoryRequirements2 VkMemoryRequirements2KHR;41204121typedef struct VkSparseImageMemoryRequirements2 {4122VkStructureType sType;4123void* pNext;4124VkSparseImageMemoryRequirements memoryRequirements;4125} VkSparseImageMemoryRequirements2;41264127typedef struct VkPhysicalDeviceFeatures2 {4128VkStructureType sType;4129void* pNext;4130VkPhysicalDeviceFeatures features;4131} VkPhysicalDeviceFeatures2;41324133typedef struct VkPhysicalDeviceProperties2 {4134VkStructureType sType;4135void* pNext;4136VkPhysicalDeviceProperties properties;4137} VkPhysicalDeviceProperties2;41384139typedef struct VkFormatProperties2 {4140VkStructureType sType;4141void* pNext;4142VkFormatProperties formatProperties;4143} VkFormatProperties2;41444145typedef struct VkImageFormatProperties2 {4146VkStructureType sType;4147void* pNext;4148VkImageFormatProperties imageFormatProperties;4149} VkImageFormatProperties2;41504151typedef struct VkPhysicalDeviceImageFormatInfo2 {4152VkStructureType sType;4153const void* pNext;4154VkFormat format;4155VkImageType type;4156VkImageTiling tiling;4157VkImageUsageFlags usage;4158VkImageCreateFlags flags;4159} VkPhysicalDeviceImageFormatInfo2;41604161typedef struct VkQueueFamilyProperties2 {4162VkStructureType sType;4163void* pNext;4164VkQueueFamilyProperties queueFamilyProperties;4165} VkQueueFamilyProperties2;41664167typedef struct VkPhysicalDeviceMemoryProperties2 {4168VkStructureType sType;4169void* pNext;4170VkPhysicalDeviceMemoryProperties memoryProperties;4171} VkPhysicalDeviceMemoryProperties2;41724173typedef struct VkSparseImageFormatProperties2 {4174VkStructureType sType;4175void* pNext;4176VkSparseImageFormatProperties properties;4177} VkSparseImageFormatProperties2;41784179typedef struct VkPhysicalDeviceSparseImageFormatInfo2 {4180VkStructureType sType;4181const void* pNext;4182VkFormat format;4183VkImageType type;4184VkSampleCountFlagBits samples;4185VkImageUsageFlags usage;4186VkImageTiling tiling;4187} VkPhysicalDeviceSparseImageFormatInfo2;41884189typedef struct VkPhysicalDevicePointClippingProperties {4190VkStructureType sType;4191void* pNext;4192VkPointClippingBehavior pointClippingBehavior;4193} VkPhysicalDevicePointClippingProperties;41944195typedef struct VkInputAttachmentAspectReference {4196uint32_t subpass;4197uint32_t inputAttachmentIndex;4198VkImageAspectFlags aspectMask;4199} VkInputAttachmentAspectReference;42004201typedef struct VkRenderPassInputAttachmentAspectCreateInfo {4202VkStructureType sType;4203const void* pNext;4204uint32_t aspectReferenceCount;4205const VkInputAttachmentAspectReference* pAspectReferences;4206} VkRenderPassInputAttachmentAspectCreateInfo;42074208typedef struct VkImageViewUsageCreateInfo {4209VkStructureType sType;4210const void* pNext;4211VkImageUsageFlags usage;4212} VkImageViewUsageCreateInfo;42134214typedef struct VkPipelineTessellationDomainOriginStateCreateInfo {4215VkStructureType sType;4216const void* pNext;4217VkTessellationDomainOrigin domainOrigin;4218} VkPipelineTessellationDomainOriginStateCreateInfo;42194220typedef struct VkRenderPassMultiviewCreateInfo {4221VkStructureType sType;4222const void* pNext;4223uint32_t subpassCount;4224const uint32_t* pViewMasks;4225uint32_t dependencyCount;4226const int32_t* pViewOffsets;4227uint32_t correlationMaskCount;4228const uint32_t* pCorrelationMasks;4229} VkRenderPassMultiviewCreateInfo;42304231typedef struct VkPhysicalDeviceMultiviewFeatures {4232VkStructureType sType;4233void* pNext;4234VkBool32 multiview;4235VkBool32 multiviewGeometryShader;4236VkBool32 multiviewTessellationShader;4237} VkPhysicalDeviceMultiviewFeatures;42384239typedef struct VkPhysicalDeviceMultiviewProperties {4240VkStructureType sType;4241void* pNext;4242uint32_t maxMultiviewViewCount;4243uint32_t maxMultiviewInstanceIndex;4244} VkPhysicalDeviceMultiviewProperties;42454246typedef struct VkPhysicalDeviceVariablePointerFeatures {4247VkStructureType sType;4248void* pNext;4249VkBool32 variablePointersStorageBuffer;4250VkBool32 variablePointers;4251} VkPhysicalDeviceVariablePointerFeatures;42524253typedef struct VkPhysicalDeviceProtectedMemoryFeatures {4254VkStructureType sType;4255void* pNext;4256VkBool32 protectedMemory;4257} VkPhysicalDeviceProtectedMemoryFeatures;42584259typedef struct VkPhysicalDeviceProtectedMemoryProperties {4260VkStructureType sType;4261void* pNext;4262VkBool32 protectedNoFault;4263} VkPhysicalDeviceProtectedMemoryProperties;42644265typedef struct VkDeviceQueueInfo2 {4266VkStructureType sType;4267const void* pNext;4268VkDeviceQueueCreateFlags flags;4269uint32_t queueFamilyIndex;4270uint32_t queueIndex;4271} VkDeviceQueueInfo2;42724273typedef struct VkProtectedSubmitInfo {4274VkStructureType sType;4275const void* pNext;4276VkBool32 protectedSubmit;4277} VkProtectedSubmitInfo;42784279typedef struct VkSamplerYcbcrConversionCreateInfo {4280VkStructureType sType;4281const void* pNext;4282VkFormat format;4283VkSamplerYcbcrModelConversion ycbcrModel;4284VkSamplerYcbcrRange ycbcrRange;4285VkComponentMapping components;4286VkChromaLocation xChromaOffset;4287VkChromaLocation yChromaOffset;4288VkFilter chromaFilter;4289VkBool32 forceExplicitReconstruction;4290} VkSamplerYcbcrConversionCreateInfo;42914292typedef struct VkSamplerYcbcrConversionInfo {4293VkStructureType sType;4294const void* pNext;4295VkSamplerYcbcrConversion conversion;4296} VkSamplerYcbcrConversionInfo;42974298typedef struct VkBindImagePlaneMemoryInfo {4299VkStructureType sType;4300const void* pNext;4301VkImageAspectFlagBits planeAspect;4302} VkBindImagePlaneMemoryInfo;43034304typedef struct VkImagePlaneMemoryRequirementsInfo {4305VkStructureType sType;4306const void* pNext;4307VkImageAspectFlagBits planeAspect;4308} VkImagePlaneMemoryRequirementsInfo;43094310typedef struct VkPhysicalDeviceSamplerYcbcrConversionFeatures {4311VkStructureType sType;4312void* pNext;4313VkBool32 samplerYcbcrConversion;4314} VkPhysicalDeviceSamplerYcbcrConversionFeatures;43154316typedef struct VkSamplerYcbcrConversionImageFormatProperties {4317VkStructureType sType;4318void* pNext;4319uint32_t combinedImageSamplerDescriptorCount;4320} VkSamplerYcbcrConversionImageFormatProperties;43214322typedef struct VkDescriptorUpdateTemplateEntry {4323uint32_t dstBinding;4324uint32_t dstArrayElement;4325uint32_t descriptorCount;4326VkDescriptorType descriptorType;4327size_t offset;4328size_t stride;4329} VkDescriptorUpdateTemplateEntry;43304331typedef struct VkDescriptorUpdateTemplateCreateInfo {4332VkStructureType sType;4333void* pNext;4334VkDescriptorUpdateTemplateCreateFlags flags;4335uint32_t descriptorUpdateEntryCount;4336const VkDescriptorUpdateTemplateEntry* pDescriptorUpdateEntries;4337VkDescriptorUpdateTemplateType templateType;4338VkDescriptorSetLayout descriptorSetLayout;4339VkPipelineBindPoint pipelineBindPoint;4340VkPipelineLayout pipelineLayout;4341uint32_t set;4342} VkDescriptorUpdateTemplateCreateInfo;43434344typedef struct VkExternalMemoryProperties {4345VkExternalMemoryFeatureFlags externalMemoryFeatures;4346VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes;4347VkExternalMemoryHandleTypeFlags compatibleHandleTypes;4348} VkExternalMemoryProperties;43494350typedef struct VkPhysicalDeviceExternalImageFormatInfo {4351VkStructureType sType;4352const void* pNext;4353VkExternalMemoryHandleTypeFlagBits handleType;4354} VkPhysicalDeviceExternalImageFormatInfo;43554356typedef struct VkExternalImageFormatProperties {4357VkStructureType sType;4358void* pNext;4359VkExternalMemoryProperties externalMemoryProperties;4360} VkExternalImageFormatProperties;43614362typedef struct VkPhysicalDeviceExternalBufferInfo {4363VkStructureType sType;4364const void* pNext;4365VkBufferCreateFlags flags;4366VkBufferUsageFlags usage;4367VkExternalMemoryHandleTypeFlagBits handleType;4368} VkPhysicalDeviceExternalBufferInfo;43694370typedef struct VkExternalBufferProperties {4371VkStructureType sType;4372void* pNext;4373VkExternalMemoryProperties externalMemoryProperties;4374} VkExternalBufferProperties;43754376typedef struct VkPhysicalDeviceIDProperties {4377VkStructureType sType;4378void* pNext;4379uint8_t deviceUUID[VK_UUID_SIZE];4380uint8_t driverUUID[VK_UUID_SIZE];4381uint8_t deviceLUID[VK_LUID_SIZE];4382uint32_t deviceNodeMask;4383VkBool32 deviceLUIDValid;4384} VkPhysicalDeviceIDProperties;43854386typedef struct VkExternalMemoryImageCreateInfo {4387VkStructureType sType;4388const void* pNext;4389VkExternalMemoryHandleTypeFlags handleTypes;4390} VkExternalMemoryImageCreateInfo;43914392typedef struct VkExternalMemoryBufferCreateInfo {4393VkStructureType sType;4394const void* pNext;4395VkExternalMemoryHandleTypeFlags handleTypes;4396} VkExternalMemoryBufferCreateInfo;43974398typedef struct VkExportMemoryAllocateInfo {4399VkStructureType sType;4400const void* pNext;4401VkExternalMemoryHandleTypeFlags handleTypes;4402} VkExportMemoryAllocateInfo;44034404typedef struct VkPhysicalDeviceExternalFenceInfo {4405VkStructureType sType;4406const void* pNext;4407VkExternalFenceHandleTypeFlagBits handleType;4408} VkPhysicalDeviceExternalFenceInfo;44094410typedef struct VkExternalFenceProperties {4411VkStructureType sType;4412void* pNext;4413VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes;4414VkExternalFenceHandleTypeFlags compatibleHandleTypes;4415VkExternalFenceFeatureFlags externalFenceFeatures;4416} VkExternalFenceProperties;44174418typedef struct VkExportFenceCreateInfo {4419VkStructureType sType;4420const void* pNext;4421VkExternalFenceHandleTypeFlags handleTypes;4422} VkExportFenceCreateInfo;44234424typedef struct VkExportSemaphoreCreateInfo {4425VkStructureType sType;4426const void* pNext;4427VkExternalSemaphoreHandleTypeFlags handleTypes;4428} VkExportSemaphoreCreateInfo;44294430typedef struct VkPhysicalDeviceExternalSemaphoreInfo {4431VkStructureType sType;4432const void* pNext;4433VkExternalSemaphoreHandleTypeFlagBits handleType;4434} VkPhysicalDeviceExternalSemaphoreInfo;44354436typedef struct VkExternalSemaphoreProperties {4437VkStructureType sType;4438void* pNext;4439VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes;4440VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes;4441VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures;4442} VkExternalSemaphoreProperties;44434444typedef struct VkPhysicalDeviceMaintenance3Properties {4445VkStructureType sType;4446void* pNext;4447uint32_t maxPerSetDescriptors;4448VkDeviceSize maxMemoryAllocationSize;4449} VkPhysicalDeviceMaintenance3Properties;44504451typedef struct VkDescriptorSetLayoutSupport {4452VkStructureType sType;4453void* pNext;4454VkBool32 supported;4455} VkDescriptorSetLayoutSupport;44564457typedef struct VkPhysicalDeviceShaderDrawParameterFeatures {4458VkStructureType sType;4459void* pNext;4460VkBool32 shaderDrawParameters;4461} VkPhysicalDeviceShaderDrawParameterFeatures;446244634464typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceVersion)(uint32_t* pApiVersion);4465typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos);4466typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos);4467typedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeatures)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);4468typedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMask)(VkCommandBuffer commandBuffer, uint32_t deviceMask);4469typedef void (VKAPI_PTR *PFN_vkCmdDispatchBase)(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);4470typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroups)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);4471typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements2)(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);4472typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements2)(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);4473typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2)(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);4474typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures);4475typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties);4476typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties);4477typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties);4478typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties);4479typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties);4480typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties);4481typedef void (VKAPI_PTR *PFN_vkTrimCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags);4482typedef void (VKAPI_PTR *PFN_vkGetDeviceQueue2)(VkDevice device, const VkDeviceQueueInfo2* pQueueInfo, VkQueue* pQueue);4483typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversion)(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion);4484typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversion)(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator);4485typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplate)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);4486typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplate)(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);4487typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplate)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData);4488typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties);4489typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFenceProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties);4490typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties);4491typedef void (VKAPI_PTR *PFN_vkGetDescriptorSetLayoutSupport)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport);44924493#ifndef VK_NO_PROTOTYPES4494VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceVersion(4495uint32_t* pApiVersion);44964497VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2(4498VkDevice device,4499uint32_t bindInfoCount,4500const VkBindBufferMemoryInfo* pBindInfos);45014502VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2(4503VkDevice device,4504uint32_t bindInfoCount,4505const VkBindImageMemoryInfo* pBindInfos);45064507VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeatures(4508VkDevice device,4509uint32_t heapIndex,4510uint32_t localDeviceIndex,4511uint32_t remoteDeviceIndex,4512VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);45134514VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMask(4515VkCommandBuffer commandBuffer,4516uint32_t deviceMask);45174518VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBase(4519VkCommandBuffer commandBuffer,4520uint32_t baseGroupX,4521uint32_t baseGroupY,4522uint32_t baseGroupZ,4523uint32_t groupCountX,4524uint32_t groupCountY,4525uint32_t groupCountZ);45264527VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroups(4528VkInstance instance,4529uint32_t* pPhysicalDeviceGroupCount,4530VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);45314532VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2(4533VkDevice device,4534const VkImageMemoryRequirementsInfo2* pInfo,4535VkMemoryRequirements2* pMemoryRequirements);45364537VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2(4538VkDevice device,4539const VkBufferMemoryRequirementsInfo2* pInfo,4540VkMemoryRequirements2* pMemoryRequirements);45414542VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2(4543VkDevice device,4544const VkImageSparseMemoryRequirementsInfo2* pInfo,4545uint32_t* pSparseMemoryRequirementCount,4546VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);45474548VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2(4549VkPhysicalDevice physicalDevice,4550VkPhysicalDeviceFeatures2* pFeatures);45514552VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2(4553VkPhysicalDevice physicalDevice,4554VkPhysicalDeviceProperties2* pProperties);45554556VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2(4557VkPhysicalDevice physicalDevice,4558VkFormat format,4559VkFormatProperties2* pFormatProperties);45604561VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2(4562VkPhysicalDevice physicalDevice,4563const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,4564VkImageFormatProperties2* pImageFormatProperties);45654566VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2(4567VkPhysicalDevice physicalDevice,4568uint32_t* pQueueFamilyPropertyCount,4569VkQueueFamilyProperties2* pQueueFamilyProperties);45704571VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2(4572VkPhysicalDevice physicalDevice,4573VkPhysicalDeviceMemoryProperties2* pMemoryProperties);45744575VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2(4576VkPhysicalDevice physicalDevice,4577const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,4578uint32_t* pPropertyCount,4579VkSparseImageFormatProperties2* pProperties);45804581VKAPI_ATTR void VKAPI_CALL vkTrimCommandPool(4582VkDevice device,4583VkCommandPool commandPool,4584VkCommandPoolTrimFlags flags);45854586VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue2(4587VkDevice device,4588const VkDeviceQueueInfo2* pQueueInfo,4589VkQueue* pQueue);45904591VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversion(4592VkDevice device,4593const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,4594const VkAllocationCallbacks* pAllocator,4595VkSamplerYcbcrConversion* pYcbcrConversion);45964597VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversion(4598VkDevice device,4599VkSamplerYcbcrConversion ycbcrConversion,4600const VkAllocationCallbacks* pAllocator);46014602VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplate(4603VkDevice device,4604const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,4605const VkAllocationCallbacks* pAllocator,4606VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);46074608VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplate(4609VkDevice device,4610VkDescriptorUpdateTemplate descriptorUpdateTemplate,4611const VkAllocationCallbacks* pAllocator);46124613VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplate(4614VkDevice device,4615VkDescriptorSet descriptorSet,4616VkDescriptorUpdateTemplate descriptorUpdateTemplate,4617const void* pData);46184619VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferProperties(4620VkPhysicalDevice physicalDevice,4621const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,4622VkExternalBufferProperties* pExternalBufferProperties);46234624VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFenceProperties(4625VkPhysicalDevice physicalDevice,4626const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,4627VkExternalFenceProperties* pExternalFenceProperties);46284629VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphoreProperties(4630VkPhysicalDevice physicalDevice,4631const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,4632VkExternalSemaphoreProperties* pExternalSemaphoreProperties);46334634VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupport(4635VkDevice device,4636const VkDescriptorSetLayoutCreateInfo* pCreateInfo,4637VkDescriptorSetLayoutSupport* pSupport);4638#endif46394640#define VK_KHR_surface 14641VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR)46424643#define VK_KHR_SURFACE_SPEC_VERSION 254644#define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface"464546464647typedef enum VkColorSpaceKHR {4648VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0,4649VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT = 1000104001,4650VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT = 1000104002,4651VK_COLOR_SPACE_DCI_P3_LINEAR_EXT = 1000104003,4652VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT = 1000104004,4653VK_COLOR_SPACE_BT709_LINEAR_EXT = 1000104005,4654VK_COLOR_SPACE_BT709_NONLINEAR_EXT = 1000104006,4655VK_COLOR_SPACE_BT2020_LINEAR_EXT = 1000104007,4656VK_COLOR_SPACE_HDR10_ST2084_EXT = 1000104008,4657VK_COLOR_SPACE_DOLBYVISION_EXT = 1000104009,4658VK_COLOR_SPACE_HDR10_HLG_EXT = 1000104010,4659VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT = 1000104011,4660VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT = 1000104012,4661VK_COLOR_SPACE_PASS_THROUGH_EXT = 1000104013,4662VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT = 1000104014,4663VK_COLORSPACE_SRGB_NONLINEAR_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,4664VK_COLOR_SPACE_BEGIN_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,4665VK_COLOR_SPACE_END_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,4666VK_COLOR_SPACE_RANGE_SIZE_KHR = (VK_COLOR_SPACE_SRGB_NONLINEAR_KHR - VK_COLOR_SPACE_SRGB_NONLINEAR_KHR + 1),4667VK_COLOR_SPACE_MAX_ENUM_KHR = 0x7FFFFFFF4668} VkColorSpaceKHR;46694670typedef enum VkPresentModeKHR {4671VK_PRESENT_MODE_IMMEDIATE_KHR = 0,4672VK_PRESENT_MODE_MAILBOX_KHR = 1,4673VK_PRESENT_MODE_FIFO_KHR = 2,4674VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3,4675VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR = 1000111000,4676VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR = 1000111001,4677VK_PRESENT_MODE_BEGIN_RANGE_KHR = VK_PRESENT_MODE_IMMEDIATE_KHR,4678VK_PRESENT_MODE_END_RANGE_KHR = VK_PRESENT_MODE_FIFO_RELAXED_KHR,4679VK_PRESENT_MODE_RANGE_SIZE_KHR = (VK_PRESENT_MODE_FIFO_RELAXED_KHR - VK_PRESENT_MODE_IMMEDIATE_KHR + 1),4680VK_PRESENT_MODE_MAX_ENUM_KHR = 0x7FFFFFFF4681} VkPresentModeKHR;468246834684typedef enum VkSurfaceTransformFlagBitsKHR {4685VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 0x00000001,4686VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002,4687VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004,4688VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008,4689VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010,4690VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020,4691VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040,4692VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080,4693VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100,4694VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF4695} VkSurfaceTransformFlagBitsKHR;4696typedef VkFlags VkSurfaceTransformFlagsKHR;46974698typedef enum VkCompositeAlphaFlagBitsKHR {4699VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,4700VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 0x00000002,4701VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 0x00000004,4702VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 0x00000008,4703VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF4704} VkCompositeAlphaFlagBitsKHR;4705typedef VkFlags VkCompositeAlphaFlagsKHR;47064707typedef struct VkSurfaceCapabilitiesKHR {4708uint32_t minImageCount;4709uint32_t maxImageCount;4710VkExtent2D currentExtent;4711VkExtent2D minImageExtent;4712VkExtent2D maxImageExtent;4713uint32_t maxImageArrayLayers;4714VkSurfaceTransformFlagsKHR supportedTransforms;4715VkSurfaceTransformFlagBitsKHR currentTransform;4716VkCompositeAlphaFlagsKHR supportedCompositeAlpha;4717VkImageUsageFlags supportedUsageFlags;4718} VkSurfaceCapabilitiesKHR;47194720typedef struct VkSurfaceFormatKHR {4721VkFormat format;4722VkColorSpaceKHR colorSpace;4723} VkSurfaceFormatKHR;472447254726typedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator);4727typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported);4728typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);4729typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats);4730typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes);47314732#ifndef VK_NO_PROTOTYPES4733VKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR(4734VkInstance instance,4735VkSurfaceKHR surface,4736const VkAllocationCallbacks* pAllocator);47374738VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR(4739VkPhysicalDevice physicalDevice,4740uint32_t queueFamilyIndex,4741VkSurfaceKHR surface,4742VkBool32* pSupported);47434744VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR(4745VkPhysicalDevice physicalDevice,4746VkSurfaceKHR surface,4747VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);47484749VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR(4750VkPhysicalDevice physicalDevice,4751VkSurfaceKHR surface,4752uint32_t* pSurfaceFormatCount,4753VkSurfaceFormatKHR* pSurfaceFormats);47544755VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR(4756VkPhysicalDevice physicalDevice,4757VkSurfaceKHR surface,4758uint32_t* pPresentModeCount,4759VkPresentModeKHR* pPresentModes);4760#endif47614762#define VK_KHR_swapchain 14763VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR)47644765#define VK_KHR_SWAPCHAIN_SPEC_VERSION 704766#define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain"476747684769typedef enum VkSwapchainCreateFlagBitsKHR {4770VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = 0x00000001,4771VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR = 0x00000002,4772VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF4773} VkSwapchainCreateFlagBitsKHR;4774typedef VkFlags VkSwapchainCreateFlagsKHR;47754776typedef enum VkDeviceGroupPresentModeFlagBitsKHR {4777VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR = 0x00000001,4778VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR = 0x00000002,4779VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR = 0x00000004,4780VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR = 0x00000008,4781VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF4782} VkDeviceGroupPresentModeFlagBitsKHR;4783typedef VkFlags VkDeviceGroupPresentModeFlagsKHR;47844785typedef struct VkSwapchainCreateInfoKHR {4786VkStructureType sType;4787const void* pNext;4788VkSwapchainCreateFlagsKHR flags;4789VkSurfaceKHR surface;4790uint32_t minImageCount;4791VkFormat imageFormat;4792VkColorSpaceKHR imageColorSpace;4793VkExtent2D imageExtent;4794uint32_t imageArrayLayers;4795VkImageUsageFlags imageUsage;4796VkSharingMode imageSharingMode;4797uint32_t queueFamilyIndexCount;4798const uint32_t* pQueueFamilyIndices;4799VkSurfaceTransformFlagBitsKHR preTransform;4800VkCompositeAlphaFlagBitsKHR compositeAlpha;4801VkPresentModeKHR presentMode;4802VkBool32 clipped;4803VkSwapchainKHR oldSwapchain;4804} VkSwapchainCreateInfoKHR;48054806typedef struct VkPresentInfoKHR {4807VkStructureType sType;4808const void* pNext;4809uint32_t waitSemaphoreCount;4810const VkSemaphore* pWaitSemaphores;4811uint32_t swapchainCount;4812const VkSwapchainKHR* pSwapchains;4813const uint32_t* pImageIndices;4814VkResult* pResults;4815} VkPresentInfoKHR;48164817typedef struct VkImageSwapchainCreateInfoKHR {4818VkStructureType sType;4819const void* pNext;4820VkSwapchainKHR swapchain;4821} VkImageSwapchainCreateInfoKHR;48224823typedef struct VkBindImageMemorySwapchainInfoKHR {4824VkStructureType sType;4825const void* pNext;4826VkSwapchainKHR swapchain;4827uint32_t imageIndex;4828} VkBindImageMemorySwapchainInfoKHR;48294830typedef struct VkAcquireNextImageInfoKHR {4831VkStructureType sType;4832const void* pNext;4833VkSwapchainKHR swapchain;4834uint64_t timeout;4835VkSemaphore semaphore;4836VkFence fence;4837uint32_t deviceMask;4838} VkAcquireNextImageInfoKHR;48394840typedef struct VkDeviceGroupPresentCapabilitiesKHR {4841VkStructureType sType;4842const void* pNext;4843uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE];4844VkDeviceGroupPresentModeFlagsKHR modes;4845} VkDeviceGroupPresentCapabilitiesKHR;48464847typedef struct VkDeviceGroupPresentInfoKHR {4848VkStructureType sType;4849const void* pNext;4850uint32_t swapchainCount;4851const uint32_t* pDeviceMasks;4852VkDeviceGroupPresentModeFlagBitsKHR mode;4853} VkDeviceGroupPresentInfoKHR;48544855typedef struct VkDeviceGroupSwapchainCreateInfoKHR {4856VkStructureType sType;4857const void* pNext;4858VkDeviceGroupPresentModeFlagsKHR modes;4859} VkDeviceGroupSwapchainCreateInfoKHR;486048614862typedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain);4863typedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator);4864typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainImagesKHR)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages);4865typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex);4866typedef VkResult (VKAPI_PTR *PFN_vkQueuePresentKHR)(VkQueue queue, const VkPresentInfoKHR* pPresentInfo);4867typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupPresentCapabilitiesKHR)(VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);4868typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupSurfacePresentModesKHR)(VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR* pModes);4869typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDevicePresentRectanglesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects);4870typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImage2KHR)(VkDevice device, const VkAcquireNextImageInfoKHR* pAcquireInfo, uint32_t* pImageIndex);48714872#ifndef VK_NO_PROTOTYPES4873VKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR(4874VkDevice device,4875const VkSwapchainCreateInfoKHR* pCreateInfo,4876const VkAllocationCallbacks* pAllocator,4877VkSwapchainKHR* pSwapchain);48784879VKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR(4880VkDevice device,4881VkSwapchainKHR swapchain,4882const VkAllocationCallbacks* pAllocator);48834884VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR(4885VkDevice device,4886VkSwapchainKHR swapchain,4887uint32_t* pSwapchainImageCount,4888VkImage* pSwapchainImages);48894890VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR(4891VkDevice device,4892VkSwapchainKHR swapchain,4893uint64_t timeout,4894VkSemaphore semaphore,4895VkFence fence,4896uint32_t* pImageIndex);48974898VKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR(4899VkQueue queue,4900const VkPresentInfoKHR* pPresentInfo);49014902VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupPresentCapabilitiesKHR(4903VkDevice device,4904VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);49054906VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupSurfacePresentModesKHR(4907VkDevice device,4908VkSurfaceKHR surface,4909VkDeviceGroupPresentModeFlagsKHR* pModes);49104911VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDevicePresentRectanglesKHR(4912VkPhysicalDevice physicalDevice,4913VkSurfaceKHR surface,4914uint32_t* pRectCount,4915VkRect2D* pRects);49164917VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImage2KHR(4918VkDevice device,4919const VkAcquireNextImageInfoKHR* pAcquireInfo,4920uint32_t* pImageIndex);4921#endif49224923#define VK_KHR_display 14924VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR)4925VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayModeKHR)49264927#define VK_KHR_DISPLAY_SPEC_VERSION 214928#define VK_KHR_DISPLAY_EXTENSION_NAME "VK_KHR_display"492949304931typedef enum VkDisplayPlaneAlphaFlagBitsKHR {4932VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,4933VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 0x00000002,4934VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004,4935VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008,4936VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF4937} VkDisplayPlaneAlphaFlagBitsKHR;4938typedef VkFlags VkDisplayPlaneAlphaFlagsKHR;4939typedef VkFlags VkDisplayModeCreateFlagsKHR;4940typedef VkFlags VkDisplaySurfaceCreateFlagsKHR;49414942typedef struct VkDisplayPropertiesKHR {4943VkDisplayKHR display;4944const char* displayName;4945VkExtent2D physicalDimensions;4946VkExtent2D physicalResolution;4947VkSurfaceTransformFlagsKHR supportedTransforms;4948VkBool32 planeReorderPossible;4949VkBool32 persistentContent;4950} VkDisplayPropertiesKHR;49514952typedef struct VkDisplayModeParametersKHR {4953VkExtent2D visibleRegion;4954uint32_t refreshRate;4955} VkDisplayModeParametersKHR;49564957typedef struct VkDisplayModePropertiesKHR {4958VkDisplayModeKHR displayMode;4959VkDisplayModeParametersKHR parameters;4960} VkDisplayModePropertiesKHR;49614962typedef struct VkDisplayModeCreateInfoKHR {4963VkStructureType sType;4964const void* pNext;4965VkDisplayModeCreateFlagsKHR flags;4966VkDisplayModeParametersKHR parameters;4967} VkDisplayModeCreateInfoKHR;49684969typedef struct VkDisplayPlaneCapabilitiesKHR {4970VkDisplayPlaneAlphaFlagsKHR supportedAlpha;4971VkOffset2D minSrcPosition;4972VkOffset2D maxSrcPosition;4973VkExtent2D minSrcExtent;4974VkExtent2D maxSrcExtent;4975VkOffset2D minDstPosition;4976VkOffset2D maxDstPosition;4977VkExtent2D minDstExtent;4978VkExtent2D maxDstExtent;4979} VkDisplayPlaneCapabilitiesKHR;49804981typedef struct VkDisplayPlanePropertiesKHR {4982VkDisplayKHR currentDisplay;4983uint32_t currentStackIndex;4984} VkDisplayPlanePropertiesKHR;49854986typedef struct VkDisplaySurfaceCreateInfoKHR {4987VkStructureType sType;4988const void* pNext;4989VkDisplaySurfaceCreateFlagsKHR flags;4990VkDisplayModeKHR displayMode;4991uint32_t planeIndex;4992uint32_t planeStackIndex;4993VkSurfaceTransformFlagBitsKHR transform;4994float globalAlpha;4995VkDisplayPlaneAlphaFlagBitsKHR alphaMode;4996VkExtent2D imageExtent;4997} VkDisplaySurfaceCreateInfoKHR;499849995000typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties);5001typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties);5002typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays);5003typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties);5004typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode);5005typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities);5006typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);50075008#ifndef VK_NO_PROTOTYPES5009VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR(5010VkPhysicalDevice physicalDevice,5011uint32_t* pPropertyCount,5012VkDisplayPropertiesKHR* pProperties);50135014VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR(5015VkPhysicalDevice physicalDevice,5016uint32_t* pPropertyCount,5017VkDisplayPlanePropertiesKHR* pProperties);50185019VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR(5020VkPhysicalDevice physicalDevice,5021uint32_t planeIndex,5022uint32_t* pDisplayCount,5023VkDisplayKHR* pDisplays);50245025VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR(5026VkPhysicalDevice physicalDevice,5027VkDisplayKHR display,5028uint32_t* pPropertyCount,5029VkDisplayModePropertiesKHR* pProperties);50305031VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR(5032VkPhysicalDevice physicalDevice,5033VkDisplayKHR display,5034const VkDisplayModeCreateInfoKHR* pCreateInfo,5035const VkAllocationCallbacks* pAllocator,5036VkDisplayModeKHR* pMode);50375038VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR(5039VkPhysicalDevice physicalDevice,5040VkDisplayModeKHR mode,5041uint32_t planeIndex,5042VkDisplayPlaneCapabilitiesKHR* pCapabilities);50435044VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR(5045VkInstance instance,5046const VkDisplaySurfaceCreateInfoKHR* pCreateInfo,5047const VkAllocationCallbacks* pAllocator,5048VkSurfaceKHR* pSurface);5049#endif50505051#define VK_KHR_display_swapchain 15052#define VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION 95053#define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain"50545055typedef struct VkDisplayPresentInfoKHR {5056VkStructureType sType;5057const void* pNext;5058VkRect2D srcRect;5059VkRect2D dstRect;5060VkBool32 persistent;5061} VkDisplayPresentInfoKHR;506250635064typedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains);50655066#ifndef VK_NO_PROTOTYPES5067VKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR(5068VkDevice device,5069uint32_t swapchainCount,5070const VkSwapchainCreateInfoKHR* pCreateInfos,5071const VkAllocationCallbacks* pAllocator,5072VkSwapchainKHR* pSwapchains);5073#endif50745075#define VK_KHR_sampler_mirror_clamp_to_edge 15076#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION 15077#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge"507850795080#define VK_KHR_multiview 15081#define VK_KHR_MULTIVIEW_SPEC_VERSION 15082#define VK_KHR_MULTIVIEW_EXTENSION_NAME "VK_KHR_multiview"50835084typedef VkRenderPassMultiviewCreateInfo VkRenderPassMultiviewCreateInfoKHR;50855086typedef VkPhysicalDeviceMultiviewFeatures VkPhysicalDeviceMultiviewFeaturesKHR;50875088typedef VkPhysicalDeviceMultiviewProperties VkPhysicalDeviceMultiviewPropertiesKHR;5089509050915092#define VK_KHR_get_physical_device_properties2 15093#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION 15094#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME "VK_KHR_get_physical_device_properties2"50955096typedef VkPhysicalDeviceFeatures2 VkPhysicalDeviceFeatures2KHR;50975098typedef VkPhysicalDeviceProperties2 VkPhysicalDeviceProperties2KHR;50995100typedef VkFormatProperties2 VkFormatProperties2KHR;51015102typedef VkImageFormatProperties2 VkImageFormatProperties2KHR;51035104typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR;51055106typedef VkQueueFamilyProperties2 VkQueueFamilyProperties2KHR;51075108typedef VkPhysicalDeviceMemoryProperties2 VkPhysicalDeviceMemoryProperties2KHR;51095110typedef VkSparseImageFormatProperties2 VkSparseImageFormatProperties2KHR;51115112typedef VkPhysicalDeviceSparseImageFormatInfo2 VkPhysicalDeviceSparseImageFormatInfo2KHR;511351145115typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures);5116typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties);5117typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2KHR)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties);5118typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties);5119typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties);5120typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties);5121typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties);51225123#ifndef VK_NO_PROTOTYPES5124VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2KHR(5125VkPhysicalDevice physicalDevice,5126VkPhysicalDeviceFeatures2* pFeatures);51275128VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2KHR(5129VkPhysicalDevice physicalDevice,5130VkPhysicalDeviceProperties2* pProperties);51315132VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2KHR(5133VkPhysicalDevice physicalDevice,5134VkFormat format,5135VkFormatProperties2* pFormatProperties);51365137VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2KHR(5138VkPhysicalDevice physicalDevice,5139const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,5140VkImageFormatProperties2* pImageFormatProperties);51415142VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2KHR(5143VkPhysicalDevice physicalDevice,5144uint32_t* pQueueFamilyPropertyCount,5145VkQueueFamilyProperties2* pQueueFamilyProperties);51465147VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2KHR(5148VkPhysicalDevice physicalDevice,5149VkPhysicalDeviceMemoryProperties2* pMemoryProperties);51505151VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2KHR(5152VkPhysicalDevice physicalDevice,5153const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,5154uint32_t* pPropertyCount,5155VkSparseImageFormatProperties2* pProperties);5156#endif51575158#define VK_KHR_device_group 15159#define VK_KHR_DEVICE_GROUP_SPEC_VERSION 35160#define VK_KHR_DEVICE_GROUP_EXTENSION_NAME "VK_KHR_device_group"51615162typedef VkPeerMemoryFeatureFlags VkPeerMemoryFeatureFlagsKHR;51635164typedef VkPeerMemoryFeatureFlagBits VkPeerMemoryFeatureFlagBitsKHR;51655166typedef VkMemoryAllocateFlags VkMemoryAllocateFlagsKHR;51675168typedef VkMemoryAllocateFlagBits VkMemoryAllocateFlagBitsKHR;516951705171typedef VkMemoryAllocateFlagsInfo VkMemoryAllocateFlagsInfoKHR;51725173typedef VkDeviceGroupRenderPassBeginInfo VkDeviceGroupRenderPassBeginInfoKHR;51745175typedef VkDeviceGroupCommandBufferBeginInfo VkDeviceGroupCommandBufferBeginInfoKHR;51765177typedef VkDeviceGroupSubmitInfo VkDeviceGroupSubmitInfoKHR;51785179typedef VkDeviceGroupBindSparseInfo VkDeviceGroupBindSparseInfoKHR;51805181typedef VkBindBufferMemoryDeviceGroupInfo VkBindBufferMemoryDeviceGroupInfoKHR;51825183typedef VkBindImageMemoryDeviceGroupInfo VkBindImageMemoryDeviceGroupInfoKHR;518451855186typedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);5187typedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMaskKHR)(VkCommandBuffer commandBuffer, uint32_t deviceMask);5188typedef void (VKAPI_PTR *PFN_vkCmdDispatchBaseKHR)(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);51895190#ifndef VK_NO_PROTOTYPES5191VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeaturesKHR(5192VkDevice device,5193uint32_t heapIndex,5194uint32_t localDeviceIndex,5195uint32_t remoteDeviceIndex,5196VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);51975198VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMaskKHR(5199VkCommandBuffer commandBuffer,5200uint32_t deviceMask);52015202VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBaseKHR(5203VkCommandBuffer commandBuffer,5204uint32_t baseGroupX,5205uint32_t baseGroupY,5206uint32_t baseGroupZ,5207uint32_t groupCountX,5208uint32_t groupCountY,5209uint32_t groupCountZ);5210#endif52115212#define VK_KHR_shader_draw_parameters 15213#define VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION 15214#define VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME "VK_KHR_shader_draw_parameters"521552165217#define VK_KHR_maintenance1 15218#define VK_KHR_MAINTENANCE1_SPEC_VERSION 25219#define VK_KHR_MAINTENANCE1_EXTENSION_NAME "VK_KHR_maintenance1"52205221typedef VkCommandPoolTrimFlags VkCommandPoolTrimFlagsKHR;522252235224typedef void (VKAPI_PTR *PFN_vkTrimCommandPoolKHR)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags);52255226#ifndef VK_NO_PROTOTYPES5227VKAPI_ATTR void VKAPI_CALL vkTrimCommandPoolKHR(5228VkDevice device,5229VkCommandPool commandPool,5230VkCommandPoolTrimFlags flags);5231#endif52325233#define VK_KHR_device_group_creation 15234#define VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION 15235#define VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME "VK_KHR_device_group_creation"5236#define VK_MAX_DEVICE_GROUP_SIZE_KHR VK_MAX_DEVICE_GROUP_SIZE52375238typedef VkPhysicalDeviceGroupProperties VkPhysicalDeviceGroupPropertiesKHR;52395240typedef VkDeviceGroupDeviceCreateInfo VkDeviceGroupDeviceCreateInfoKHR;524152425243typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroupsKHR)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);52445245#ifndef VK_NO_PROTOTYPES5246VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroupsKHR(5247VkInstance instance,5248uint32_t* pPhysicalDeviceGroupCount,5249VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);5250#endif52515252#define VK_KHR_external_memory_capabilities 15253#define VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 15254#define VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_memory_capabilities"5255#define VK_LUID_SIZE_KHR VK_LUID_SIZE52565257typedef VkExternalMemoryHandleTypeFlags VkExternalMemoryHandleTypeFlagsKHR;52585259typedef VkExternalMemoryHandleTypeFlagBits VkExternalMemoryHandleTypeFlagBitsKHR;52605261typedef VkExternalMemoryFeatureFlags VkExternalMemoryFeatureFlagsKHR;52625263typedef VkExternalMemoryFeatureFlagBits VkExternalMemoryFeatureFlagBitsKHR;526452655266typedef VkExternalMemoryProperties VkExternalMemoryPropertiesKHR;52675268typedef VkPhysicalDeviceExternalImageFormatInfo VkPhysicalDeviceExternalImageFormatInfoKHR;52695270typedef VkExternalImageFormatProperties VkExternalImageFormatPropertiesKHR;52715272typedef VkPhysicalDeviceExternalBufferInfo VkPhysicalDeviceExternalBufferInfoKHR;52735274typedef VkExternalBufferProperties VkExternalBufferPropertiesKHR;52755276typedef VkPhysicalDeviceIDProperties VkPhysicalDeviceIDPropertiesKHR;527752785279typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties);52805281#ifndef VK_NO_PROTOTYPES5282VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferPropertiesKHR(5283VkPhysicalDevice physicalDevice,5284const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,5285VkExternalBufferProperties* pExternalBufferProperties);5286#endif52875288#define VK_KHR_external_memory 15289#define VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION 15290#define VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME "VK_KHR_external_memory"5291#define VK_QUEUE_FAMILY_EXTERNAL_KHR VK_QUEUE_FAMILY_EXTERNAL52925293typedef VkExternalMemoryImageCreateInfo VkExternalMemoryImageCreateInfoKHR;52945295typedef VkExternalMemoryBufferCreateInfo VkExternalMemoryBufferCreateInfoKHR;52965297typedef VkExportMemoryAllocateInfo VkExportMemoryAllocateInfoKHR;5298529953005301#define VK_KHR_external_memory_fd 15302#define VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION 15303#define VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME "VK_KHR_external_memory_fd"53045305typedef struct VkImportMemoryFdInfoKHR {5306VkStructureType sType;5307const void* pNext;5308VkExternalMemoryHandleTypeFlagBits handleType;5309int fd;5310} VkImportMemoryFdInfoKHR;53115312typedef struct VkMemoryFdPropertiesKHR {5313VkStructureType sType;5314void* pNext;5315uint32_t memoryTypeBits;5316} VkMemoryFdPropertiesKHR;53175318typedef struct VkMemoryGetFdInfoKHR {5319VkStructureType sType;5320const void* pNext;5321VkDeviceMemory memory;5322VkExternalMemoryHandleTypeFlagBits handleType;5323} VkMemoryGetFdInfoKHR;532453255326typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdKHR)(VkDevice device, const VkMemoryGetFdInfoKHR* pGetFdInfo, int* pFd);5327typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdPropertiesKHR)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties);53285329#ifndef VK_NO_PROTOTYPES5330VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdKHR(5331VkDevice device,5332const VkMemoryGetFdInfoKHR* pGetFdInfo,5333int* pFd);53345335VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdPropertiesKHR(5336VkDevice device,5337VkExternalMemoryHandleTypeFlagBits handleType,5338int fd,5339VkMemoryFdPropertiesKHR* pMemoryFdProperties);5340#endif53415342#define VK_KHR_external_semaphore_capabilities 15343#define VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION 15344#define VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_semaphore_capabilities"53455346typedef VkExternalSemaphoreHandleTypeFlags VkExternalSemaphoreHandleTypeFlagsKHR;53475348typedef VkExternalSemaphoreHandleTypeFlagBits VkExternalSemaphoreHandleTypeFlagBitsKHR;53495350typedef VkExternalSemaphoreFeatureFlags VkExternalSemaphoreFeatureFlagsKHR;53515352typedef VkExternalSemaphoreFeatureFlagBits VkExternalSemaphoreFeatureFlagBitsKHR;535353545355typedef VkPhysicalDeviceExternalSemaphoreInfo VkPhysicalDeviceExternalSemaphoreInfoKHR;53565357typedef VkExternalSemaphoreProperties VkExternalSemaphorePropertiesKHR;535853595360typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties);53615362#ifndef VK_NO_PROTOTYPES5363VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(5364VkPhysicalDevice physicalDevice,5365const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,5366VkExternalSemaphoreProperties* pExternalSemaphoreProperties);5367#endif53685369#define VK_KHR_external_semaphore 15370#define VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION 15371#define VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME "VK_KHR_external_semaphore"53725373typedef VkSemaphoreImportFlags VkSemaphoreImportFlagsKHR;53745375typedef VkSemaphoreImportFlagBits VkSemaphoreImportFlagBitsKHR;537653775378typedef VkExportSemaphoreCreateInfo VkExportSemaphoreCreateInfoKHR;5379538053815382#define VK_KHR_external_semaphore_fd 15383#define VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION 15384#define VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME "VK_KHR_external_semaphore_fd"53855386typedef struct VkImportSemaphoreFdInfoKHR {5387VkStructureType sType;5388const void* pNext;5389VkSemaphore semaphore;5390VkSemaphoreImportFlags flags;5391VkExternalSemaphoreHandleTypeFlagBits handleType;5392int fd;5393} VkImportSemaphoreFdInfoKHR;53945395typedef struct VkSemaphoreGetFdInfoKHR {5396VkStructureType sType;5397const void* pNext;5398VkSemaphore semaphore;5399VkExternalSemaphoreHandleTypeFlagBits handleType;5400} VkSemaphoreGetFdInfoKHR;540154025403typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreFdKHR)(VkDevice device, const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);5404typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreFdKHR)(VkDevice device, const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd);54055406#ifndef VK_NO_PROTOTYPES5407VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreFdKHR(5408VkDevice device,5409const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);54105411VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreFdKHR(5412VkDevice device,5413const VkSemaphoreGetFdInfoKHR* pGetFdInfo,5414int* pFd);5415#endif54165417#define VK_KHR_push_descriptor 15418#define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 25419#define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor"54205421typedef struct VkPhysicalDevicePushDescriptorPropertiesKHR {5422VkStructureType sType;5423void* pNext;5424uint32_t maxPushDescriptors;5425} VkPhysicalDevicePushDescriptorPropertiesKHR;542654275428typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetKHR)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites);5429typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplate descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData);54305431#ifndef VK_NO_PROTOTYPES5432VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetKHR(5433VkCommandBuffer commandBuffer,5434VkPipelineBindPoint pipelineBindPoint,5435VkPipelineLayout layout,5436uint32_t set,5437uint32_t descriptorWriteCount,5438const VkWriteDescriptorSet* pDescriptorWrites);54395440VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetWithTemplateKHR(5441VkCommandBuffer commandBuffer,5442VkDescriptorUpdateTemplate descriptorUpdateTemplate,5443VkPipelineLayout layout,5444uint32_t set,5445const void* pData);5446#endif54475448#define VK_KHR_16bit_storage 15449#define VK_KHR_16BIT_STORAGE_SPEC_VERSION 15450#define VK_KHR_16BIT_STORAGE_EXTENSION_NAME "VK_KHR_16bit_storage"54515452typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR;5453545454555456#define VK_KHR_incremental_present 15457#define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 15458#define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present"54595460typedef struct VkRectLayerKHR {5461VkOffset2D offset;5462VkExtent2D extent;5463uint32_t layer;5464} VkRectLayerKHR;54655466typedef struct VkPresentRegionKHR {5467uint32_t rectangleCount;5468const VkRectLayerKHR* pRectangles;5469} VkPresentRegionKHR;54705471typedef struct VkPresentRegionsKHR {5472VkStructureType sType;5473const void* pNext;5474uint32_t swapchainCount;5475const VkPresentRegionKHR* pRegions;5476} VkPresentRegionsKHR;5477547854795480#define VK_KHR_descriptor_update_template 15481typedef VkDescriptorUpdateTemplate VkDescriptorUpdateTemplateKHR;548254835484#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 15485#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template"54865487typedef VkDescriptorUpdateTemplateType VkDescriptorUpdateTemplateTypeKHR;548854895490typedef VkDescriptorUpdateTemplateCreateFlags VkDescriptorUpdateTemplateCreateFlagsKHR;549154925493typedef VkDescriptorUpdateTemplateEntry VkDescriptorUpdateTemplateEntryKHR;54945495typedef VkDescriptorUpdateTemplateCreateInfo VkDescriptorUpdateTemplateCreateInfoKHR;549654975498typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplateKHR)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);5499typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);5500typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData);55015502#ifndef VK_NO_PROTOTYPES5503VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR(5504VkDevice device,5505const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,5506const VkAllocationCallbacks* pAllocator,5507VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);55085509VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR(5510VkDevice device,5511VkDescriptorUpdateTemplate descriptorUpdateTemplate,5512const VkAllocationCallbacks* pAllocator);55135514VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR(5515VkDevice device,5516VkDescriptorSet descriptorSet,5517VkDescriptorUpdateTemplate descriptorUpdateTemplate,5518const void* pData);5519#endif55205521#define VK_KHR_create_renderpass2 15522#define VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION 15523#define VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME "VK_KHR_create_renderpass2"55245525typedef struct VkAttachmentDescription2KHR {5526VkStructureType sType;5527const void* pNext;5528VkAttachmentDescriptionFlags flags;5529VkFormat format;5530VkSampleCountFlagBits samples;5531VkAttachmentLoadOp loadOp;5532VkAttachmentStoreOp storeOp;5533VkAttachmentLoadOp stencilLoadOp;5534VkAttachmentStoreOp stencilStoreOp;5535VkImageLayout initialLayout;5536VkImageLayout finalLayout;5537} VkAttachmentDescription2KHR;55385539typedef struct VkAttachmentReference2KHR {5540VkStructureType sType;5541const void* pNext;5542uint32_t attachment;5543VkImageLayout layout;5544VkImageAspectFlags aspectMask;5545} VkAttachmentReference2KHR;55465547typedef struct VkSubpassDescription2KHR {5548VkStructureType sType;5549const void* pNext;5550VkSubpassDescriptionFlags flags;5551VkPipelineBindPoint pipelineBindPoint;5552uint32_t viewMask;5553uint32_t inputAttachmentCount;5554const VkAttachmentReference2KHR* pInputAttachments;5555uint32_t colorAttachmentCount;5556const VkAttachmentReference2KHR* pColorAttachments;5557const VkAttachmentReference2KHR* pResolveAttachments;5558const VkAttachmentReference2KHR* pDepthStencilAttachment;5559uint32_t preserveAttachmentCount;5560const uint32_t* pPreserveAttachments;5561} VkSubpassDescription2KHR;55625563typedef struct VkSubpassDependency2KHR {5564VkStructureType sType;5565const void* pNext;5566uint32_t srcSubpass;5567uint32_t dstSubpass;5568VkPipelineStageFlags srcStageMask;5569VkPipelineStageFlags dstStageMask;5570VkAccessFlags srcAccessMask;5571VkAccessFlags dstAccessMask;5572VkDependencyFlags dependencyFlags;5573int32_t viewOffset;5574} VkSubpassDependency2KHR;55755576typedef struct VkRenderPassCreateInfo2KHR {5577VkStructureType sType;5578const void* pNext;5579VkRenderPassCreateFlags flags;5580uint32_t attachmentCount;5581const VkAttachmentDescription2KHR* pAttachments;5582uint32_t subpassCount;5583const VkSubpassDescription2KHR* pSubpasses;5584uint32_t dependencyCount;5585const VkSubpassDependency2KHR* pDependencies;5586uint32_t correlatedViewMaskCount;5587const uint32_t* pCorrelatedViewMasks;5588} VkRenderPassCreateInfo2KHR;55895590typedef struct VkSubpassBeginInfoKHR {5591VkStructureType sType;5592const void* pNext;5593VkSubpassContents contents;5594} VkSubpassBeginInfoKHR;55955596typedef struct VkSubpassEndInfoKHR {5597VkStructureType sType;5598const void* pNext;5599} VkSubpassEndInfoKHR;560056015602typedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass2KHR)(VkDevice device, const VkRenderPassCreateInfo2KHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);5603typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass2KHR)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, const VkSubpassBeginInfoKHR* pSubpassBeginInfo);5604typedef void (VKAPI_PTR *PFN_vkCmdNextSubpass2KHR)(VkCommandBuffer commandBuffer, const VkSubpassBeginInfoKHR* pSubpassBeginInfo, const VkSubpassEndInfoKHR* pSubpassEndInfo);5605typedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass2KHR)(VkCommandBuffer commandBuffer, const VkSubpassEndInfoKHR* pSubpassEndInfo);56065607#ifndef VK_NO_PROTOTYPES5608VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass2KHR(5609VkDevice device,5610const VkRenderPassCreateInfo2KHR* pCreateInfo,5611const VkAllocationCallbacks* pAllocator,5612VkRenderPass* pRenderPass);56135614VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass2KHR(5615VkCommandBuffer commandBuffer,5616const VkRenderPassBeginInfo* pRenderPassBegin,5617const VkSubpassBeginInfoKHR* pSubpassBeginInfo);56185619VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass2KHR(5620VkCommandBuffer commandBuffer,5621const VkSubpassBeginInfoKHR* pSubpassBeginInfo,5622const VkSubpassEndInfoKHR* pSubpassEndInfo);56235624VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass2KHR(5625VkCommandBuffer commandBuffer,5626const VkSubpassEndInfoKHR* pSubpassEndInfo);5627#endif56285629#define VK_KHR_shared_presentable_image 15630#define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 15631#define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image"56325633typedef struct VkSharedPresentSurfaceCapabilitiesKHR {5634VkStructureType sType;5635void* pNext;5636VkImageUsageFlags sharedPresentSupportedUsageFlags;5637} VkSharedPresentSurfaceCapabilitiesKHR;563856395640typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain);56415642#ifndef VK_NO_PROTOTYPES5643VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR(5644VkDevice device,5645VkSwapchainKHR swapchain);5646#endif56475648#define VK_KHR_external_fence_capabilities 15649#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION 15650#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_fence_capabilities"56515652typedef VkExternalFenceHandleTypeFlags VkExternalFenceHandleTypeFlagsKHR;56535654typedef VkExternalFenceHandleTypeFlagBits VkExternalFenceHandleTypeFlagBitsKHR;56555656typedef VkExternalFenceFeatureFlags VkExternalFenceFeatureFlagsKHR;56575658typedef VkExternalFenceFeatureFlagBits VkExternalFenceFeatureFlagBitsKHR;565956605661typedef VkPhysicalDeviceExternalFenceInfo VkPhysicalDeviceExternalFenceInfoKHR;56625663typedef VkExternalFenceProperties VkExternalFencePropertiesKHR;566456655666typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties);56675668#ifndef VK_NO_PROTOTYPES5669VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFencePropertiesKHR(5670VkPhysicalDevice physicalDevice,5671const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,5672VkExternalFenceProperties* pExternalFenceProperties);5673#endif56745675#define VK_KHR_external_fence 15676#define VK_KHR_EXTERNAL_FENCE_SPEC_VERSION 15677#define VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME "VK_KHR_external_fence"56785679typedef VkFenceImportFlags VkFenceImportFlagsKHR;56805681typedef VkFenceImportFlagBits VkFenceImportFlagBitsKHR;568256835684typedef VkExportFenceCreateInfo VkExportFenceCreateInfoKHR;5685568656875688#define VK_KHR_external_fence_fd 15689#define VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION 15690#define VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME "VK_KHR_external_fence_fd"56915692typedef struct VkImportFenceFdInfoKHR {5693VkStructureType sType;5694const void* pNext;5695VkFence fence;5696VkFenceImportFlags flags;5697VkExternalFenceHandleTypeFlagBits handleType;5698int fd;5699} VkImportFenceFdInfoKHR;57005701typedef struct VkFenceGetFdInfoKHR {5702VkStructureType sType;5703const void* pNext;5704VkFence fence;5705VkExternalFenceHandleTypeFlagBits handleType;5706} VkFenceGetFdInfoKHR;570757085709typedef VkResult (VKAPI_PTR *PFN_vkImportFenceFdKHR)(VkDevice device, const VkImportFenceFdInfoKHR* pImportFenceFdInfo);5710typedef VkResult (VKAPI_PTR *PFN_vkGetFenceFdKHR)(VkDevice device, const VkFenceGetFdInfoKHR* pGetFdInfo, int* pFd);57115712#ifndef VK_NO_PROTOTYPES5713VKAPI_ATTR VkResult VKAPI_CALL vkImportFenceFdKHR(5714VkDevice device,5715const VkImportFenceFdInfoKHR* pImportFenceFdInfo);57165717VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceFdKHR(5718VkDevice device,5719const VkFenceGetFdInfoKHR* pGetFdInfo,5720int* pFd);5721#endif57225723#define VK_KHR_maintenance2 15724#define VK_KHR_MAINTENANCE2_SPEC_VERSION 15725#define VK_KHR_MAINTENANCE2_EXTENSION_NAME "VK_KHR_maintenance2"57265727typedef VkPointClippingBehavior VkPointClippingBehaviorKHR;57285729typedef VkTessellationDomainOrigin VkTessellationDomainOriginKHR;573057315732typedef VkPhysicalDevicePointClippingProperties VkPhysicalDevicePointClippingPropertiesKHR;57335734typedef VkRenderPassInputAttachmentAspectCreateInfo VkRenderPassInputAttachmentAspectCreateInfoKHR;57355736typedef VkInputAttachmentAspectReference VkInputAttachmentAspectReferenceKHR;57375738typedef VkImageViewUsageCreateInfo VkImageViewUsageCreateInfoKHR;57395740typedef VkPipelineTessellationDomainOriginStateCreateInfo VkPipelineTessellationDomainOriginStateCreateInfoKHR;5741574257435744#define VK_KHR_get_surface_capabilities2 15745#define VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION 15746#define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2"57475748typedef struct VkPhysicalDeviceSurfaceInfo2KHR {5749VkStructureType sType;5750const void* pNext;5751VkSurfaceKHR surface;5752} VkPhysicalDeviceSurfaceInfo2KHR;57535754typedef struct VkSurfaceCapabilities2KHR {5755VkStructureType sType;5756void* pNext;5757VkSurfaceCapabilitiesKHR surfaceCapabilities;5758} VkSurfaceCapabilities2KHR;57595760typedef struct VkSurfaceFormat2KHR {5761VkStructureType sType;5762void* pNext;5763VkSurfaceFormatKHR surfaceFormat;5764} VkSurfaceFormat2KHR;576557665767typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities);5768typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats);57695770#ifndef VK_NO_PROTOTYPES5771VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2KHR(5772VkPhysicalDevice physicalDevice,5773const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,5774VkSurfaceCapabilities2KHR* pSurfaceCapabilities);57755776VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormats2KHR(5777VkPhysicalDevice physicalDevice,5778const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,5779uint32_t* pSurfaceFormatCount,5780VkSurfaceFormat2KHR* pSurfaceFormats);5781#endif57825783#define VK_KHR_variable_pointers 15784#define VK_KHR_VARIABLE_POINTERS_SPEC_VERSION 15785#define VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME "VK_KHR_variable_pointers"57865787typedef VkPhysicalDeviceVariablePointerFeatures VkPhysicalDeviceVariablePointerFeaturesKHR;5788578957905791#define VK_KHR_get_display_properties2 15792#define VK_KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION 15793#define VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME "VK_KHR_get_display_properties2"57945795typedef struct VkDisplayProperties2KHR {5796VkStructureType sType;5797void* pNext;5798VkDisplayPropertiesKHR displayProperties;5799} VkDisplayProperties2KHR;58005801typedef struct VkDisplayPlaneProperties2KHR {5802VkStructureType sType;5803void* pNext;5804VkDisplayPlanePropertiesKHR displayPlaneProperties;5805} VkDisplayPlaneProperties2KHR;58065807typedef struct VkDisplayModeProperties2KHR {5808VkStructureType sType;5809void* pNext;5810VkDisplayModePropertiesKHR displayModeProperties;5811} VkDisplayModeProperties2KHR;58125813typedef struct VkDisplayPlaneInfo2KHR {5814VkStructureType sType;5815const void* pNext;5816VkDisplayModeKHR mode;5817uint32_t planeIndex;5818} VkDisplayPlaneInfo2KHR;58195820typedef struct VkDisplayPlaneCapabilities2KHR {5821VkStructureType sType;5822void* pNext;5823VkDisplayPlaneCapabilitiesKHR capabilities;5824} VkDisplayPlaneCapabilities2KHR;582558265827typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayProperties2KHR* pProperties);5828typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlaneProperties2KHR* pProperties);5829typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModeProperties2KHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModeProperties2KHR* pProperties);5830typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilities2KHR)(VkPhysicalDevice physicalDevice, const VkDisplayPlaneInfo2KHR* pDisplayPlaneInfo, VkDisplayPlaneCapabilities2KHR* pCapabilities);58315832#ifndef VK_NO_PROTOTYPES5833VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayProperties2KHR(5834VkPhysicalDevice physicalDevice,5835uint32_t* pPropertyCount,5836VkDisplayProperties2KHR* pProperties);58375838VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlaneProperties2KHR(5839VkPhysicalDevice physicalDevice,5840uint32_t* pPropertyCount,5841VkDisplayPlaneProperties2KHR* pProperties);58425843VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModeProperties2KHR(5844VkPhysicalDevice physicalDevice,5845VkDisplayKHR display,5846uint32_t* pPropertyCount,5847VkDisplayModeProperties2KHR* pProperties);58485849VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilities2KHR(5850VkPhysicalDevice physicalDevice,5851const VkDisplayPlaneInfo2KHR* pDisplayPlaneInfo,5852VkDisplayPlaneCapabilities2KHR* pCapabilities);5853#endif58545855#define VK_KHR_dedicated_allocation 15856#define VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION 35857#define VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_KHR_dedicated_allocation"58585859typedef VkMemoryDedicatedRequirements VkMemoryDedicatedRequirementsKHR;58605861typedef VkMemoryDedicatedAllocateInfo VkMemoryDedicatedAllocateInfoKHR;5862586358645865#define VK_KHR_storage_buffer_storage_class 15866#define VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION 15867#define VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME "VK_KHR_storage_buffer_storage_class"586858695870#define VK_KHR_relaxed_block_layout 15871#define VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION 15872#define VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME "VK_KHR_relaxed_block_layout"587358745875#define VK_KHR_get_memory_requirements2 15876#define VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION 15877#define VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME "VK_KHR_get_memory_requirements2"58785879typedef VkBufferMemoryRequirementsInfo2 VkBufferMemoryRequirementsInfo2KHR;58805881typedef VkImageMemoryRequirementsInfo2 VkImageMemoryRequirementsInfo2KHR;58825883typedef VkImageSparseMemoryRequirementsInfo2 VkImageSparseMemoryRequirementsInfo2KHR;58845885typedef VkSparseImageMemoryRequirements2 VkSparseImageMemoryRequirements2KHR;588658875888typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements2KHR)(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);5889typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements2KHR)(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);5890typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2KHR)(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);58915892#ifndef VK_NO_PROTOTYPES5893VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2KHR(5894VkDevice device,5895const VkImageMemoryRequirementsInfo2* pInfo,5896VkMemoryRequirements2* pMemoryRequirements);58975898VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2KHR(5899VkDevice device,5900const VkBufferMemoryRequirementsInfo2* pInfo,5901VkMemoryRequirements2* pMemoryRequirements);59025903VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2KHR(5904VkDevice device,5905const VkImageSparseMemoryRequirementsInfo2* pInfo,5906uint32_t* pSparseMemoryRequirementCount,5907VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);5908#endif59095910#define VK_KHR_image_format_list 15911#define VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION 15912#define VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME "VK_KHR_image_format_list"59135914typedef struct VkImageFormatListCreateInfoKHR {5915VkStructureType sType;5916const void* pNext;5917uint32_t viewFormatCount;5918const VkFormat* pViewFormats;5919} VkImageFormatListCreateInfoKHR;5920592159225923#define VK_KHR_sampler_ycbcr_conversion 15924typedef VkSamplerYcbcrConversion VkSamplerYcbcrConversionKHR;592559265927#define VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION 15928#define VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME "VK_KHR_sampler_ycbcr_conversion"59295930typedef VkSamplerYcbcrModelConversion VkSamplerYcbcrModelConversionKHR;59315932typedef VkSamplerYcbcrRange VkSamplerYcbcrRangeKHR;59335934typedef VkChromaLocation VkChromaLocationKHR;593559365937typedef VkSamplerYcbcrConversionCreateInfo VkSamplerYcbcrConversionCreateInfoKHR;59385939typedef VkSamplerYcbcrConversionInfo VkSamplerYcbcrConversionInfoKHR;59405941typedef VkBindImagePlaneMemoryInfo VkBindImagePlaneMemoryInfoKHR;59425943typedef VkImagePlaneMemoryRequirementsInfo VkImagePlaneMemoryRequirementsInfoKHR;59445945typedef VkPhysicalDeviceSamplerYcbcrConversionFeatures VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR;59465947typedef VkSamplerYcbcrConversionImageFormatProperties VkSamplerYcbcrConversionImageFormatPropertiesKHR;594859495950typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversionKHR)(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion);5951typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversionKHR)(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator);59525953#ifndef VK_NO_PROTOTYPES5954VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversionKHR(5955VkDevice device,5956const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,5957const VkAllocationCallbacks* pAllocator,5958VkSamplerYcbcrConversion* pYcbcrConversion);59595960VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversionKHR(5961VkDevice device,5962VkSamplerYcbcrConversion ycbcrConversion,5963const VkAllocationCallbacks* pAllocator);5964#endif59655966#define VK_KHR_bind_memory2 15967#define VK_KHR_BIND_MEMORY_2_SPEC_VERSION 15968#define VK_KHR_BIND_MEMORY_2_EXTENSION_NAME "VK_KHR_bind_memory2"59695970typedef VkBindBufferMemoryInfo VkBindBufferMemoryInfoKHR;59715972typedef VkBindImageMemoryInfo VkBindImageMemoryInfoKHR;597359745975typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2KHR)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos);5976typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2KHR)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos);59775978#ifndef VK_NO_PROTOTYPES5979VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2KHR(5980VkDevice device,5981uint32_t bindInfoCount,5982const VkBindBufferMemoryInfo* pBindInfos);59835984VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2KHR(5985VkDevice device,5986uint32_t bindInfoCount,5987const VkBindImageMemoryInfo* pBindInfos);5988#endif59895990#define VK_KHR_maintenance3 15991#define VK_KHR_MAINTENANCE3_SPEC_VERSION 15992#define VK_KHR_MAINTENANCE3_EXTENSION_NAME "VK_KHR_maintenance3"59935994typedef VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance3PropertiesKHR;59955996typedef VkDescriptorSetLayoutSupport VkDescriptorSetLayoutSupportKHR;599759985999typedef void (VKAPI_PTR *PFN_vkGetDescriptorSetLayoutSupportKHR)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport);60006001#ifndef VK_NO_PROTOTYPES6002VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupportKHR(6003VkDevice device,6004const VkDescriptorSetLayoutCreateInfo* pCreateInfo,6005VkDescriptorSetLayoutSupport* pSupport);6006#endif60076008#define VK_KHR_draw_indirect_count 16009#define VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION 16010#define VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_KHR_draw_indirect_count"60116012typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountKHR)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);6013typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountKHR)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);60146015#ifndef VK_NO_PROTOTYPES6016VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountKHR(6017VkCommandBuffer commandBuffer,6018VkBuffer buffer,6019VkDeviceSize offset,6020VkBuffer countBuffer,6021VkDeviceSize countBufferOffset,6022uint32_t maxDrawCount,6023uint32_t stride);60246025VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountKHR(6026VkCommandBuffer commandBuffer,6027VkBuffer buffer,6028VkDeviceSize offset,6029VkBuffer countBuffer,6030VkDeviceSize countBufferOffset,6031uint32_t maxDrawCount,6032uint32_t stride);6033#endif60346035#define VK_KHR_8bit_storage 16036#define VK_KHR_8BIT_STORAGE_SPEC_VERSION 16037#define VK_KHR_8BIT_STORAGE_EXTENSION_NAME "VK_KHR_8bit_storage"60386039typedef struct VkPhysicalDevice8BitStorageFeaturesKHR {6040VkStructureType sType;6041void* pNext;6042VkBool32 storageBuffer8BitAccess;6043VkBool32 uniformAndStorageBuffer8BitAccess;6044VkBool32 storagePushConstant8;6045} VkPhysicalDevice8BitStorageFeaturesKHR;6046604760486049#define VK_KHR_shader_atomic_int64 16050#define VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION 16051#define VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME "VK_KHR_shader_atomic_int64"60526053typedef struct VkPhysicalDeviceShaderAtomicInt64FeaturesKHR {6054VkStructureType sType;6055void* pNext;6056VkBool32 shaderBufferInt64Atomics;6057VkBool32 shaderSharedInt64Atomics;6058} VkPhysicalDeviceShaderAtomicInt64FeaturesKHR;6059606060616062#define VK_KHR_driver_properties 16063#define VK_MAX_DRIVER_NAME_SIZE_KHR 2566064#define VK_MAX_DRIVER_INFO_SIZE_KHR 2566065#define VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION 16066#define VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME "VK_KHR_driver_properties"606760686069typedef enum VkDriverIdKHR {6070VK_DRIVER_ID_AMD_PROPRIETARY_KHR = 1,6071VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR = 2,6072VK_DRIVER_ID_MESA_RADV_KHR = 3,6073VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR = 4,6074VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR = 5,6075VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR = 6,6076VK_DRIVER_ID_IMAGINATION_PROPRIETARY_KHR = 7,6077VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR = 8,6078VK_DRIVER_ID_ARM_PROPRIETARY_KHR = 9,6079VK_DRIVER_ID_BEGIN_RANGE_KHR = VK_DRIVER_ID_AMD_PROPRIETARY_KHR,6080VK_DRIVER_ID_END_RANGE_KHR = VK_DRIVER_ID_ARM_PROPRIETARY_KHR,6081VK_DRIVER_ID_RANGE_SIZE_KHR = (VK_DRIVER_ID_ARM_PROPRIETARY_KHR - VK_DRIVER_ID_AMD_PROPRIETARY_KHR + 1),6082VK_DRIVER_ID_MAX_ENUM_KHR = 0x7FFFFFFF6083} VkDriverIdKHR;60846085typedef struct VkConformanceVersionKHR {6086uint8_t major;6087uint8_t minor;6088uint8_t subminor;6089uint8_t patch;6090} VkConformanceVersionKHR;60916092typedef struct VkPhysicalDeviceDriverPropertiesKHR {6093VkStructureType sType;6094void* pNext;6095uint32_t driverID;6096char driverName[VK_MAX_DRIVER_NAME_SIZE_KHR];6097char driverInfo[VK_MAX_DRIVER_INFO_SIZE_KHR];6098VkConformanceVersionKHR conformanceVersion;6099} VkPhysicalDeviceDriverPropertiesKHR;6100610161026103#define VK_KHR_vulkan_memory_model 16104#define VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION 26105#define VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME "VK_KHR_vulkan_memory_model"61066107typedef struct VkPhysicalDeviceVulkanMemoryModelFeaturesKHR {6108VkStructureType sType;6109void* pNext;6110VkBool32 vulkanMemoryModel;6111VkBool32 vulkanMemoryModelDeviceScope;6112} VkPhysicalDeviceVulkanMemoryModelFeaturesKHR;6113611461156116#define VK_EXT_debug_report 16117VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)61186119#define VK_EXT_DEBUG_REPORT_SPEC_VERSION 96120#define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report"612161226123typedef enum VkDebugReportObjectTypeEXT {6124VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0,6125VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1,6126VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2,6127VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT = 3,6128VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT = 4,6129VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT = 5,6130VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT = 6,6131VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT = 7,6132VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT = 8,6133VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT = 9,6134VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT = 10,6135VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT = 11,6136VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT = 12,6137VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT = 13,6138VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT = 14,6139VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT = 15,6140VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT = 16,6141VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT = 17,6142VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT = 18,6143VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT = 19,6144VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT = 20,6145VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT = 21,6146VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT = 22,6147VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT = 23,6148VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT = 24,6149VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT = 25,6150VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26,6151VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27,6152VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT = 28,6153VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29,6154VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30,6155VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT = 31,6156VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT = 32,6157VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33,6158VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT = 1000156000,6159VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT = 1000085000,6160VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NVX_EXT = 1000165000,6161VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,6162VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,6163VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,6164VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,6165VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,6166VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,6167VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1),6168VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF6169} VkDebugReportObjectTypeEXT;617061716172typedef enum VkDebugReportFlagBitsEXT {6173VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 0x00000001,6174VK_DEBUG_REPORT_WARNING_BIT_EXT = 0x00000002,6175VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 0x00000004,6176VK_DEBUG_REPORT_ERROR_BIT_EXT = 0x00000008,6177VK_DEBUG_REPORT_DEBUG_BIT_EXT = 0x00000010,6178VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF6179} VkDebugReportFlagBitsEXT;6180typedef VkFlags VkDebugReportFlagsEXT;61816182typedef VkBool32 (VKAPI_PTR *PFN_vkDebugReportCallbackEXT)(6183VkDebugReportFlagsEXT flags,6184VkDebugReportObjectTypeEXT objectType,6185uint64_t object,6186size_t location,6187int32_t messageCode,6188const char* pLayerPrefix,6189const char* pMessage,6190void* pUserData);61916192typedef struct VkDebugReportCallbackCreateInfoEXT {6193VkStructureType sType;6194const void* pNext;6195VkDebugReportFlagsEXT flags;6196PFN_vkDebugReportCallbackEXT pfnCallback;6197void* pUserData;6198} VkDebugReportCallbackCreateInfoEXT;619962006201typedef VkResult (VKAPI_PTR *PFN_vkCreateDebugReportCallbackEXT)(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback);6202typedef void (VKAPI_PTR *PFN_vkDestroyDebugReportCallbackEXT)(VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator);6203typedef void (VKAPI_PTR *PFN_vkDebugReportMessageEXT)(VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage);62046205#ifndef VK_NO_PROTOTYPES6206VKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugReportCallbackEXT(6207VkInstance instance,6208const VkDebugReportCallbackCreateInfoEXT* pCreateInfo,6209const VkAllocationCallbacks* pAllocator,6210VkDebugReportCallbackEXT* pCallback);62116212VKAPI_ATTR void VKAPI_CALL vkDestroyDebugReportCallbackEXT(6213VkInstance instance,6214VkDebugReportCallbackEXT callback,6215const VkAllocationCallbacks* pAllocator);62166217VKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT(6218VkInstance instance,6219VkDebugReportFlagsEXT flags,6220VkDebugReportObjectTypeEXT objectType,6221uint64_t object,6222size_t location,6223int32_t messageCode,6224const char* pLayerPrefix,6225const char* pMessage);6226#endif62276228#define VK_NV_glsl_shader 16229#define VK_NV_GLSL_SHADER_SPEC_VERSION 16230#define VK_NV_GLSL_SHADER_EXTENSION_NAME "VK_NV_glsl_shader"623162326233#define VK_EXT_depth_range_unrestricted 16234#define VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION 16235#define VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME "VK_EXT_depth_range_unrestricted"623662376238#define VK_IMG_filter_cubic 16239#define VK_IMG_FILTER_CUBIC_SPEC_VERSION 16240#define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic"624162426243#define VK_AMD_rasterization_order 16244#define VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION 16245#define VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME "VK_AMD_rasterization_order"624662476248typedef enum VkRasterizationOrderAMD {6249VK_RASTERIZATION_ORDER_STRICT_AMD = 0,6250VK_RASTERIZATION_ORDER_RELAXED_AMD = 1,6251VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD = VK_RASTERIZATION_ORDER_STRICT_AMD,6252VK_RASTERIZATION_ORDER_END_RANGE_AMD = VK_RASTERIZATION_ORDER_RELAXED_AMD,6253VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD = (VK_RASTERIZATION_ORDER_RELAXED_AMD - VK_RASTERIZATION_ORDER_STRICT_AMD + 1),6254VK_RASTERIZATION_ORDER_MAX_ENUM_AMD = 0x7FFFFFFF6255} VkRasterizationOrderAMD;62566257typedef struct VkPipelineRasterizationStateRasterizationOrderAMD {6258VkStructureType sType;6259const void* pNext;6260VkRasterizationOrderAMD rasterizationOrder;6261} VkPipelineRasterizationStateRasterizationOrderAMD;6262626362646265#define VK_AMD_shader_trinary_minmax 16266#define VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION 16267#define VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME "VK_AMD_shader_trinary_minmax"626862696270#define VK_AMD_shader_explicit_vertex_parameter 16271#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION 16272#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME "VK_AMD_shader_explicit_vertex_parameter"627362746275#define VK_EXT_debug_marker 16276#define VK_EXT_DEBUG_MARKER_SPEC_VERSION 46277#define VK_EXT_DEBUG_MARKER_EXTENSION_NAME "VK_EXT_debug_marker"62786279typedef struct VkDebugMarkerObjectNameInfoEXT {6280VkStructureType sType;6281const void* pNext;6282VkDebugReportObjectTypeEXT objectType;6283uint64_t object;6284const char* pObjectName;6285} VkDebugMarkerObjectNameInfoEXT;62866287typedef struct VkDebugMarkerObjectTagInfoEXT {6288VkStructureType sType;6289const void* pNext;6290VkDebugReportObjectTypeEXT objectType;6291uint64_t object;6292uint64_t tagName;6293size_t tagSize;6294const void* pTag;6295} VkDebugMarkerObjectTagInfoEXT;62966297typedef struct VkDebugMarkerMarkerInfoEXT {6298VkStructureType sType;6299const void* pNext;6300const char* pMarkerName;6301float color[4];6302} VkDebugMarkerMarkerInfoEXT;630363046305typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectTagEXT)(VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo);6306typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectNameEXT)(VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo);6307typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerBeginEXT)(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);6308typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerEndEXT)(VkCommandBuffer commandBuffer);6309typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerInsertEXT)(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);63106311#ifndef VK_NO_PROTOTYPES6312VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectTagEXT(6313VkDevice device,6314const VkDebugMarkerObjectTagInfoEXT* pTagInfo);63156316VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectNameEXT(6317VkDevice device,6318const VkDebugMarkerObjectNameInfoEXT* pNameInfo);63196320VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerBeginEXT(6321VkCommandBuffer commandBuffer,6322const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);63236324VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerEndEXT(6325VkCommandBuffer commandBuffer);63266327VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerInsertEXT(6328VkCommandBuffer commandBuffer,6329const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);6330#endif63316332#define VK_AMD_gcn_shader 16333#define VK_AMD_GCN_SHADER_SPEC_VERSION 16334#define VK_AMD_GCN_SHADER_EXTENSION_NAME "VK_AMD_gcn_shader"633563366337#define VK_NV_dedicated_allocation 16338#define VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION 16339#define VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_NV_dedicated_allocation"63406341typedef struct VkDedicatedAllocationImageCreateInfoNV {6342VkStructureType sType;6343const void* pNext;6344VkBool32 dedicatedAllocation;6345} VkDedicatedAllocationImageCreateInfoNV;63466347typedef struct VkDedicatedAllocationBufferCreateInfoNV {6348VkStructureType sType;6349const void* pNext;6350VkBool32 dedicatedAllocation;6351} VkDedicatedAllocationBufferCreateInfoNV;63526353typedef struct VkDedicatedAllocationMemoryAllocateInfoNV {6354VkStructureType sType;6355const void* pNext;6356VkImage image;6357VkBuffer buffer;6358} VkDedicatedAllocationMemoryAllocateInfoNV;6359636063616362#define VK_AMD_draw_indirect_count 16363#define VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION 16364#define VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_AMD_draw_indirect_count"63656366typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);6367typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);63686369#ifndef VK_NO_PROTOTYPES6370VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountAMD(6371VkCommandBuffer commandBuffer,6372VkBuffer buffer,6373VkDeviceSize offset,6374VkBuffer countBuffer,6375VkDeviceSize countBufferOffset,6376uint32_t maxDrawCount,6377uint32_t stride);63786379VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountAMD(6380VkCommandBuffer commandBuffer,6381VkBuffer buffer,6382VkDeviceSize offset,6383VkBuffer countBuffer,6384VkDeviceSize countBufferOffset,6385uint32_t maxDrawCount,6386uint32_t stride);6387#endif63886389#define VK_AMD_negative_viewport_height 16390#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION 16391#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME "VK_AMD_negative_viewport_height"639263936394#define VK_AMD_gpu_shader_half_float 16395#define VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION 16396#define VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME "VK_AMD_gpu_shader_half_float"639763986399#define VK_AMD_shader_ballot 16400#define VK_AMD_SHADER_BALLOT_SPEC_VERSION 16401#define VK_AMD_SHADER_BALLOT_EXTENSION_NAME "VK_AMD_shader_ballot"640264036404#define VK_AMD_texture_gather_bias_lod 16405#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION 16406#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME "VK_AMD_texture_gather_bias_lod"64076408typedef struct VkTextureLODGatherFormatPropertiesAMD {6409VkStructureType sType;6410void* pNext;6411VkBool32 supportsTextureGatherLODBiasAMD;6412} VkTextureLODGatherFormatPropertiesAMD;6413641464156416#define VK_AMD_shader_info 16417#define VK_AMD_SHADER_INFO_SPEC_VERSION 16418#define VK_AMD_SHADER_INFO_EXTENSION_NAME "VK_AMD_shader_info"641964206421typedef enum VkShaderInfoTypeAMD {6422VK_SHADER_INFO_TYPE_STATISTICS_AMD = 0,6423VK_SHADER_INFO_TYPE_BINARY_AMD = 1,6424VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD = 2,6425VK_SHADER_INFO_TYPE_BEGIN_RANGE_AMD = VK_SHADER_INFO_TYPE_STATISTICS_AMD,6426VK_SHADER_INFO_TYPE_END_RANGE_AMD = VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD,6427VK_SHADER_INFO_TYPE_RANGE_SIZE_AMD = (VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD - VK_SHADER_INFO_TYPE_STATISTICS_AMD + 1),6428VK_SHADER_INFO_TYPE_MAX_ENUM_AMD = 0x7FFFFFFF6429} VkShaderInfoTypeAMD;64306431typedef struct VkShaderResourceUsageAMD {6432uint32_t numUsedVgprs;6433uint32_t numUsedSgprs;6434uint32_t ldsSizePerLocalWorkGroup;6435size_t ldsUsageSizeInBytes;6436size_t scratchMemUsageInBytes;6437} VkShaderResourceUsageAMD;64386439typedef struct VkShaderStatisticsInfoAMD {6440VkShaderStageFlags shaderStageMask;6441VkShaderResourceUsageAMD resourceUsage;6442uint32_t numPhysicalVgprs;6443uint32_t numPhysicalSgprs;6444uint32_t numAvailableVgprs;6445uint32_t numAvailableSgprs;6446uint32_t computeWorkGroupSize[3];6447} VkShaderStatisticsInfoAMD;644864496450typedef VkResult (VKAPI_PTR *PFN_vkGetShaderInfoAMD)(VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo);64516452#ifndef VK_NO_PROTOTYPES6453VKAPI_ATTR VkResult VKAPI_CALL vkGetShaderInfoAMD(6454VkDevice device,6455VkPipeline pipeline,6456VkShaderStageFlagBits shaderStage,6457VkShaderInfoTypeAMD infoType,6458size_t* pInfoSize,6459void* pInfo);6460#endif64616462#define VK_AMD_shader_image_load_store_lod 16463#define VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION 16464#define VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME "VK_AMD_shader_image_load_store_lod"646564666467#define VK_NV_corner_sampled_image 16468#define VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION 26469#define VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME "VK_NV_corner_sampled_image"64706471typedef struct VkPhysicalDeviceCornerSampledImageFeaturesNV {6472VkStructureType sType;6473void* pNext;6474VkBool32 cornerSampledImage;6475} VkPhysicalDeviceCornerSampledImageFeaturesNV;6476647764786479#define VK_IMG_format_pvrtc 16480#define VK_IMG_FORMAT_PVRTC_SPEC_VERSION 16481#define VK_IMG_FORMAT_PVRTC_EXTENSION_NAME "VK_IMG_format_pvrtc"648264836484#define VK_NV_external_memory_capabilities 16485#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 16486#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_NV_external_memory_capabilities"648764886489typedef enum VkExternalMemoryHandleTypeFlagBitsNV {6490VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 0x00000001,6491VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 0x00000002,6492VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 0x00000004,6493VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 0x00000008,6494VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF6495} VkExternalMemoryHandleTypeFlagBitsNV;6496typedef VkFlags VkExternalMemoryHandleTypeFlagsNV;64976498typedef enum VkExternalMemoryFeatureFlagBitsNV {6499VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 0x00000001,6500VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 0x00000002,6501VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 0x00000004,6502VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF6503} VkExternalMemoryFeatureFlagBitsNV;6504typedef VkFlags VkExternalMemoryFeatureFlagsNV;65056506typedef struct VkExternalImageFormatPropertiesNV {6507VkImageFormatProperties imageFormatProperties;6508VkExternalMemoryFeatureFlagsNV externalMemoryFeatures;6509VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes;6510VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes;6511} VkExternalImageFormatPropertiesNV;651265136514typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);65156516#ifndef VK_NO_PROTOTYPES6517VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceExternalImageFormatPropertiesNV(6518VkPhysicalDevice physicalDevice,6519VkFormat format,6520VkImageType type,6521VkImageTiling tiling,6522VkImageUsageFlags usage,6523VkImageCreateFlags flags,6524VkExternalMemoryHandleTypeFlagsNV externalHandleType,6525VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);6526#endif65276528#define VK_NV_external_memory 16529#define VK_NV_EXTERNAL_MEMORY_SPEC_VERSION 16530#define VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME "VK_NV_external_memory"65316532typedef struct VkExternalMemoryImageCreateInfoNV {6533VkStructureType sType;6534const void* pNext;6535VkExternalMemoryHandleTypeFlagsNV handleTypes;6536} VkExternalMemoryImageCreateInfoNV;65376538typedef struct VkExportMemoryAllocateInfoNV {6539VkStructureType sType;6540const void* pNext;6541VkExternalMemoryHandleTypeFlagsNV handleTypes;6542} VkExportMemoryAllocateInfoNV;6543654465456546#define VK_EXT_validation_flags 16547#define VK_EXT_VALIDATION_FLAGS_SPEC_VERSION 16548#define VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME "VK_EXT_validation_flags"654965506551typedef enum VkValidationCheckEXT {6552VK_VALIDATION_CHECK_ALL_EXT = 0,6553VK_VALIDATION_CHECK_SHADERS_EXT = 1,6554VK_VALIDATION_CHECK_BEGIN_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT,6555VK_VALIDATION_CHECK_END_RANGE_EXT = VK_VALIDATION_CHECK_SHADERS_EXT,6556VK_VALIDATION_CHECK_RANGE_SIZE_EXT = (VK_VALIDATION_CHECK_SHADERS_EXT - VK_VALIDATION_CHECK_ALL_EXT + 1),6557VK_VALIDATION_CHECK_MAX_ENUM_EXT = 0x7FFFFFFF6558} VkValidationCheckEXT;65596560typedef struct VkValidationFlagsEXT {6561VkStructureType sType;6562const void* pNext;6563uint32_t disabledValidationCheckCount;6564const VkValidationCheckEXT* pDisabledValidationChecks;6565} VkValidationFlagsEXT;6566656765686569#define VK_EXT_shader_subgroup_ballot 16570#define VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION 16571#define VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME "VK_EXT_shader_subgroup_ballot"657265736574#define VK_EXT_shader_subgroup_vote 16575#define VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION 16576#define VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME "VK_EXT_shader_subgroup_vote"657765786579#define VK_EXT_astc_decode_mode 16580#define VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION 16581#define VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME "VK_EXT_astc_decode_mode"65826583typedef struct VkImageViewASTCDecodeModeEXT {6584VkStructureType sType;6585const void* pNext;6586VkFormat decodeMode;6587} VkImageViewASTCDecodeModeEXT;65886589typedef struct VkPhysicalDeviceASTCDecodeFeaturesEXT {6590VkStructureType sType;6591void* pNext;6592VkBool32 decodeModeSharedExponent;6593} VkPhysicalDeviceASTCDecodeFeaturesEXT;6594659565966597#define VK_EXT_conditional_rendering 16598#define VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION 16599#define VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME "VK_EXT_conditional_rendering"660066016602typedef enum VkConditionalRenderingFlagBitsEXT {6603VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT = 0x00000001,6604VK_CONDITIONAL_RENDERING_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF6605} VkConditionalRenderingFlagBitsEXT;6606typedef VkFlags VkConditionalRenderingFlagsEXT;66076608typedef struct VkConditionalRenderingBeginInfoEXT {6609VkStructureType sType;6610const void* pNext;6611VkBuffer buffer;6612VkDeviceSize offset;6613VkConditionalRenderingFlagsEXT flags;6614} VkConditionalRenderingBeginInfoEXT;66156616typedef struct VkPhysicalDeviceConditionalRenderingFeaturesEXT {6617VkStructureType sType;6618void* pNext;6619VkBool32 conditionalRendering;6620VkBool32 inheritedConditionalRendering;6621} VkPhysicalDeviceConditionalRenderingFeaturesEXT;66226623typedef struct VkCommandBufferInheritanceConditionalRenderingInfoEXT {6624VkStructureType sType;6625const void* pNext;6626VkBool32 conditionalRenderingEnable;6627} VkCommandBufferInheritanceConditionalRenderingInfoEXT;662866296630typedef void (VKAPI_PTR *PFN_vkCmdBeginConditionalRenderingEXT)(VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin);6631typedef void (VKAPI_PTR *PFN_vkCmdEndConditionalRenderingEXT)(VkCommandBuffer commandBuffer);66326633#ifndef VK_NO_PROTOTYPES6634VKAPI_ATTR void VKAPI_CALL vkCmdBeginConditionalRenderingEXT(6635VkCommandBuffer commandBuffer,6636const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin);66376638VKAPI_ATTR void VKAPI_CALL vkCmdEndConditionalRenderingEXT(6639VkCommandBuffer commandBuffer);6640#endif66416642#define VK_NVX_device_generated_commands 16643VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkObjectTableNVX)6644VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNVX)66456646#define VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 36647#define VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NVX_device_generated_commands"664866496650typedef enum VkIndirectCommandsTokenTypeNVX {6651VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX = 0,6652VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX = 1,6653VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX = 2,6654VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX = 3,6655VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX = 4,6656VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX = 5,6657VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX = 6,6658VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX = 7,6659VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX,6660VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX,6661VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NVX = (VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX - VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX + 1),6662VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF6663} VkIndirectCommandsTokenTypeNVX;66646665typedef enum VkObjectEntryTypeNVX {6666VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX = 0,6667VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX = 1,6668VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX = 2,6669VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX = 3,6670VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX = 4,6671VK_OBJECT_ENTRY_TYPE_BEGIN_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX,6672VK_OBJECT_ENTRY_TYPE_END_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX,6673VK_OBJECT_ENTRY_TYPE_RANGE_SIZE_NVX = (VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX - VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX + 1),6674VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF6675} VkObjectEntryTypeNVX;667666776678typedef enum VkIndirectCommandsLayoutUsageFlagBitsNVX {6679VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX = 0x00000001,6680VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX = 0x00000002,6681VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX = 0x00000004,6682VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX = 0x00000008,6683VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF6684} VkIndirectCommandsLayoutUsageFlagBitsNVX;6685typedef VkFlags VkIndirectCommandsLayoutUsageFlagsNVX;66866687typedef enum VkObjectEntryUsageFlagBitsNVX {6688VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX = 0x00000001,6689VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX = 0x00000002,6690VK_OBJECT_ENTRY_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF6691} VkObjectEntryUsageFlagBitsNVX;6692typedef VkFlags VkObjectEntryUsageFlagsNVX;66936694typedef struct VkDeviceGeneratedCommandsFeaturesNVX {6695VkStructureType sType;6696const void* pNext;6697VkBool32 computeBindingPointSupport;6698} VkDeviceGeneratedCommandsFeaturesNVX;66996700typedef struct VkDeviceGeneratedCommandsLimitsNVX {6701VkStructureType sType;6702const void* pNext;6703uint32_t maxIndirectCommandsLayoutTokenCount;6704uint32_t maxObjectEntryCounts;6705uint32_t minSequenceCountBufferOffsetAlignment;6706uint32_t minSequenceIndexBufferOffsetAlignment;6707uint32_t minCommandsTokenBufferOffsetAlignment;6708} VkDeviceGeneratedCommandsLimitsNVX;67096710typedef struct VkIndirectCommandsTokenNVX {6711VkIndirectCommandsTokenTypeNVX tokenType;6712VkBuffer buffer;6713VkDeviceSize offset;6714} VkIndirectCommandsTokenNVX;67156716typedef struct VkIndirectCommandsLayoutTokenNVX {6717VkIndirectCommandsTokenTypeNVX tokenType;6718uint32_t bindingUnit;6719uint32_t dynamicCount;6720uint32_t divisor;6721} VkIndirectCommandsLayoutTokenNVX;67226723typedef struct VkIndirectCommandsLayoutCreateInfoNVX {6724VkStructureType sType;6725const void* pNext;6726VkPipelineBindPoint pipelineBindPoint;6727VkIndirectCommandsLayoutUsageFlagsNVX flags;6728uint32_t tokenCount;6729const VkIndirectCommandsLayoutTokenNVX* pTokens;6730} VkIndirectCommandsLayoutCreateInfoNVX;67316732typedef struct VkCmdProcessCommandsInfoNVX {6733VkStructureType sType;6734const void* pNext;6735VkObjectTableNVX objectTable;6736VkIndirectCommandsLayoutNVX indirectCommandsLayout;6737uint32_t indirectCommandsTokenCount;6738const VkIndirectCommandsTokenNVX* pIndirectCommandsTokens;6739uint32_t maxSequencesCount;6740VkCommandBuffer targetCommandBuffer;6741VkBuffer sequencesCountBuffer;6742VkDeviceSize sequencesCountOffset;6743VkBuffer sequencesIndexBuffer;6744VkDeviceSize sequencesIndexOffset;6745} VkCmdProcessCommandsInfoNVX;67466747typedef struct VkCmdReserveSpaceForCommandsInfoNVX {6748VkStructureType sType;6749const void* pNext;6750VkObjectTableNVX objectTable;6751VkIndirectCommandsLayoutNVX indirectCommandsLayout;6752uint32_t maxSequencesCount;6753} VkCmdReserveSpaceForCommandsInfoNVX;67546755typedef struct VkObjectTableCreateInfoNVX {6756VkStructureType sType;6757const void* pNext;6758uint32_t objectCount;6759const VkObjectEntryTypeNVX* pObjectEntryTypes;6760const uint32_t* pObjectEntryCounts;6761const VkObjectEntryUsageFlagsNVX* pObjectEntryUsageFlags;6762uint32_t maxUniformBuffersPerDescriptor;6763uint32_t maxStorageBuffersPerDescriptor;6764uint32_t maxStorageImagesPerDescriptor;6765uint32_t maxSampledImagesPerDescriptor;6766uint32_t maxPipelineLayouts;6767} VkObjectTableCreateInfoNVX;67686769typedef struct VkObjectTableEntryNVX {6770VkObjectEntryTypeNVX type;6771VkObjectEntryUsageFlagsNVX flags;6772} VkObjectTableEntryNVX;67736774typedef struct VkObjectTablePipelineEntryNVX {6775VkObjectEntryTypeNVX type;6776VkObjectEntryUsageFlagsNVX flags;6777VkPipeline pipeline;6778} VkObjectTablePipelineEntryNVX;67796780typedef struct VkObjectTableDescriptorSetEntryNVX {6781VkObjectEntryTypeNVX type;6782VkObjectEntryUsageFlagsNVX flags;6783VkPipelineLayout pipelineLayout;6784VkDescriptorSet descriptorSet;6785} VkObjectTableDescriptorSetEntryNVX;67866787typedef struct VkObjectTableVertexBufferEntryNVX {6788VkObjectEntryTypeNVX type;6789VkObjectEntryUsageFlagsNVX flags;6790VkBuffer buffer;6791} VkObjectTableVertexBufferEntryNVX;67926793typedef struct VkObjectTableIndexBufferEntryNVX {6794VkObjectEntryTypeNVX type;6795VkObjectEntryUsageFlagsNVX flags;6796VkBuffer buffer;6797VkIndexType indexType;6798} VkObjectTableIndexBufferEntryNVX;67996800typedef struct VkObjectTablePushConstantEntryNVX {6801VkObjectEntryTypeNVX type;6802VkObjectEntryUsageFlagsNVX flags;6803VkPipelineLayout pipelineLayout;6804VkShaderStageFlags stageFlags;6805} VkObjectTablePushConstantEntryNVX;680668076808typedef void (VKAPI_PTR *PFN_vkCmdProcessCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo);6809typedef void (VKAPI_PTR *PFN_vkCmdReserveSpaceForCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo);6810typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNVX)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout);6811typedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNVX)(VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);6812typedef VkResult (VKAPI_PTR *PFN_vkCreateObjectTableNVX)(VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable);6813typedef void (VKAPI_PTR *PFN_vkDestroyObjectTableNVX)(VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator);6814typedef VkResult (VKAPI_PTR *PFN_vkRegisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const uint32_t* pObjectIndices);6815typedef VkResult (VKAPI_PTR *PFN_vkUnregisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const uint32_t* pObjectIndices);6816typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX)(VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits);68176818#ifndef VK_NO_PROTOTYPES6819VKAPI_ATTR void VKAPI_CALL vkCmdProcessCommandsNVX(6820VkCommandBuffer commandBuffer,6821const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo);68226823VKAPI_ATTR void VKAPI_CALL vkCmdReserveSpaceForCommandsNVX(6824VkCommandBuffer commandBuffer,6825const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo);68266827VKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNVX(6828VkDevice device,6829const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo,6830const VkAllocationCallbacks* pAllocator,6831VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout);68326833VKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNVX(6834VkDevice device,6835VkIndirectCommandsLayoutNVX indirectCommandsLayout,6836const VkAllocationCallbacks* pAllocator);68376838VKAPI_ATTR VkResult VKAPI_CALL vkCreateObjectTableNVX(6839VkDevice device,6840const VkObjectTableCreateInfoNVX* pCreateInfo,6841const VkAllocationCallbacks* pAllocator,6842VkObjectTableNVX* pObjectTable);68436844VKAPI_ATTR void VKAPI_CALL vkDestroyObjectTableNVX(6845VkDevice device,6846VkObjectTableNVX objectTable,6847const VkAllocationCallbacks* pAllocator);68486849VKAPI_ATTR VkResult VKAPI_CALL vkRegisterObjectsNVX(6850VkDevice device,6851VkObjectTableNVX objectTable,6852uint32_t objectCount,6853const VkObjectTableEntryNVX* const* ppObjectTableEntries,6854const uint32_t* pObjectIndices);68556856VKAPI_ATTR VkResult VKAPI_CALL vkUnregisterObjectsNVX(6857VkDevice device,6858VkObjectTableNVX objectTable,6859uint32_t objectCount,6860const VkObjectEntryTypeNVX* pObjectEntryTypes,6861const uint32_t* pObjectIndices);68626863VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX(6864VkPhysicalDevice physicalDevice,6865VkDeviceGeneratedCommandsFeaturesNVX* pFeatures,6866VkDeviceGeneratedCommandsLimitsNVX* pLimits);6867#endif68686869#define VK_NV_clip_space_w_scaling 16870#define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 16871#define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling"68726873typedef struct VkViewportWScalingNV {6874float xcoeff;6875float ycoeff;6876} VkViewportWScalingNV;68776878typedef struct VkPipelineViewportWScalingStateCreateInfoNV {6879VkStructureType sType;6880const void* pNext;6881VkBool32 viewportWScalingEnable;6882uint32_t viewportCount;6883const VkViewportWScalingNV* pViewportWScalings;6884} VkPipelineViewportWScalingStateCreateInfoNV;688568866887typedef void (VKAPI_PTR *PFN_vkCmdSetViewportWScalingNV)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings);68886889#ifndef VK_NO_PROTOTYPES6890VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWScalingNV(6891VkCommandBuffer commandBuffer,6892uint32_t firstViewport,6893uint32_t viewportCount,6894const VkViewportWScalingNV* pViewportWScalings);6895#endif68966897#define VK_EXT_direct_mode_display 16898#define VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION 16899#define VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME "VK_EXT_direct_mode_display"69006901typedef VkResult (VKAPI_PTR *PFN_vkReleaseDisplayEXT)(VkPhysicalDevice physicalDevice, VkDisplayKHR display);69026903#ifndef VK_NO_PROTOTYPES6904VKAPI_ATTR VkResult VKAPI_CALL vkReleaseDisplayEXT(6905VkPhysicalDevice physicalDevice,6906VkDisplayKHR display);6907#endif69086909#define VK_EXT_display_surface_counter 16910#define VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION 16911#define VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME "VK_EXT_display_surface_counter"691269136914typedef enum VkSurfaceCounterFlagBitsEXT {6915VK_SURFACE_COUNTER_VBLANK_EXT = 0x00000001,6916VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF6917} VkSurfaceCounterFlagBitsEXT;6918typedef VkFlags VkSurfaceCounterFlagsEXT;69196920typedef struct VkSurfaceCapabilities2EXT {6921VkStructureType sType;6922void* pNext;6923uint32_t minImageCount;6924uint32_t maxImageCount;6925VkExtent2D currentExtent;6926VkExtent2D minImageExtent;6927VkExtent2D maxImageExtent;6928uint32_t maxImageArrayLayers;6929VkSurfaceTransformFlagsKHR supportedTransforms;6930VkSurfaceTransformFlagBitsKHR currentTransform;6931VkCompositeAlphaFlagsKHR supportedCompositeAlpha;6932VkImageUsageFlags supportedUsageFlags;6933VkSurfaceCounterFlagsEXT supportedSurfaceCounters;6934} VkSurfaceCapabilities2EXT;693569366937typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities);69386939#ifndef VK_NO_PROTOTYPES6940VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2EXT(6941VkPhysicalDevice physicalDevice,6942VkSurfaceKHR surface,6943VkSurfaceCapabilities2EXT* pSurfaceCapabilities);6944#endif69456946#define VK_EXT_display_control 16947#define VK_EXT_DISPLAY_CONTROL_SPEC_VERSION 16948#define VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME "VK_EXT_display_control"694969506951typedef enum VkDisplayPowerStateEXT {6952VK_DISPLAY_POWER_STATE_OFF_EXT = 0,6953VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1,6954VK_DISPLAY_POWER_STATE_ON_EXT = 2,6955VK_DISPLAY_POWER_STATE_BEGIN_RANGE_EXT = VK_DISPLAY_POWER_STATE_OFF_EXT,6956VK_DISPLAY_POWER_STATE_END_RANGE_EXT = VK_DISPLAY_POWER_STATE_ON_EXT,6957VK_DISPLAY_POWER_STATE_RANGE_SIZE_EXT = (VK_DISPLAY_POWER_STATE_ON_EXT - VK_DISPLAY_POWER_STATE_OFF_EXT + 1),6958VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT = 0x7FFFFFFF6959} VkDisplayPowerStateEXT;69606961typedef enum VkDeviceEventTypeEXT {6962VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT = 0,6963VK_DEVICE_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT,6964VK_DEVICE_EVENT_TYPE_END_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT,6965VK_DEVICE_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT - VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT + 1),6966VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF6967} VkDeviceEventTypeEXT;69686969typedef enum VkDisplayEventTypeEXT {6970VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT = 0,6971VK_DISPLAY_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT,6972VK_DISPLAY_EVENT_TYPE_END_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT,6973VK_DISPLAY_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT - VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT + 1),6974VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF6975} VkDisplayEventTypeEXT;69766977typedef struct VkDisplayPowerInfoEXT {6978VkStructureType sType;6979const void* pNext;6980VkDisplayPowerStateEXT powerState;6981} VkDisplayPowerInfoEXT;69826983typedef struct VkDeviceEventInfoEXT {6984VkStructureType sType;6985const void* pNext;6986VkDeviceEventTypeEXT deviceEvent;6987} VkDeviceEventInfoEXT;69886989typedef struct VkDisplayEventInfoEXT {6990VkStructureType sType;6991const void* pNext;6992VkDisplayEventTypeEXT displayEvent;6993} VkDisplayEventInfoEXT;69946995typedef struct VkSwapchainCounterCreateInfoEXT {6996VkStructureType sType;6997const void* pNext;6998VkSurfaceCounterFlagsEXT surfaceCounters;6999} VkSwapchainCounterCreateInfoEXT;700070017002typedef VkResult (VKAPI_PTR *PFN_vkDisplayPowerControlEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo);7003typedef VkResult (VKAPI_PTR *PFN_vkRegisterDeviceEventEXT)(VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);7004typedef VkResult (VKAPI_PTR *PFN_vkRegisterDisplayEventEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);7005typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainCounterEXT)(VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue);70067007#ifndef VK_NO_PROTOTYPES7008VKAPI_ATTR VkResult VKAPI_CALL vkDisplayPowerControlEXT(7009VkDevice device,7010VkDisplayKHR display,7011const VkDisplayPowerInfoEXT* pDisplayPowerInfo);70127013VKAPI_ATTR VkResult VKAPI_CALL vkRegisterDeviceEventEXT(7014VkDevice device,7015const VkDeviceEventInfoEXT* pDeviceEventInfo,7016const VkAllocationCallbacks* pAllocator,7017VkFence* pFence);70187019VKAPI_ATTR VkResult VKAPI_CALL vkRegisterDisplayEventEXT(7020VkDevice device,7021VkDisplayKHR display,7022const VkDisplayEventInfoEXT* pDisplayEventInfo,7023const VkAllocationCallbacks* pAllocator,7024VkFence* pFence);70257026VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainCounterEXT(7027VkDevice device,7028VkSwapchainKHR swapchain,7029VkSurfaceCounterFlagBitsEXT counter,7030uint64_t* pCounterValue);7031#endif70327033#define VK_GOOGLE_display_timing 17034#define VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION 17035#define VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME "VK_GOOGLE_display_timing"70367037typedef struct VkRefreshCycleDurationGOOGLE {7038uint64_t refreshDuration;7039} VkRefreshCycleDurationGOOGLE;70407041typedef struct VkPastPresentationTimingGOOGLE {7042uint32_t presentID;7043uint64_t desiredPresentTime;7044uint64_t actualPresentTime;7045uint64_t earliestPresentTime;7046uint64_t presentMargin;7047} VkPastPresentationTimingGOOGLE;70487049typedef struct VkPresentTimeGOOGLE {7050uint32_t presentID;7051uint64_t desiredPresentTime;7052} VkPresentTimeGOOGLE;70537054typedef struct VkPresentTimesInfoGOOGLE {7055VkStructureType sType;7056const void* pNext;7057uint32_t swapchainCount;7058const VkPresentTimeGOOGLE* pTimes;7059} VkPresentTimesInfoGOOGLE;706070617062typedef VkResult (VKAPI_PTR *PFN_vkGetRefreshCycleDurationGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);7063typedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings);70647065#ifndef VK_NO_PROTOTYPES7066VKAPI_ATTR VkResult VKAPI_CALL vkGetRefreshCycleDurationGOOGLE(7067VkDevice device,7068VkSwapchainKHR swapchain,7069VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);70707071VKAPI_ATTR VkResult VKAPI_CALL vkGetPastPresentationTimingGOOGLE(7072VkDevice device,7073VkSwapchainKHR swapchain,7074uint32_t* pPresentationTimingCount,7075VkPastPresentationTimingGOOGLE* pPresentationTimings);7076#endif70777078#define VK_NV_sample_mask_override_coverage 17079#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION 17080#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME "VK_NV_sample_mask_override_coverage"708170827083#define VK_NV_geometry_shader_passthrough 17084#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION 17085#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME "VK_NV_geometry_shader_passthrough"708670877088#define VK_NV_viewport_array2 17089#define VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION 17090#define VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME "VK_NV_viewport_array2"709170927093#define VK_NVX_multiview_per_view_attributes 17094#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION 17095#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME "VK_NVX_multiview_per_view_attributes"70967097typedef struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {7098VkStructureType sType;7099void* pNext;7100VkBool32 perViewPositionAllComponents;7101} VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;7102710371047105#define VK_NV_viewport_swizzle 17106#define VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION 17107#define VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME "VK_NV_viewport_swizzle"710871097110typedef enum VkViewportCoordinateSwizzleNV {7111VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV = 0,7112VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV = 1,7113VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV = 2,7114VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV = 3,7115VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV = 4,7116VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV = 5,7117VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV = 6,7118VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV = 7,7119VK_VIEWPORT_COORDINATE_SWIZZLE_BEGIN_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV,7120VK_VIEWPORT_COORDINATE_SWIZZLE_END_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV,7121VK_VIEWPORT_COORDINATE_SWIZZLE_RANGE_SIZE_NV = (VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV + 1),7122VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV = 0x7FFFFFFF7123} VkViewportCoordinateSwizzleNV;71247125typedef VkFlags VkPipelineViewportSwizzleStateCreateFlagsNV;71267127typedef struct VkViewportSwizzleNV {7128VkViewportCoordinateSwizzleNV x;7129VkViewportCoordinateSwizzleNV y;7130VkViewportCoordinateSwizzleNV z;7131VkViewportCoordinateSwizzleNV w;7132} VkViewportSwizzleNV;71337134typedef struct VkPipelineViewportSwizzleStateCreateInfoNV {7135VkStructureType sType;7136const void* pNext;7137VkPipelineViewportSwizzleStateCreateFlagsNV flags;7138uint32_t viewportCount;7139const VkViewportSwizzleNV* pViewportSwizzles;7140} VkPipelineViewportSwizzleStateCreateInfoNV;7141714271437144#define VK_EXT_discard_rectangles 17145#define VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION 17146#define VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME "VK_EXT_discard_rectangles"714771487149typedef enum VkDiscardRectangleModeEXT {7150VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT = 0,7151VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT = 1,7152VK_DISCARD_RECTANGLE_MODE_BEGIN_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT,7153VK_DISCARD_RECTANGLE_MODE_END_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT,7154VK_DISCARD_RECTANGLE_MODE_RANGE_SIZE_EXT = (VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT - VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT + 1),7155VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT = 0x7FFFFFFF7156} VkDiscardRectangleModeEXT;71577158typedef VkFlags VkPipelineDiscardRectangleStateCreateFlagsEXT;71597160typedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT {7161VkStructureType sType;7162void* pNext;7163uint32_t maxDiscardRectangles;7164} VkPhysicalDeviceDiscardRectanglePropertiesEXT;71657166typedef struct VkPipelineDiscardRectangleStateCreateInfoEXT {7167VkStructureType sType;7168const void* pNext;7169VkPipelineDiscardRectangleStateCreateFlagsEXT flags;7170VkDiscardRectangleModeEXT discardRectangleMode;7171uint32_t discardRectangleCount;7172const VkRect2D* pDiscardRectangles;7173} VkPipelineDiscardRectangleStateCreateInfoEXT;717471757176typedef void (VKAPI_PTR *PFN_vkCmdSetDiscardRectangleEXT)(VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles);71777178#ifndef VK_NO_PROTOTYPES7179VKAPI_ATTR void VKAPI_CALL vkCmdSetDiscardRectangleEXT(7180VkCommandBuffer commandBuffer,7181uint32_t firstDiscardRectangle,7182uint32_t discardRectangleCount,7183const VkRect2D* pDiscardRectangles);7184#endif71857186#define VK_EXT_conservative_rasterization 17187#define VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION 17188#define VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME "VK_EXT_conservative_rasterization"718971907191typedef enum VkConservativeRasterizationModeEXT {7192VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT = 0,7193VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT = 1,7194VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT = 2,7195VK_CONSERVATIVE_RASTERIZATION_MODE_BEGIN_RANGE_EXT = VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT,7196VK_CONSERVATIVE_RASTERIZATION_MODE_END_RANGE_EXT = VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT,7197VK_CONSERVATIVE_RASTERIZATION_MODE_RANGE_SIZE_EXT = (VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT - VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT + 1),7198VK_CONSERVATIVE_RASTERIZATION_MODE_MAX_ENUM_EXT = 0x7FFFFFFF7199} VkConservativeRasterizationModeEXT;72007201typedef VkFlags VkPipelineRasterizationConservativeStateCreateFlagsEXT;72027203typedef struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT {7204VkStructureType sType;7205void* pNext;7206float primitiveOverestimationSize;7207float maxExtraPrimitiveOverestimationSize;7208float extraPrimitiveOverestimationSizeGranularity;7209VkBool32 primitiveUnderestimation;7210VkBool32 conservativePointAndLineRasterization;7211VkBool32 degenerateTrianglesRasterized;7212VkBool32 degenerateLinesRasterized;7213VkBool32 fullyCoveredFragmentShaderInputVariable;7214VkBool32 conservativeRasterizationPostDepthCoverage;7215} VkPhysicalDeviceConservativeRasterizationPropertiesEXT;72167217typedef struct VkPipelineRasterizationConservativeStateCreateInfoEXT {7218VkStructureType sType;7219const void* pNext;7220VkPipelineRasterizationConservativeStateCreateFlagsEXT flags;7221VkConservativeRasterizationModeEXT conservativeRasterizationMode;7222float extraPrimitiveOverestimationSize;7223} VkPipelineRasterizationConservativeStateCreateInfoEXT;7224722572267227#define VK_EXT_swapchain_colorspace 17228#define VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION 37229#define VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME "VK_EXT_swapchain_colorspace"723072317232#define VK_EXT_hdr_metadata 17233#define VK_EXT_HDR_METADATA_SPEC_VERSION 17234#define VK_EXT_HDR_METADATA_EXTENSION_NAME "VK_EXT_hdr_metadata"72357236typedef struct VkXYColorEXT {7237float x;7238float y;7239} VkXYColorEXT;72407241typedef struct VkHdrMetadataEXT {7242VkStructureType sType;7243const void* pNext;7244VkXYColorEXT displayPrimaryRed;7245VkXYColorEXT displayPrimaryGreen;7246VkXYColorEXT displayPrimaryBlue;7247VkXYColorEXT whitePoint;7248float maxLuminance;7249float minLuminance;7250float maxContentLightLevel;7251float maxFrameAverageLightLevel;7252} VkHdrMetadataEXT;725372547255typedef void (VKAPI_PTR *PFN_vkSetHdrMetadataEXT)(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata);72567257#ifndef VK_NO_PROTOTYPES7258VKAPI_ATTR void VKAPI_CALL vkSetHdrMetadataEXT(7259VkDevice device,7260uint32_t swapchainCount,7261const VkSwapchainKHR* pSwapchains,7262const VkHdrMetadataEXT* pMetadata);7263#endif72647265#define VK_EXT_external_memory_dma_buf 17266#define VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION 17267#define VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME "VK_EXT_external_memory_dma_buf"726872697270#define VK_EXT_queue_family_foreign 17271#define VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION 17272#define VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME "VK_EXT_queue_family_foreign"7273#define VK_QUEUE_FAMILY_FOREIGN_EXT (~0U-2)727472757276#define VK_EXT_debug_utils 17277VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugUtilsMessengerEXT)72787279#define VK_EXT_DEBUG_UTILS_SPEC_VERSION 17280#define VK_EXT_DEBUG_UTILS_EXTENSION_NAME "VK_EXT_debug_utils"72817282typedef VkFlags VkDebugUtilsMessengerCallbackDataFlagsEXT;7283typedef VkFlags VkDebugUtilsMessengerCreateFlagsEXT;72847285typedef enum VkDebugUtilsMessageSeverityFlagBitsEXT {7286VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT = 0x00000001,7287VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT = 0x00000010,7288VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT = 0x00000100,7289VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT = 0x00001000,7290VK_DEBUG_UTILS_MESSAGE_SEVERITY_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF7291} VkDebugUtilsMessageSeverityFlagBitsEXT;7292typedef VkFlags VkDebugUtilsMessageSeverityFlagsEXT;72937294typedef enum VkDebugUtilsMessageTypeFlagBitsEXT {7295VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = 0x00000001,7296VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = 0x00000002,7297VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = 0x00000004,7298VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF7299} VkDebugUtilsMessageTypeFlagBitsEXT;7300typedef VkFlags VkDebugUtilsMessageTypeFlagsEXT;73017302typedef struct VkDebugUtilsObjectNameInfoEXT {7303VkStructureType sType;7304const void* pNext;7305VkObjectType objectType;7306uint64_t objectHandle;7307const char* pObjectName;7308} VkDebugUtilsObjectNameInfoEXT;73097310typedef struct VkDebugUtilsObjectTagInfoEXT {7311VkStructureType sType;7312const void* pNext;7313VkObjectType objectType;7314uint64_t objectHandle;7315uint64_t tagName;7316size_t tagSize;7317const void* pTag;7318} VkDebugUtilsObjectTagInfoEXT;73197320typedef struct VkDebugUtilsLabelEXT {7321VkStructureType sType;7322const void* pNext;7323const char* pLabelName;7324float color[4];7325} VkDebugUtilsLabelEXT;73267327typedef struct VkDebugUtilsMessengerCallbackDataEXT {7328VkStructureType sType;7329const void* pNext;7330VkDebugUtilsMessengerCallbackDataFlagsEXT flags;7331const char* pMessageIdName;7332int32_t messageIdNumber;7333const char* pMessage;7334uint32_t queueLabelCount;7335VkDebugUtilsLabelEXT* pQueueLabels;7336uint32_t cmdBufLabelCount;7337VkDebugUtilsLabelEXT* pCmdBufLabels;7338uint32_t objectCount;7339VkDebugUtilsObjectNameInfoEXT* pObjects;7340} VkDebugUtilsMessengerCallbackDataEXT;73417342typedef VkBool32 (VKAPI_PTR *PFN_vkDebugUtilsMessengerCallbackEXT)(7343VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,7344VkDebugUtilsMessageTypeFlagsEXT messageType,7345const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData,7346void* pUserData);73477348typedef struct VkDebugUtilsMessengerCreateInfoEXT {7349VkStructureType sType;7350const void* pNext;7351VkDebugUtilsMessengerCreateFlagsEXT flags;7352VkDebugUtilsMessageSeverityFlagsEXT messageSeverity;7353VkDebugUtilsMessageTypeFlagsEXT messageType;7354PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback;7355void* pUserData;7356} VkDebugUtilsMessengerCreateInfoEXT;735773587359typedef VkResult (VKAPI_PTR *PFN_vkSetDebugUtilsObjectNameEXT)(VkDevice device, const VkDebugUtilsObjectNameInfoEXT* pNameInfo);7360typedef VkResult (VKAPI_PTR *PFN_vkSetDebugUtilsObjectTagEXT)(VkDevice device, const VkDebugUtilsObjectTagInfoEXT* pTagInfo);7361typedef void (VKAPI_PTR *PFN_vkQueueBeginDebugUtilsLabelEXT)(VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo);7362typedef void (VKAPI_PTR *PFN_vkQueueEndDebugUtilsLabelEXT)(VkQueue queue);7363typedef void (VKAPI_PTR *PFN_vkQueueInsertDebugUtilsLabelEXT)(VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo);7364typedef void (VKAPI_PTR *PFN_vkCmdBeginDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo);7365typedef void (VKAPI_PTR *PFN_vkCmdEndDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer);7366typedef void (VKAPI_PTR *PFN_vkCmdInsertDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo);7367typedef VkResult (VKAPI_PTR *PFN_vkCreateDebugUtilsMessengerEXT)(VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugUtilsMessengerEXT* pMessenger);7368typedef void (VKAPI_PTR *PFN_vkDestroyDebugUtilsMessengerEXT)(VkInstance instance, VkDebugUtilsMessengerEXT messenger, const VkAllocationCallbacks* pAllocator);7369typedef void (VKAPI_PTR *PFN_vkSubmitDebugUtilsMessageEXT)(VkInstance instance, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageTypes, const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);73707371#ifndef VK_NO_PROTOTYPES7372VKAPI_ATTR VkResult VKAPI_CALL vkSetDebugUtilsObjectNameEXT(7373VkDevice device,7374const VkDebugUtilsObjectNameInfoEXT* pNameInfo);73757376VKAPI_ATTR VkResult VKAPI_CALL vkSetDebugUtilsObjectTagEXT(7377VkDevice device,7378const VkDebugUtilsObjectTagInfoEXT* pTagInfo);73797380VKAPI_ATTR void VKAPI_CALL vkQueueBeginDebugUtilsLabelEXT(7381VkQueue queue,7382const VkDebugUtilsLabelEXT* pLabelInfo);73837384VKAPI_ATTR void VKAPI_CALL vkQueueEndDebugUtilsLabelEXT(7385VkQueue queue);73867387VKAPI_ATTR void VKAPI_CALL vkQueueInsertDebugUtilsLabelEXT(7388VkQueue queue,7389const VkDebugUtilsLabelEXT* pLabelInfo);73907391VKAPI_ATTR void VKAPI_CALL vkCmdBeginDebugUtilsLabelEXT(7392VkCommandBuffer commandBuffer,7393const VkDebugUtilsLabelEXT* pLabelInfo);73947395VKAPI_ATTR void VKAPI_CALL vkCmdEndDebugUtilsLabelEXT(7396VkCommandBuffer commandBuffer);73977398VKAPI_ATTR void VKAPI_CALL vkCmdInsertDebugUtilsLabelEXT(7399VkCommandBuffer commandBuffer,7400const VkDebugUtilsLabelEXT* pLabelInfo);74017402VKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugUtilsMessengerEXT(7403VkInstance instance,7404const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo,7405const VkAllocationCallbacks* pAllocator,7406VkDebugUtilsMessengerEXT* pMessenger);74077408VKAPI_ATTR void VKAPI_CALL vkDestroyDebugUtilsMessengerEXT(7409VkInstance instance,7410VkDebugUtilsMessengerEXT messenger,7411const VkAllocationCallbacks* pAllocator);74127413VKAPI_ATTR void VKAPI_CALL vkSubmitDebugUtilsMessageEXT(7414VkInstance instance,7415VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,7416VkDebugUtilsMessageTypeFlagsEXT messageTypes,7417const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);7418#endif74197420#define VK_EXT_sampler_filter_minmax 17421#define VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION 17422#define VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME "VK_EXT_sampler_filter_minmax"742374247425typedef enum VkSamplerReductionModeEXT {7426VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT = 0,7427VK_SAMPLER_REDUCTION_MODE_MIN_EXT = 1,7428VK_SAMPLER_REDUCTION_MODE_MAX_EXT = 2,7429VK_SAMPLER_REDUCTION_MODE_BEGIN_RANGE_EXT = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT,7430VK_SAMPLER_REDUCTION_MODE_END_RANGE_EXT = VK_SAMPLER_REDUCTION_MODE_MAX_EXT,7431VK_SAMPLER_REDUCTION_MODE_RANGE_SIZE_EXT = (VK_SAMPLER_REDUCTION_MODE_MAX_EXT - VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT + 1),7432VK_SAMPLER_REDUCTION_MODE_MAX_ENUM_EXT = 0x7FFFFFFF7433} VkSamplerReductionModeEXT;74347435typedef struct VkSamplerReductionModeCreateInfoEXT {7436VkStructureType sType;7437const void* pNext;7438VkSamplerReductionModeEXT reductionMode;7439} VkSamplerReductionModeCreateInfoEXT;74407441typedef struct VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT {7442VkStructureType sType;7443void* pNext;7444VkBool32 filterMinmaxSingleComponentFormats;7445VkBool32 filterMinmaxImageComponentMapping;7446} VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT;7447744874497450#define VK_AMD_gpu_shader_int16 17451#define VK_AMD_GPU_SHADER_INT16_SPEC_VERSION 17452#define VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME "VK_AMD_gpu_shader_int16"745374547455#define VK_AMD_mixed_attachment_samples 17456#define VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION 17457#define VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME "VK_AMD_mixed_attachment_samples"745874597460#define VK_AMD_shader_fragment_mask 17461#define VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION 17462#define VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME "VK_AMD_shader_fragment_mask"746374647465#define VK_EXT_inline_uniform_block 17466#define VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION 17467#define VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME "VK_EXT_inline_uniform_block"74687469typedef struct VkPhysicalDeviceInlineUniformBlockFeaturesEXT {7470VkStructureType sType;7471void* pNext;7472VkBool32 inlineUniformBlock;7473VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind;7474} VkPhysicalDeviceInlineUniformBlockFeaturesEXT;74757476typedef struct VkPhysicalDeviceInlineUniformBlockPropertiesEXT {7477VkStructureType sType;7478void* pNext;7479uint32_t maxInlineUniformBlockSize;7480uint32_t maxPerStageDescriptorInlineUniformBlocks;7481uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;7482uint32_t maxDescriptorSetInlineUniformBlocks;7483uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks;7484} VkPhysicalDeviceInlineUniformBlockPropertiesEXT;74857486typedef struct VkWriteDescriptorSetInlineUniformBlockEXT {7487VkStructureType sType;7488const void* pNext;7489uint32_t dataSize;7490const void* pData;7491} VkWriteDescriptorSetInlineUniformBlockEXT;74927493typedef struct VkDescriptorPoolInlineUniformBlockCreateInfoEXT {7494VkStructureType sType;7495const void* pNext;7496uint32_t maxInlineUniformBlockBindings;7497} VkDescriptorPoolInlineUniformBlockCreateInfoEXT;7498749975007501#define VK_EXT_shader_stencil_export 17502#define VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION 17503#define VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME "VK_EXT_shader_stencil_export"750475057506#define VK_EXT_sample_locations 17507#define VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION 17508#define VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME "VK_EXT_sample_locations"75097510typedef struct VkSampleLocationEXT {7511float x;7512float y;7513} VkSampleLocationEXT;75147515typedef struct VkSampleLocationsInfoEXT {7516VkStructureType sType;7517const void* pNext;7518VkSampleCountFlagBits sampleLocationsPerPixel;7519VkExtent2D sampleLocationGridSize;7520uint32_t sampleLocationsCount;7521const VkSampleLocationEXT* pSampleLocations;7522} VkSampleLocationsInfoEXT;75237524typedef struct VkAttachmentSampleLocationsEXT {7525uint32_t attachmentIndex;7526VkSampleLocationsInfoEXT sampleLocationsInfo;7527} VkAttachmentSampleLocationsEXT;75287529typedef struct VkSubpassSampleLocationsEXT {7530uint32_t subpassIndex;7531VkSampleLocationsInfoEXT sampleLocationsInfo;7532} VkSubpassSampleLocationsEXT;75337534typedef struct VkRenderPassSampleLocationsBeginInfoEXT {7535VkStructureType sType;7536const void* pNext;7537uint32_t attachmentInitialSampleLocationsCount;7538const VkAttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations;7539uint32_t postSubpassSampleLocationsCount;7540const VkSubpassSampleLocationsEXT* pPostSubpassSampleLocations;7541} VkRenderPassSampleLocationsBeginInfoEXT;75427543typedef struct VkPipelineSampleLocationsStateCreateInfoEXT {7544VkStructureType sType;7545const void* pNext;7546VkBool32 sampleLocationsEnable;7547VkSampleLocationsInfoEXT sampleLocationsInfo;7548} VkPipelineSampleLocationsStateCreateInfoEXT;75497550typedef struct VkPhysicalDeviceSampleLocationsPropertiesEXT {7551VkStructureType sType;7552void* pNext;7553VkSampleCountFlags sampleLocationSampleCounts;7554VkExtent2D maxSampleLocationGridSize;7555float sampleLocationCoordinateRange[2];7556uint32_t sampleLocationSubPixelBits;7557VkBool32 variableSampleLocations;7558} VkPhysicalDeviceSampleLocationsPropertiesEXT;75597560typedef struct VkMultisamplePropertiesEXT {7561VkStructureType sType;7562void* pNext;7563VkExtent2D maxSampleLocationGridSize;7564} VkMultisamplePropertiesEXT;756575667567typedef void (VKAPI_PTR *PFN_vkCmdSetSampleLocationsEXT)(VkCommandBuffer commandBuffer, const VkSampleLocationsInfoEXT* pSampleLocationsInfo);7568typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)(VkPhysicalDevice physicalDevice, VkSampleCountFlagBits samples, VkMultisamplePropertiesEXT* pMultisampleProperties);75697570#ifndef VK_NO_PROTOTYPES7571VKAPI_ATTR void VKAPI_CALL vkCmdSetSampleLocationsEXT(7572VkCommandBuffer commandBuffer,7573const VkSampleLocationsInfoEXT* pSampleLocationsInfo);75747575VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMultisamplePropertiesEXT(7576VkPhysicalDevice physicalDevice,7577VkSampleCountFlagBits samples,7578VkMultisamplePropertiesEXT* pMultisampleProperties);7579#endif75807581#define VK_EXT_blend_operation_advanced 17582#define VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION 27583#define VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME "VK_EXT_blend_operation_advanced"758475857586typedef enum VkBlendOverlapEXT {7587VK_BLEND_OVERLAP_UNCORRELATED_EXT = 0,7588VK_BLEND_OVERLAP_DISJOINT_EXT = 1,7589VK_BLEND_OVERLAP_CONJOINT_EXT = 2,7590VK_BLEND_OVERLAP_BEGIN_RANGE_EXT = VK_BLEND_OVERLAP_UNCORRELATED_EXT,7591VK_BLEND_OVERLAP_END_RANGE_EXT = VK_BLEND_OVERLAP_CONJOINT_EXT,7592VK_BLEND_OVERLAP_RANGE_SIZE_EXT = (VK_BLEND_OVERLAP_CONJOINT_EXT - VK_BLEND_OVERLAP_UNCORRELATED_EXT + 1),7593VK_BLEND_OVERLAP_MAX_ENUM_EXT = 0x7FFFFFFF7594} VkBlendOverlapEXT;75957596typedef struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT {7597VkStructureType sType;7598void* pNext;7599VkBool32 advancedBlendCoherentOperations;7600} VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT;76017602typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {7603VkStructureType sType;7604void* pNext;7605uint32_t advancedBlendMaxColorAttachments;7606VkBool32 advancedBlendIndependentBlend;7607VkBool32 advancedBlendNonPremultipliedSrcColor;7608VkBool32 advancedBlendNonPremultipliedDstColor;7609VkBool32 advancedBlendCorrelatedOverlap;7610VkBool32 advancedBlendAllOperations;7611} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;76127613typedef struct VkPipelineColorBlendAdvancedStateCreateInfoEXT {7614VkStructureType sType;7615const void* pNext;7616VkBool32 srcPremultiplied;7617VkBool32 dstPremultiplied;7618VkBlendOverlapEXT blendOverlap;7619} VkPipelineColorBlendAdvancedStateCreateInfoEXT;7620762176227623#define VK_NV_fragment_coverage_to_color 17624#define VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION 17625#define VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME "VK_NV_fragment_coverage_to_color"76267627typedef VkFlags VkPipelineCoverageToColorStateCreateFlagsNV;76287629typedef struct VkPipelineCoverageToColorStateCreateInfoNV {7630VkStructureType sType;7631const void* pNext;7632VkPipelineCoverageToColorStateCreateFlagsNV flags;7633VkBool32 coverageToColorEnable;7634uint32_t coverageToColorLocation;7635} VkPipelineCoverageToColorStateCreateInfoNV;7636763776387639#define VK_NV_framebuffer_mixed_samples 17640#define VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION 17641#define VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME "VK_NV_framebuffer_mixed_samples"764276437644typedef enum VkCoverageModulationModeNV {7645VK_COVERAGE_MODULATION_MODE_NONE_NV = 0,7646VK_COVERAGE_MODULATION_MODE_RGB_NV = 1,7647VK_COVERAGE_MODULATION_MODE_ALPHA_NV = 2,7648VK_COVERAGE_MODULATION_MODE_RGBA_NV = 3,7649VK_COVERAGE_MODULATION_MODE_BEGIN_RANGE_NV = VK_COVERAGE_MODULATION_MODE_NONE_NV,7650VK_COVERAGE_MODULATION_MODE_END_RANGE_NV = VK_COVERAGE_MODULATION_MODE_RGBA_NV,7651VK_COVERAGE_MODULATION_MODE_RANGE_SIZE_NV = (VK_COVERAGE_MODULATION_MODE_RGBA_NV - VK_COVERAGE_MODULATION_MODE_NONE_NV + 1),7652VK_COVERAGE_MODULATION_MODE_MAX_ENUM_NV = 0x7FFFFFFF7653} VkCoverageModulationModeNV;76547655typedef VkFlags VkPipelineCoverageModulationStateCreateFlagsNV;76567657typedef struct VkPipelineCoverageModulationStateCreateInfoNV {7658VkStructureType sType;7659const void* pNext;7660VkPipelineCoverageModulationStateCreateFlagsNV flags;7661VkCoverageModulationModeNV coverageModulationMode;7662VkBool32 coverageModulationTableEnable;7663uint32_t coverageModulationTableCount;7664const float* pCoverageModulationTable;7665} VkPipelineCoverageModulationStateCreateInfoNV;7666766776687669#define VK_NV_fill_rectangle 17670#define VK_NV_FILL_RECTANGLE_SPEC_VERSION 17671#define VK_NV_FILL_RECTANGLE_EXTENSION_NAME "VK_NV_fill_rectangle"767276737674#define VK_EXT_post_depth_coverage 17675#define VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION 17676#define VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME "VK_EXT_post_depth_coverage"767776787679#define VK_EXT_validation_cache 17680VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkValidationCacheEXT)76817682#define VK_EXT_VALIDATION_CACHE_SPEC_VERSION 17683#define VK_EXT_VALIDATION_CACHE_EXTENSION_NAME "VK_EXT_validation_cache"768476857686typedef enum VkValidationCacheHeaderVersionEXT {7687VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT = 1,7688VK_VALIDATION_CACHE_HEADER_VERSION_BEGIN_RANGE_EXT = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT,7689VK_VALIDATION_CACHE_HEADER_VERSION_END_RANGE_EXT = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT,7690VK_VALIDATION_CACHE_HEADER_VERSION_RANGE_SIZE_EXT = (VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT - VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT + 1),7691VK_VALIDATION_CACHE_HEADER_VERSION_MAX_ENUM_EXT = 0x7FFFFFFF7692} VkValidationCacheHeaderVersionEXT;76937694typedef VkFlags VkValidationCacheCreateFlagsEXT;76957696typedef struct VkValidationCacheCreateInfoEXT {7697VkStructureType sType;7698const void* pNext;7699VkValidationCacheCreateFlagsEXT flags;7700size_t initialDataSize;7701const void* pInitialData;7702} VkValidationCacheCreateInfoEXT;77037704typedef struct VkShaderModuleValidationCacheCreateInfoEXT {7705VkStructureType sType;7706const void* pNext;7707VkValidationCacheEXT validationCache;7708} VkShaderModuleValidationCacheCreateInfoEXT;770977107711typedef VkResult (VKAPI_PTR *PFN_vkCreateValidationCacheEXT)(VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkValidationCacheEXT* pValidationCache);7712typedef void (VKAPI_PTR *PFN_vkDestroyValidationCacheEXT)(VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator);7713typedef VkResult (VKAPI_PTR *PFN_vkMergeValidationCachesEXT)(VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const VkValidationCacheEXT* pSrcCaches);7714typedef VkResult (VKAPI_PTR *PFN_vkGetValidationCacheDataEXT)(VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData);77157716#ifndef VK_NO_PROTOTYPES7717VKAPI_ATTR VkResult VKAPI_CALL vkCreateValidationCacheEXT(7718VkDevice device,7719const VkValidationCacheCreateInfoEXT* pCreateInfo,7720const VkAllocationCallbacks* pAllocator,7721VkValidationCacheEXT* pValidationCache);77227723VKAPI_ATTR void VKAPI_CALL vkDestroyValidationCacheEXT(7724VkDevice device,7725VkValidationCacheEXT validationCache,7726const VkAllocationCallbacks* pAllocator);77277728VKAPI_ATTR VkResult VKAPI_CALL vkMergeValidationCachesEXT(7729VkDevice device,7730VkValidationCacheEXT dstCache,7731uint32_t srcCacheCount,7732const VkValidationCacheEXT* pSrcCaches);77337734VKAPI_ATTR VkResult VKAPI_CALL vkGetValidationCacheDataEXT(7735VkDevice device,7736VkValidationCacheEXT validationCache,7737size_t* pDataSize,7738void* pData);7739#endif77407741#define VK_EXT_descriptor_indexing 17742#define VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION 27743#define VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME "VK_EXT_descriptor_indexing"774477457746typedef enum VkDescriptorBindingFlagBitsEXT {7747VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT = 0x00000001,7748VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT = 0x00000002,7749VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT = 0x00000004,7750VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT = 0x00000008,7751VK_DESCRIPTOR_BINDING_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF7752} VkDescriptorBindingFlagBitsEXT;7753typedef VkFlags VkDescriptorBindingFlagsEXT;77547755typedef struct VkDescriptorSetLayoutBindingFlagsCreateInfoEXT {7756VkStructureType sType;7757const void* pNext;7758uint32_t bindingCount;7759const VkDescriptorBindingFlagsEXT* pBindingFlags;7760} VkDescriptorSetLayoutBindingFlagsCreateInfoEXT;77617762typedef struct VkPhysicalDeviceDescriptorIndexingFeaturesEXT {7763VkStructureType sType;7764void* pNext;7765VkBool32 shaderInputAttachmentArrayDynamicIndexing;7766VkBool32 shaderUniformTexelBufferArrayDynamicIndexing;7767VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;7768VkBool32 shaderUniformBufferArrayNonUniformIndexing;7769VkBool32 shaderSampledImageArrayNonUniformIndexing;7770VkBool32 shaderStorageBufferArrayNonUniformIndexing;7771VkBool32 shaderStorageImageArrayNonUniformIndexing;7772VkBool32 shaderInputAttachmentArrayNonUniformIndexing;7773VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;7774VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;7775VkBool32 descriptorBindingUniformBufferUpdateAfterBind;7776VkBool32 descriptorBindingSampledImageUpdateAfterBind;7777VkBool32 descriptorBindingStorageImageUpdateAfterBind;7778VkBool32 descriptorBindingStorageBufferUpdateAfterBind;7779VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;7780VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;7781VkBool32 descriptorBindingUpdateUnusedWhilePending;7782VkBool32 descriptorBindingPartiallyBound;7783VkBool32 descriptorBindingVariableDescriptorCount;7784VkBool32 runtimeDescriptorArray;7785} VkPhysicalDeviceDescriptorIndexingFeaturesEXT;77867787typedef struct VkPhysicalDeviceDescriptorIndexingPropertiesEXT {7788VkStructureType sType;7789void* pNext;7790uint32_t maxUpdateAfterBindDescriptorsInAllPools;7791VkBool32 shaderUniformBufferArrayNonUniformIndexingNative;7792VkBool32 shaderSampledImageArrayNonUniformIndexingNative;7793VkBool32 shaderStorageBufferArrayNonUniformIndexingNative;7794VkBool32 shaderStorageImageArrayNonUniformIndexingNative;7795VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative;7796VkBool32 robustBufferAccessUpdateAfterBind;7797VkBool32 quadDivergentImplicitLod;7798uint32_t maxPerStageDescriptorUpdateAfterBindSamplers;7799uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers;7800uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers;7801uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages;7802uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages;7803uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments;7804uint32_t maxPerStageUpdateAfterBindResources;7805uint32_t maxDescriptorSetUpdateAfterBindSamplers;7806uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers;7807uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;7808uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers;7809uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;7810uint32_t maxDescriptorSetUpdateAfterBindSampledImages;7811uint32_t maxDescriptorSetUpdateAfterBindStorageImages;7812uint32_t maxDescriptorSetUpdateAfterBindInputAttachments;7813} VkPhysicalDeviceDescriptorIndexingPropertiesEXT;78147815typedef struct VkDescriptorSetVariableDescriptorCountAllocateInfoEXT {7816VkStructureType sType;7817const void* pNext;7818uint32_t descriptorSetCount;7819const uint32_t* pDescriptorCounts;7820} VkDescriptorSetVariableDescriptorCountAllocateInfoEXT;78217822typedef struct VkDescriptorSetVariableDescriptorCountLayoutSupportEXT {7823VkStructureType sType;7824void* pNext;7825uint32_t maxVariableDescriptorCount;7826} VkDescriptorSetVariableDescriptorCountLayoutSupportEXT;7827782878297830#define VK_EXT_shader_viewport_index_layer 17831#define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION 17832#define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME "VK_EXT_shader_viewport_index_layer"783378347835#define VK_NV_shading_rate_image 17836#define VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION 37837#define VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME "VK_NV_shading_rate_image"783878397840typedef enum VkShadingRatePaletteEntryNV {7841VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV = 0,7842VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV = 1,7843VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV = 2,7844VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV = 3,7845VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV = 4,7846VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV = 5,7847VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV = 6,7848VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV = 7,7849VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV = 8,7850VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV = 9,7851VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV = 10,7852VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV = 11,7853VK_SHADING_RATE_PALETTE_ENTRY_BEGIN_RANGE_NV = VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV,7854VK_SHADING_RATE_PALETTE_ENTRY_END_RANGE_NV = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV,7855VK_SHADING_RATE_PALETTE_ENTRY_RANGE_SIZE_NV = (VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV - VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV + 1),7856VK_SHADING_RATE_PALETTE_ENTRY_MAX_ENUM_NV = 0x7FFFFFFF7857} VkShadingRatePaletteEntryNV;78587859typedef enum VkCoarseSampleOrderTypeNV {7860VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV = 0,7861VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV = 1,7862VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV = 2,7863VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV = 3,7864VK_COARSE_SAMPLE_ORDER_TYPE_BEGIN_RANGE_NV = VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV,7865VK_COARSE_SAMPLE_ORDER_TYPE_END_RANGE_NV = VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV,7866VK_COARSE_SAMPLE_ORDER_TYPE_RANGE_SIZE_NV = (VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV - VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV + 1),7867VK_COARSE_SAMPLE_ORDER_TYPE_MAX_ENUM_NV = 0x7FFFFFFF7868} VkCoarseSampleOrderTypeNV;78697870typedef struct VkShadingRatePaletteNV {7871uint32_t shadingRatePaletteEntryCount;7872const VkShadingRatePaletteEntryNV* pShadingRatePaletteEntries;7873} VkShadingRatePaletteNV;78747875typedef struct VkPipelineViewportShadingRateImageStateCreateInfoNV {7876VkStructureType sType;7877const void* pNext;7878VkBool32 shadingRateImageEnable;7879uint32_t viewportCount;7880const VkShadingRatePaletteNV* pShadingRatePalettes;7881} VkPipelineViewportShadingRateImageStateCreateInfoNV;78827883typedef struct VkPhysicalDeviceShadingRateImageFeaturesNV {7884VkStructureType sType;7885void* pNext;7886VkBool32 shadingRateImage;7887VkBool32 shadingRateCoarseSampleOrder;7888} VkPhysicalDeviceShadingRateImageFeaturesNV;78897890typedef struct VkPhysicalDeviceShadingRateImagePropertiesNV {7891VkStructureType sType;7892void* pNext;7893VkExtent2D shadingRateTexelSize;7894uint32_t shadingRatePaletteSize;7895uint32_t shadingRateMaxCoarseSamples;7896} VkPhysicalDeviceShadingRateImagePropertiesNV;78977898typedef struct VkCoarseSampleLocationNV {7899uint32_t pixelX;7900uint32_t pixelY;7901uint32_t sample;7902} VkCoarseSampleLocationNV;79037904typedef struct VkCoarseSampleOrderCustomNV {7905VkShadingRatePaletteEntryNV shadingRate;7906uint32_t sampleCount;7907uint32_t sampleLocationCount;7908const VkCoarseSampleLocationNV* pSampleLocations;7909} VkCoarseSampleOrderCustomNV;79107911typedef struct VkPipelineViewportCoarseSampleOrderStateCreateInfoNV {7912VkStructureType sType;7913const void* pNext;7914VkCoarseSampleOrderTypeNV sampleOrderType;7915uint32_t customSampleOrderCount;7916const VkCoarseSampleOrderCustomNV* pCustomSampleOrders;7917} VkPipelineViewportCoarseSampleOrderStateCreateInfoNV;791879197920typedef void (VKAPI_PTR *PFN_vkCmdBindShadingRateImageNV)(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout);7921typedef void (VKAPI_PTR *PFN_vkCmdSetViewportShadingRatePaletteNV)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkShadingRatePaletteNV* pShadingRatePalettes);7922typedef void (VKAPI_PTR *PFN_vkCmdSetCoarseSampleOrderNV)(VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);79237924#ifndef VK_NO_PROTOTYPES7925VKAPI_ATTR void VKAPI_CALL vkCmdBindShadingRateImageNV(7926VkCommandBuffer commandBuffer,7927VkImageView imageView,7928VkImageLayout imageLayout);79297930VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportShadingRatePaletteNV(7931VkCommandBuffer commandBuffer,7932uint32_t firstViewport,7933uint32_t viewportCount,7934const VkShadingRatePaletteNV* pShadingRatePalettes);79357936VKAPI_ATTR void VKAPI_CALL vkCmdSetCoarseSampleOrderNV(7937VkCommandBuffer commandBuffer,7938VkCoarseSampleOrderTypeNV sampleOrderType,7939uint32_t customSampleOrderCount,7940const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);7941#endif79427943#define VK_NVX_raytracing 17944VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureNVX)79457946#define VK_NVX_RAYTRACING_SPEC_VERSION 17947#define VK_NVX_RAYTRACING_EXTENSION_NAME "VK_NVX_raytracing"794879497950typedef enum VkGeometryTypeNVX {7951VK_GEOMETRY_TYPE_TRIANGLES_NVX = 0,7952VK_GEOMETRY_TYPE_AABBS_NVX = 1,7953VK_GEOMETRY_TYPE_BEGIN_RANGE_NVX = VK_GEOMETRY_TYPE_TRIANGLES_NVX,7954VK_GEOMETRY_TYPE_END_RANGE_NVX = VK_GEOMETRY_TYPE_AABBS_NVX,7955VK_GEOMETRY_TYPE_RANGE_SIZE_NVX = (VK_GEOMETRY_TYPE_AABBS_NVX - VK_GEOMETRY_TYPE_TRIANGLES_NVX + 1),7956VK_GEOMETRY_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF7957} VkGeometryTypeNVX;79587959typedef enum VkAccelerationStructureTypeNVX {7960VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NVX = 0,7961VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NVX = 1,7962VK_ACCELERATION_STRUCTURE_TYPE_BEGIN_RANGE_NVX = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NVX,7963VK_ACCELERATION_STRUCTURE_TYPE_END_RANGE_NVX = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NVX,7964VK_ACCELERATION_STRUCTURE_TYPE_RANGE_SIZE_NVX = (VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NVX - VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NVX + 1),7965VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF7966} VkAccelerationStructureTypeNVX;79677968typedef enum VkCopyAccelerationStructureModeNVX {7969VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NVX = 0,7970VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NVX = 1,7971VK_COPY_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_NVX = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NVX,7972VK_COPY_ACCELERATION_STRUCTURE_MODE_END_RANGE_NVX = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NVX,7973VK_COPY_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_NVX = (VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NVX - VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NVX + 1),7974VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_NVX = 0x7FFFFFFF7975} VkCopyAccelerationStructureModeNVX;797679777978typedef enum VkGeometryFlagBitsNVX {7979VK_GEOMETRY_OPAQUE_BIT_NVX = 0x00000001,7980VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NVX = 0x00000002,7981VK_GEOMETRY_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF7982} VkGeometryFlagBitsNVX;7983typedef VkFlags VkGeometryFlagsNVX;79847985typedef enum VkGeometryInstanceFlagBitsNVX {7986VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NVX = 0x00000001,7987VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_FLIP_WINDING_BIT_NVX = 0x00000002,7988VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NVX = 0x00000004,7989VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NVX = 0x00000008,7990VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF7991} VkGeometryInstanceFlagBitsNVX;7992typedef VkFlags VkGeometryInstanceFlagsNVX;79937994typedef enum VkBuildAccelerationStructureFlagBitsNVX {7995VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NVX = 0x00000001,7996VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NVX = 0x00000002,7997VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NVX = 0x00000004,7998VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NVX = 0x00000008,7999VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NVX = 0x00000010,8000VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF8001} VkBuildAccelerationStructureFlagBitsNVX;8002typedef VkFlags VkBuildAccelerationStructureFlagsNVX;80038004typedef struct VkRaytracingPipelineCreateInfoNVX {8005VkStructureType sType;8006const void* pNext;8007VkPipelineCreateFlags flags;8008uint32_t stageCount;8009const VkPipelineShaderStageCreateInfo* pStages;8010const uint32_t* pGroupNumbers;8011uint32_t maxRecursionDepth;8012VkPipelineLayout layout;8013VkPipeline basePipelineHandle;8014int32_t basePipelineIndex;8015} VkRaytracingPipelineCreateInfoNVX;80168017typedef struct VkGeometryTrianglesNVX {8018VkStructureType sType;8019const void* pNext;8020VkBuffer vertexData;8021VkDeviceSize vertexOffset;8022uint32_t vertexCount;8023VkDeviceSize vertexStride;8024VkFormat vertexFormat;8025VkBuffer indexData;8026VkDeviceSize indexOffset;8027uint32_t indexCount;8028VkIndexType indexType;8029VkBuffer transformData;8030VkDeviceSize transformOffset;8031} VkGeometryTrianglesNVX;80328033typedef struct VkGeometryAABBNVX {8034VkStructureType sType;8035const void* pNext;8036VkBuffer aabbData;8037uint32_t numAABBs;8038uint32_t stride;8039VkDeviceSize offset;8040} VkGeometryAABBNVX;80418042typedef struct VkGeometryDataNVX {8043VkGeometryTrianglesNVX triangles;8044VkGeometryAABBNVX aabbs;8045} VkGeometryDataNVX;80468047typedef struct VkGeometryNVX {8048VkStructureType sType;8049const void* pNext;8050VkGeometryTypeNVX geometryType;8051VkGeometryDataNVX geometry;8052VkGeometryFlagsNVX flags;8053} VkGeometryNVX;80548055typedef struct VkAccelerationStructureCreateInfoNVX {8056VkStructureType sType;8057const void* pNext;8058VkAccelerationStructureTypeNVX type;8059VkBuildAccelerationStructureFlagsNVX flags;8060VkDeviceSize compactedSize;8061uint32_t instanceCount;8062uint32_t geometryCount;8063const VkGeometryNVX* pGeometries;8064} VkAccelerationStructureCreateInfoNVX;80658066typedef struct VkBindAccelerationStructureMemoryInfoNVX {8067VkStructureType sType;8068const void* pNext;8069VkAccelerationStructureNVX accelerationStructure;8070VkDeviceMemory memory;8071VkDeviceSize memoryOffset;8072uint32_t deviceIndexCount;8073const uint32_t* pDeviceIndices;8074} VkBindAccelerationStructureMemoryInfoNVX;80758076typedef struct VkDescriptorAccelerationStructureInfoNVX {8077VkStructureType sType;8078const void* pNext;8079uint32_t accelerationStructureCount;8080const VkAccelerationStructureNVX* pAccelerationStructures;8081} VkDescriptorAccelerationStructureInfoNVX;80828083typedef struct VkAccelerationStructureMemoryRequirementsInfoNVX {8084VkStructureType sType;8085const void* pNext;8086VkAccelerationStructureNVX accelerationStructure;8087} VkAccelerationStructureMemoryRequirementsInfoNVX;80888089typedef struct VkPhysicalDeviceRaytracingPropertiesNVX {8090VkStructureType sType;8091void* pNext;8092uint32_t shaderHeaderSize;8093uint32_t maxRecursionDepth;8094uint32_t maxGeometryCount;8095} VkPhysicalDeviceRaytracingPropertiesNVX;809680978098typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureNVX)(VkDevice device, const VkAccelerationStructureCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNVX* pAccelerationStructure);8099typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureNVX)(VkDevice device, VkAccelerationStructureNVX accelerationStructure, const VkAllocationCallbacks* pAllocator);8100typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureMemoryRequirementsNVX)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNVX* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements);8101typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureScratchMemoryRequirementsNVX)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNVX* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements);8102typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryNVX)(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNVX* pBindInfos);8103typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureNVX)(VkCommandBuffer commandBuffer, VkAccelerationStructureTypeNVX type, uint32_t instanceCount, VkBuffer instanceData, VkDeviceSize instanceOffset, uint32_t geometryCount, const VkGeometryNVX* pGeometries, VkBuildAccelerationStructureFlagsNVX flags, VkBool32 update, VkAccelerationStructureNVX dst, VkAccelerationStructureNVX src, VkBuffer scratch, VkDeviceSize scratchOffset);8104typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureNVX)(VkCommandBuffer commandBuffer, VkAccelerationStructureNVX dst, VkAccelerationStructureNVX src, VkCopyAccelerationStructureModeNVX mode);8105typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysNVX)(VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, uint32_t width, uint32_t height);8106typedef VkResult (VKAPI_PTR *PFN_vkCreateRaytracingPipelinesNVX)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRaytracingPipelineCreateInfoNVX* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);8107typedef VkResult (VKAPI_PTR *PFN_vkGetRaytracingShaderHandlesNVX)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData);8108typedef VkResult (VKAPI_PTR *PFN_vkGetAccelerationStructureHandleNVX)(VkDevice device, VkAccelerationStructureNVX accelerationStructure, size_t dataSize, void* pData);8109typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructurePropertiesNVX)(VkCommandBuffer commandBuffer, VkAccelerationStructureNVX accelerationStructure, VkQueryType queryType, VkQueryPool queryPool, uint32_t query);8110typedef VkResult (VKAPI_PTR *PFN_vkCompileDeferredNVX)(VkDevice device, VkPipeline pipeline, uint32_t shader);81118112#ifndef VK_NO_PROTOTYPES8113VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureNVX(8114VkDevice device,8115const VkAccelerationStructureCreateInfoNVX* pCreateInfo,8116const VkAllocationCallbacks* pAllocator,8117VkAccelerationStructureNVX* pAccelerationStructure);81188119VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureNVX(8120VkDevice device,8121VkAccelerationStructureNVX accelerationStructure,8122const VkAllocationCallbacks* pAllocator);81238124VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsNVX(8125VkDevice device,8126const VkAccelerationStructureMemoryRequirementsInfoNVX* pInfo,8127VkMemoryRequirements2KHR* pMemoryRequirements);81288129VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureScratchMemoryRequirementsNVX(8130VkDevice device,8131const VkAccelerationStructureMemoryRequirementsInfoNVX* pInfo,8132VkMemoryRequirements2KHR* pMemoryRequirements);81338134VKAPI_ATTR VkResult VKAPI_CALL vkBindAccelerationStructureMemoryNVX(8135VkDevice device,8136uint32_t bindInfoCount,8137const VkBindAccelerationStructureMemoryInfoNVX* pBindInfos);81388139VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureNVX(8140VkCommandBuffer commandBuffer,8141VkAccelerationStructureTypeNVX type,8142uint32_t instanceCount,8143VkBuffer instanceData,8144VkDeviceSize instanceOffset,8145uint32_t geometryCount,8146const VkGeometryNVX* pGeometries,8147VkBuildAccelerationStructureFlagsNVX flags,8148VkBool32 update,8149VkAccelerationStructureNVX dst,8150VkAccelerationStructureNVX src,8151VkBuffer scratch,8152VkDeviceSize scratchOffset);81538154VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureNVX(8155VkCommandBuffer commandBuffer,8156VkAccelerationStructureNVX dst,8157VkAccelerationStructureNVX src,8158VkCopyAccelerationStructureModeNVX mode);81598160VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysNVX(8161VkCommandBuffer commandBuffer,8162VkBuffer raygenShaderBindingTableBuffer,8163VkDeviceSize raygenShaderBindingOffset,8164VkBuffer missShaderBindingTableBuffer,8165VkDeviceSize missShaderBindingOffset,8166VkDeviceSize missShaderBindingStride,8167VkBuffer hitShaderBindingTableBuffer,8168VkDeviceSize hitShaderBindingOffset,8169VkDeviceSize hitShaderBindingStride,8170uint32_t width,8171uint32_t height);81728173VKAPI_ATTR VkResult VKAPI_CALL vkCreateRaytracingPipelinesNVX(8174VkDevice device,8175VkPipelineCache pipelineCache,8176uint32_t createInfoCount,8177const VkRaytracingPipelineCreateInfoNVX* pCreateInfos,8178const VkAllocationCallbacks* pAllocator,8179VkPipeline* pPipelines);81808181VKAPI_ATTR VkResult VKAPI_CALL vkGetRaytracingShaderHandlesNVX(8182VkDevice device,8183VkPipeline pipeline,8184uint32_t firstGroup,8185uint32_t groupCount,8186size_t dataSize,8187void* pData);81888189VKAPI_ATTR VkResult VKAPI_CALL vkGetAccelerationStructureHandleNVX(8190VkDevice device,8191VkAccelerationStructureNVX accelerationStructure,8192size_t dataSize,8193void* pData);81948195VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructurePropertiesNVX(8196VkCommandBuffer commandBuffer,8197VkAccelerationStructureNVX accelerationStructure,8198VkQueryType queryType,8199VkQueryPool queryPool,8200uint32_t query);82018202VKAPI_ATTR VkResult VKAPI_CALL vkCompileDeferredNVX(8203VkDevice device,8204VkPipeline pipeline,8205uint32_t shader);8206#endif82078208#define VK_NV_representative_fragment_test 18209#define VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION 18210#define VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME "VK_NV_representative_fragment_test"82118212typedef struct VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV {8213VkStructureType sType;8214void* pNext;8215VkBool32 representativeFragmentTest;8216} VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV;82178218typedef struct VkPipelineRepresentativeFragmentTestStateCreateInfoNV {8219VkStructureType sType;8220const void* pNext;8221VkBool32 representativeFragmentTestEnable;8222} VkPipelineRepresentativeFragmentTestStateCreateInfoNV;8223822482258226#define VK_EXT_global_priority 18227#define VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION 28228#define VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME "VK_EXT_global_priority"822982308231typedef enum VkQueueGlobalPriorityEXT {8232VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT = 128,8233VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT = 256,8234VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT = 512,8235VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT = 1024,8236VK_QUEUE_GLOBAL_PRIORITY_BEGIN_RANGE_EXT = VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT,8237VK_QUEUE_GLOBAL_PRIORITY_END_RANGE_EXT = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT,8238VK_QUEUE_GLOBAL_PRIORITY_RANGE_SIZE_EXT = (VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT - VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT + 1),8239VK_QUEUE_GLOBAL_PRIORITY_MAX_ENUM_EXT = 0x7FFFFFFF8240} VkQueueGlobalPriorityEXT;82418242typedef struct VkDeviceQueueGlobalPriorityCreateInfoEXT {8243VkStructureType sType;8244const void* pNext;8245VkQueueGlobalPriorityEXT globalPriority;8246} VkDeviceQueueGlobalPriorityCreateInfoEXT;8247824882498250#define VK_EXT_external_memory_host 18251#define VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION 18252#define VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME "VK_EXT_external_memory_host"82538254typedef struct VkImportMemoryHostPointerInfoEXT {8255VkStructureType sType;8256const void* pNext;8257VkExternalMemoryHandleTypeFlagBits handleType;8258void* pHostPointer;8259} VkImportMemoryHostPointerInfoEXT;82608261typedef struct VkMemoryHostPointerPropertiesEXT {8262VkStructureType sType;8263void* pNext;8264uint32_t memoryTypeBits;8265} VkMemoryHostPointerPropertiesEXT;82668267typedef struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT {8268VkStructureType sType;8269void* pNext;8270VkDeviceSize minImportedHostPointerAlignment;8271} VkPhysicalDeviceExternalMemoryHostPropertiesEXT;827282738274typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryHostPointerPropertiesEXT)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);82758276#ifndef VK_NO_PROTOTYPES8277VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryHostPointerPropertiesEXT(8278VkDevice device,8279VkExternalMemoryHandleTypeFlagBits handleType,8280const void* pHostPointer,8281VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);8282#endif82838284#define VK_AMD_buffer_marker 18285#define VK_AMD_BUFFER_MARKER_SPEC_VERSION 18286#define VK_AMD_BUFFER_MARKER_EXTENSION_NAME "VK_AMD_buffer_marker"82878288typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarkerAMD)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker);82898290#ifndef VK_NO_PROTOTYPES8291VKAPI_ATTR void VKAPI_CALL vkCmdWriteBufferMarkerAMD(8292VkCommandBuffer commandBuffer,8293VkPipelineStageFlagBits pipelineStage,8294VkBuffer dstBuffer,8295VkDeviceSize dstOffset,8296uint32_t marker);8297#endif82988299#define VK_AMD_shader_core_properties 18300#define VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION 18301#define VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME "VK_AMD_shader_core_properties"83028303typedef struct VkPhysicalDeviceShaderCorePropertiesAMD {8304VkStructureType sType;8305void* pNext;8306uint32_t shaderEngineCount;8307uint32_t shaderArraysPerEngineCount;8308uint32_t computeUnitsPerShaderArray;8309uint32_t simdPerComputeUnit;8310uint32_t wavefrontsPerSimd;8311uint32_t wavefrontSize;8312uint32_t sgprsPerSimd;8313uint32_t minSgprAllocation;8314uint32_t maxSgprAllocation;8315uint32_t sgprAllocationGranularity;8316uint32_t vgprsPerSimd;8317uint32_t minVgprAllocation;8318uint32_t maxVgprAllocation;8319uint32_t vgprAllocationGranularity;8320} VkPhysicalDeviceShaderCorePropertiesAMD;8321832283238324#define VK_EXT_vertex_attribute_divisor 18325#define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION 38326#define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME "VK_EXT_vertex_attribute_divisor"83278328typedef struct VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT {8329VkStructureType sType;8330void* pNext;8331uint32_t maxVertexAttribDivisor;8332} VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT;83338334typedef struct VkVertexInputBindingDivisorDescriptionEXT {8335uint32_t binding;8336uint32_t divisor;8337} VkVertexInputBindingDivisorDescriptionEXT;83388339typedef struct VkPipelineVertexInputDivisorStateCreateInfoEXT {8340VkStructureType sType;8341const void* pNext;8342uint32_t vertexBindingDivisorCount;8343const VkVertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors;8344} VkPipelineVertexInputDivisorStateCreateInfoEXT;83458346typedef struct VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT {8347VkStructureType sType;8348void* pNext;8349VkBool32 vertexAttributeInstanceRateDivisor;8350VkBool32 vertexAttributeInstanceRateZeroDivisor;8351} VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT;8352835383548355#define VK_NV_shader_subgroup_partitioned 18356#define VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION 18357#define VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME "VK_NV_shader_subgroup_partitioned"835883598360#define VK_NV_compute_shader_derivatives 18361#define VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION 18362#define VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME "VK_NV_compute_shader_derivatives"83638364typedef struct VkPhysicalDeviceComputeShaderDerivativesFeaturesNV {8365VkStructureType sType;8366void* pNext;8367VkBool32 computeDerivativeGroupQuads;8368VkBool32 computeDerivativeGroupLinear;8369} VkPhysicalDeviceComputeShaderDerivativesFeaturesNV;8370837183728373#define VK_NV_mesh_shader 18374#define VK_NV_MESH_SHADER_SPEC_VERSION 18375#define VK_NV_MESH_SHADER_EXTENSION_NAME "VK_NV_mesh_shader"83768377typedef struct VkPhysicalDeviceMeshShaderFeaturesNV {8378VkStructureType sType;8379void* pNext;8380VkBool32 taskShader;8381VkBool32 meshShader;8382} VkPhysicalDeviceMeshShaderFeaturesNV;83838384typedef struct VkPhysicalDeviceMeshShaderPropertiesNV {8385VkStructureType sType;8386void* pNext;8387uint32_t maxDrawMeshTasksCount;8388uint32_t maxTaskWorkGroupInvocations;8389uint32_t maxTaskWorkGroupSize[3];8390uint32_t maxTaskTotalMemorySize;8391uint32_t maxTaskOutputCount;8392uint32_t maxMeshWorkGroupInvocations;8393uint32_t maxMeshWorkGroupSize[3];8394uint32_t maxMeshTotalMemorySize;8395uint32_t maxMeshOutputVertices;8396uint32_t maxMeshOutputPrimitives;8397uint32_t maxMeshMultiviewViewCount;8398uint32_t meshOutputPerVertexGranularity;8399uint32_t meshOutputPerPrimitiveGranularity;8400} VkPhysicalDeviceMeshShaderPropertiesNV;84018402typedef struct VkDrawMeshTasksIndirectCommandNV {8403uint32_t taskCount;8404uint32_t firstTask;8405} VkDrawMeshTasksIndirectCommandNV;840684078408typedef void (VKAPI_PTR *PFN_vkCmdDrawMeshTasksNV)(VkCommandBuffer commandBuffer, uint32_t taskCount, uint32_t firstTask);8409typedef void (VKAPI_PTR *PFN_vkCmdDrawMeshTasksIndirectNV)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);8410typedef void (VKAPI_PTR *PFN_vkCmdDrawMeshTasksIndirectCountNV)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);84118412#ifndef VK_NO_PROTOTYPES8413VKAPI_ATTR void VKAPI_CALL vkCmdDrawMeshTasksNV(8414VkCommandBuffer commandBuffer,8415uint32_t taskCount,8416uint32_t firstTask);84178418VKAPI_ATTR void VKAPI_CALL vkCmdDrawMeshTasksIndirectNV(8419VkCommandBuffer commandBuffer,8420VkBuffer buffer,8421VkDeviceSize offset,8422uint32_t drawCount,8423uint32_t stride);84248425VKAPI_ATTR void VKAPI_CALL vkCmdDrawMeshTasksIndirectCountNV(8426VkCommandBuffer commandBuffer,8427VkBuffer buffer,8428VkDeviceSize offset,8429VkBuffer countBuffer,8430VkDeviceSize countBufferOffset,8431uint32_t maxDrawCount,8432uint32_t stride);8433#endif84348435#define VK_NV_fragment_shader_barycentric 18436#define VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION 18437#define VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME "VK_NV_fragment_shader_barycentric"84388439typedef struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV {8440VkStructureType sType;8441void* pNext;8442VkBool32 fragmentShaderBarycentric;8443} VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV;8444844584468447#define VK_NV_shader_image_footprint 18448#define VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION 18449#define VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME "VK_NV_shader_image_footprint"84508451typedef struct VkPhysicalDeviceShaderImageFootprintFeaturesNV {8452VkStructureType sType;8453void* pNext;8454VkBool32 imageFootprint;8455} VkPhysicalDeviceShaderImageFootprintFeaturesNV;8456845784588459#define VK_NV_scissor_exclusive 18460#define VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION 18461#define VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME "VK_NV_scissor_exclusive"84628463typedef struct VkPipelineViewportExclusiveScissorStateCreateInfoNV {8464VkStructureType sType;8465const void* pNext;8466uint32_t exclusiveScissorCount;8467const VkRect2D* pExclusiveScissors;8468} VkPipelineViewportExclusiveScissorStateCreateInfoNV;84698470typedef struct VkPhysicalDeviceExclusiveScissorFeaturesNV {8471VkStructureType sType;8472void* pNext;8473VkBool32 exclusiveScissor;8474} VkPhysicalDeviceExclusiveScissorFeaturesNV;847584768477typedef void (VKAPI_PTR *PFN_vkCmdSetExclusiveScissorNV)(VkCommandBuffer commandBuffer, uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const VkRect2D* pExclusiveScissors);84788479#ifndef VK_NO_PROTOTYPES8480VKAPI_ATTR void VKAPI_CALL vkCmdSetExclusiveScissorNV(8481VkCommandBuffer commandBuffer,8482uint32_t firstExclusiveScissor,8483uint32_t exclusiveScissorCount,8484const VkRect2D* pExclusiveScissors);8485#endif84868487#define VK_NV_device_diagnostic_checkpoints 18488#define VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION 28489#define VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME "VK_NV_device_diagnostic_checkpoints"84908491typedef struct VkQueueFamilyCheckpointPropertiesNV {8492VkStructureType sType;8493void* pNext;8494VkPipelineStageFlags checkpointExecutionStageMask;8495} VkQueueFamilyCheckpointPropertiesNV;84968497typedef struct VkCheckpointDataNV {8498VkStructureType sType;8499void* pNext;8500VkPipelineStageFlagBits stage;8501void* pCheckpointMarker;8502} VkCheckpointDataNV;850385048505typedef void (VKAPI_PTR *PFN_vkCmdSetCheckpointNV)(VkCommandBuffer commandBuffer, const void* pCheckpointMarker);8506typedef void (VKAPI_PTR *PFN_vkGetQueueCheckpointDataNV)(VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointDataNV* pCheckpointData);85078508#ifndef VK_NO_PROTOTYPES8509VKAPI_ATTR void VKAPI_CALL vkCmdSetCheckpointNV(8510VkCommandBuffer commandBuffer,8511const void* pCheckpointMarker);85128513VKAPI_ATTR void VKAPI_CALL vkGetQueueCheckpointDataNV(8514VkQueue queue,8515uint32_t* pCheckpointDataCount,8516VkCheckpointDataNV* pCheckpointData);8517#endif85188519#ifdef __cplusplus8520}8521#endif85228523#endif852485258526