vulkan.h revision edc88e78a30ca412a0a085a21f1fc1be7be5081f
12676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#ifndef VULKAN_H_ 22676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VULKAN_H_ 1 304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#ifdef __cplusplus 504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hallextern "C" { 604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall/* 9d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter** Copyright (c) 2015-2017 The Khronos Group Inc. 1004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** 112676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** Licensed under the Apache License, Version 2.0 (the "License"); 122676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** you may not use this file except in compliance with the License. 132676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** You may obtain a copy of the License at 1404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** 152676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** http://www.apache.org/licenses/LICENSE-2.0 1604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** 172676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** Unless required by applicable law or agreed to in writing, software 182676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** distributed under the License is distributed on an "AS IS" BASIS, 192676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 202676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** See the License for the specific language governing permissions and 212676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall** limitations under the License. 2204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall*/ 2304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall/* 2504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** This header is generated from the Khronos Vulkan XML API Registry. 2604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** 2704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall*/ 2804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#define VK_VERSION_1_0 1 3104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#include "vk_platform.h" 3204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#define VK_MAKE_VERSION(major, minor, patch) \ 34e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall (((major) << 22) | ((minor) << 12) | (patch)) 3504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 362676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall// 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. 372676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall//#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) 382676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 392676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall// Vulkan 1.0 version number 402676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0) 415ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 42e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22) 43e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff) 44e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff) 452676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall// Version of this file 4605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#define VK_HEADER_VERSION 49 472676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 485ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 49a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall#define VK_NULL_HANDLE 0 5005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 5104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 533fbc856120217247c72fb5ed88500000f3881c45Jesse Hall#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object; 5404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 56289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#if !defined(VK_DEFINE_NON_DISPATCHABLE_HANDLE) 5756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__) 583fbc856120217247c72fb5ed88500000f3881c45Jesse Hall #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object; 5904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#else 603fbc856120217247c72fb5ed88500000f3881c45Jesse Hall #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object; 6104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 62289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 6305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 6404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 665ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef uint32_t VkFlags; 67a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef uint32_t VkBool32; 685ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef uint64_t VkDeviceSize; 695ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef uint32_t VkSampleMask; 7004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallVK_DEFINE_HANDLE(VkInstance) 7204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallVK_DEFINE_HANDLE(VkPhysicalDevice) 7304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallVK_DEFINE_HANDLE(VkDevice) 7404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallVK_DEFINE_HANDLE(VkQueue) 753fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore) 763fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_HANDLE(VkCommandBuffer) 773fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFence) 783fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory) 793fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBuffer) 803fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage) 813fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkEvent) 823fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkQueryPool) 833fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferView) 843fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImageView) 853fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule) 863fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache) 873fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineLayout) 883fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass) 893fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipeline) 903fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSetLayout) 913fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler) 923fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool) 933fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet) 943fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer) 953fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool) 9604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 975ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_LOD_CLAMP_NONE 1000.0f 985ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_REMAINING_MIP_LEVELS (~0U) 995ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_REMAINING_ARRAY_LAYERS (~0U) 1005ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_WHOLE_SIZE (~0ULL) 1015ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_ATTACHMENT_UNUSED (~0U) 1025ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_TRUE 1 1035ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_FALSE 0 1045ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_QUEUE_FAMILY_IGNORED (~0U) 1055ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_SUBPASS_EXTERNAL (~0U) 10665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256 10765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall#define VK_UUID_SIZE 16 1085ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_MAX_MEMORY_TYPES 32 1095ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_MAX_MEMORY_HEAPS 16 11065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall#define VK_MAX_EXTENSION_NAME_SIZE 256 11165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall#define VK_MAX_DESCRIPTION_SIZE 256 1125ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 11304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 114543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Halltypedef enum VkPipelineCacheHeaderVersion { 115543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1, 116543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE, 117543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE, 118543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE = (VK_PIPELINE_CACHE_HEADER_VERSION_ONE - VK_PIPELINE_CACHE_HEADER_VERSION_ONE + 1), 119543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF 120543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall} VkPipelineCacheHeaderVersion; 121543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall 1223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkResult { 12304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SUCCESS = 0, 124a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_NOT_READY = 1, 125a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_TIMEOUT = 2, 126a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_EVENT_SET = 3, 127a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_EVENT_RESET = 4, 128a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_INCOMPLETE = 5, 1295ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_OUT_OF_HOST_MEMORY = -1, 1305ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_OUT_OF_DEVICE_MEMORY = -2, 13104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ERROR_INITIALIZATION_FAILED = -3, 1325ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_DEVICE_LOST = -4, 1335ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_MEMORY_MAP_FAILED = -5, 1345ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_LAYER_NOT_PRESENT = -6, 1355ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_EXTENSION_NOT_PRESENT = -7, 136606a54e194a5884c628130ba2eda1b3bfbc157d7Jesse Hall VK_ERROR_FEATURE_NOT_PRESENT = -8, 137606a54e194a5884c628130ba2eda1b3bfbc157d7Jesse Hall VK_ERROR_INCOMPATIBLE_DRIVER = -9, 138091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_ERROR_TOO_MANY_OBJECTS = -10, 139a9e5703e380d9d7f096d177adb792621a1e8d4baJesse Hall VK_ERROR_FORMAT_NOT_SUPPORTED = -11, 14056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VK_ERROR_FRAGMENTED_POOL = -12, 141bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_ERROR_SURFACE_LOST_KHR = -1000000000, 142563380d389732337a84e7455caa01ec955ebee30Jesse Hall VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = -1000000001, 143bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_SUBOPTIMAL_KHR = 1000001003, 144bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_ERROR_OUT_OF_DATE_KHR = -1000001004, 145bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001, 146543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_ERROR_VALIDATION_FAILED_EXT = -1000011001, 1472676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_ERROR_INVALID_SHADER_NV = -1000012000, 14877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_ERROR_OUT_OF_POOL_MEMORY_KHR = -1000069000, 149ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_ERROR_INVALID_EXTERNAL_HANDLE_KHX = -1000072003, 15056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VK_RESULT_BEGIN_RANGE = VK_ERROR_FRAGMENTED_POOL, 15104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_RESULT_END_RANGE = VK_INCOMPLETE, 15256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VK_RESULT_RANGE_SIZE = (VK_INCOMPLETE - VK_ERROR_FRAGMENTED_POOL + 1), 15304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_RESULT_MAX_ENUM = 0x7FFFFFFF 15404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkResult; 15504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1563e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkStructureType { 15704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STRUCTURE_TYPE_APPLICATION_INFO = 0, 158c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1, 159c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2, 160c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3, 161c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_SUBMIT_INFO = 4, 162f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5, 163c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6, 164c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7, 165c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8, 166c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9, 1675ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10, 168c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11, 169c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12, 170c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13, 171c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14, 172c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15, 173c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16, 1743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17, 1753e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18, 1763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19, 1773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 20, 1783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 21, 1793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 22, 1803e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO = 23, 1813e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 24, 1823e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 25, 1833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 26, 1843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 27, 1853e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 28, 1863e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 29, 1873e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 30, 1883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 31, 1893e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 32, 1903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33, 191f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO = 34, 1923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 35, 1933e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 36, 1943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 37, 1953e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 38, 1963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO = 39, 197f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO = 40, 1983dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO = 41, 1993dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO = 42, 2003dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43, 2013dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44, 2023dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45, 2033dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46, 2043dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = 47, 2053dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = 48, 206bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 1000001000, 207bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 1000001001, 208bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR = 1000002000, 209bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR = 1000002001, 210bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 1000003000, 211f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000, 212f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR = 1000005000, 213f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000, 214f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR = 1000007000, 215f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR = 1000008000, 216f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000, 2172676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT = 1000011000, 2182676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD = 1000018000, 2192676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT = 1000022000, 2202676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT = 1000022001, 2212676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT = 1000022002, 22256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV = 1000026000, 22356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV = 1000026001, 22456d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV = 1000026002, 225ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX = 1000053000, 226ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX = 1000053001, 227ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX = 1000053002, 228289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV = 1000056000, 229289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV = 1000056001, 230289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057000, 231289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057001, 232289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV = 1000058000, 2331194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR = 1000059000, 2341194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR = 1000059001, 2351194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR = 1000059002, 2361194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR = 1000059003, 2371194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR = 1000059004, 2381194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR = 1000059005, 2391194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR = 1000059006, 2401194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR = 1000059007, 2411194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR = 1000059008, 242ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHX = 1000060000, 243ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHX = 1000060001, 244ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHX = 1000060002, 245ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHX = 1000060003, 246ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHX = 1000060004, 247ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHX = 1000060005, 248ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHX = 1000060006, 249ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHX = 1000060007, 250ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHX = 1000060008, 251ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHX = 1000060009, 252ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHX = 1000060010, 253ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHX = 1000060011, 254ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHX = 1000060012, 255289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT = 1000061000, 25677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN = 1000062000, 257ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHX = 1000070000, 258ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHX = 1000070001, 259ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHX = 1000071000, 260ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHX = 1000071001, 261ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHX = 1000071002, 262ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHX = 1000071003, 263ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHX = 1000071004, 264ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHX = 1000072000, 265ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHX = 1000072001, 266ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHX = 1000072002, 267ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHX = 1000073000, 268ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHX = 1000073001, 269ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHX = 1000073002, 270ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHX = 1000074000, 271ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHX = 1000074001, 272ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHX = 1000075000, 273ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHX = 1000076000, 274ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHX = 1000076001, 275ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHX = 1000077000, 276ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHX = 1000078000, 277ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHX = 1000078001, 278ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHX = 1000078002, 279ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHX = 1000079000, 280ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR = 1000080000, 281889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000, 282ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR = 1000085000, 283289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX = 1000086000, 284289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX = 1000086001, 285289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX = 1000086002, 286289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX = 1000086003, 287289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX = 1000086004, 288289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX = 1000086005, 289ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV = 1000087000, 29077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT = 1000090000, 29177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT = 1000091000, 29277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT = 1000091001, 29377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT = 1000091002, 29477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT = 1000091003, 29514866bbeca1ebcda93f43a3352934889a9f37c2bIan Elliott VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE = 1000092000, 296ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX = 1000097000, 297ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV = 1000098000, 298ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT = 1000099000, 299ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT = 1000099001, 300fdc8ab300de5306a26b7d9c7f12fe3fff41dc913Jesse Hall VK_STRUCTURE_TYPE_HDR_METADATA_EXT = 1000105000, 301e2d3ee180a2521c8db03a9702cb2669735f239acChris Forbes VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000, 302e2d3ee180a2521c8db03a9702cb2669735f239acChris Forbes VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR = 1000119000, 303e2d3ee180a2521c8db03a9702cb2669735f239acChris Forbes VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001, 304e2d3ee180a2521c8db03a9702cb2669735f239acChris Forbes VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002, 305ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK = 1000122000, 306ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK = 1000123000, 30704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO, 308f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO, 309f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1), 31004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF 31104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStructureType; 31204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3133e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSystemAllocationScope { 3143e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0, 3153fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1, 3163fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2, 3173fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3, 3183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4, 3193e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND, 3203fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE, 3213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE = (VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND + 1), 3223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM = 0x7FFFFFFF 3233fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkSystemAllocationScope; 32403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 3253e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkInternalAllocationType { 3263fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0, 3273fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE, 3283fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_END_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE, 3293fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE = (VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE + 1), 3303fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM = 0x7FFFFFFF 3313fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkInternalAllocationType; 33204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFormat { 33404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_UNDEFINED = 0, 335f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R4G4_UNORM_PACK8 = 1, 336f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2, 337f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3, 338f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R5G6B5_UNORM_PACK16 = 4, 339f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B5G6R5_UNORM_PACK16 = 5, 340f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6, 341f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7, 342f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8, 34304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_UNORM = 9, 34404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SNORM = 10, 34504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_USCALED = 11, 34604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SSCALED = 12, 34704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_UINT = 13, 34804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SINT = 14, 34904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SRGB = 15, 35004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_UNORM = 16, 35104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SNORM = 17, 35204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_USCALED = 18, 35304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SSCALED = 19, 35404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_UINT = 20, 35504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SINT = 21, 35604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SRGB = 22, 35704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_UNORM = 23, 35804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SNORM = 24, 35904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_USCALED = 25, 36004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SSCALED = 26, 36104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_UINT = 27, 36204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SINT = 28, 36304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SRGB = 29, 364f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_UNORM = 30, 365f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SNORM = 31, 366f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_USCALED = 32, 367f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SSCALED = 33, 368f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_UINT = 34, 369f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SINT = 35, 370f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SRGB = 36, 371f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_UNORM = 37, 372f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SNORM = 38, 373f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_USCALED = 39, 374f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SSCALED = 40, 375f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_UINT = 41, 376f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SINT = 42, 377f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SRGB = 43, 378f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_UNORM = 44, 379f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SNORM = 45, 380f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_USCALED = 46, 381f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SSCALED = 47, 382f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_UINT = 48, 383f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SINT = 49, 384f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SRGB = 50, 385f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51, 386f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52, 387f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53, 388f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54, 389f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55, 390f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56, 391f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57, 392f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58, 393f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59, 394f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60, 395f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61, 396f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62, 397f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63, 398f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64, 399f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65, 400f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66, 401f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67, 402f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68, 403f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69, 404f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_UNORM = 70, 405f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SNORM = 71, 406f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_USCALED = 72, 407f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SSCALED = 73, 408f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_UINT = 74, 409f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SINT = 75, 410f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SFLOAT = 76, 411f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_UNORM = 77, 412f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SNORM = 78, 413f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_USCALED = 79, 414f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SSCALED = 80, 415f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_UINT = 81, 416f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SINT = 82, 417f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SFLOAT = 83, 418f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_UNORM = 84, 419f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SNORM = 85, 420f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_USCALED = 86, 421f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SSCALED = 87, 422f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_UINT = 88, 423f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SINT = 89, 424f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SFLOAT = 90, 425f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_UNORM = 91, 426f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SNORM = 92, 427f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_USCALED = 93, 428f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SSCALED = 94, 429f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_UINT = 95, 430f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SINT = 96, 431f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SFLOAT = 97, 432f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_UINT = 98, 433f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_SINT = 99, 434f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_SFLOAT = 100, 435f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_UINT = 101, 436f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_SINT = 102, 437f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_SFLOAT = 103, 438f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_UINT = 104, 439f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_SINT = 105, 440f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_SFLOAT = 106, 441f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_UINT = 107, 442f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_SINT = 108, 443f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_SFLOAT = 109, 444f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_UINT = 110, 445f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_SINT = 111, 446f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_SFLOAT = 112, 447f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_UINT = 113, 448f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_SINT = 114, 449f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_SFLOAT = 115, 450f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_UINT = 116, 451f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_SINT = 117, 452f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_SFLOAT = 118, 453f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_UINT = 119, 454f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_SINT = 120, 455f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_SFLOAT = 121, 456f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122, 457f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123, 458f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D16_UNORM = 124, 459f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_X8_D24_UNORM_PACK32 = 125, 460f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D32_SFLOAT = 126, 461f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_S8_UINT = 127, 462f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D16_UNORM_S8_UINT = 128, 463f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D24_UNORM_S8_UINT = 129, 464f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D32_SFLOAT_S8_UINT = 130, 465f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131, 466f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132, 467f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133, 468f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134, 469f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC2_UNORM_BLOCK = 135, 470f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC2_SRGB_BLOCK = 136, 471f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC3_UNORM_BLOCK = 137, 472f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC3_SRGB_BLOCK = 138, 473f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC4_UNORM_BLOCK = 139, 474f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC4_SNORM_BLOCK = 140, 475f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC5_UNORM_BLOCK = 141, 476f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC5_SNORM_BLOCK = 142, 477f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC6H_UFLOAT_BLOCK = 143, 478f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC6H_SFLOAT_BLOCK = 144, 479f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC7_UNORM_BLOCK = 145, 480f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC7_SRGB_BLOCK = 146, 481f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147, 482f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148, 483f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149, 484f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150, 485f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151, 486f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152, 487f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11_UNORM_BLOCK = 153, 488f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11_SNORM_BLOCK = 154, 489f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155, 490f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156, 491f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157, 492f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158, 493f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159, 494f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160, 495f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161, 496f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162, 497f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163, 498f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164, 499f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165, 500f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166, 501f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167, 502f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168, 503f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169, 504f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170, 505f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171, 506f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172, 507f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173, 508f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174, 509f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175, 510f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176, 511f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177, 512f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178, 513f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179, 514f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180, 515f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181, 516f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182, 517f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183, 518f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184, 519289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000, 520289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001, 521289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002, 522289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003, 523289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004, 524289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005, 525289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006, 526289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007, 52704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_BEGIN_RANGE = VK_FORMAT_UNDEFINED, 528f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_END_RANGE = VK_FORMAT_ASTC_12x12_SRGB_BLOCK, 529f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_RANGE_SIZE = (VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1), 53004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_MAX_ENUM = 0x7FFFFFFF 53104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormat; 53204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageType { 53404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_1D = 0, 53504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_2D = 1, 53604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_3D = 2, 53704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_BEGIN_RANGE = VK_IMAGE_TYPE_1D, 53804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_END_RANGE = VK_IMAGE_TYPE_3D, 5393fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_TYPE_RANGE_SIZE = (VK_IMAGE_TYPE_3D - VK_IMAGE_TYPE_1D + 1), 54004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_MAX_ENUM = 0x7FFFFFFF 54104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageType; 54204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5433e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageTiling { 544c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_OPTIMAL = 0, 545c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_LINEAR = 1, 546c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL, 547c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR, 5483fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_TILING_RANGE_SIZE = (VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1), 54904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF 55004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageTiling; 55104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5523e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPhysicalDeviceType { 55304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_OTHER = 0, 55404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1, 55504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2, 55604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3, 55704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_CPU = 4, 55804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE = VK_PHYSICAL_DEVICE_TYPE_OTHER, 55904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_END_RANGE = VK_PHYSICAL_DEVICE_TYPE_CPU, 5603fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE = (VK_PHYSICAL_DEVICE_TYPE_CPU - VK_PHYSICAL_DEVICE_TYPE_OTHER + 1), 56104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF 56204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceType; 56304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5643e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryType { 56504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_OCCLUSION = 0, 56604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_PIPELINE_STATISTICS = 1, 567a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VK_QUERY_TYPE_TIMESTAMP = 2, 56804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION, 569a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP, 5703fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1), 57104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF 57204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryType; 57304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSharingMode { 57504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_EXCLUSIVE = 0, 57604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_CONCURRENT = 1, 57704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_BEGIN_RANGE = VK_SHARING_MODE_EXCLUSIVE, 57804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_END_RANGE = VK_SHARING_MODE_CONCURRENT, 5793fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SHARING_MODE_RANGE_SIZE = (VK_SHARING_MODE_CONCURRENT - VK_SHARING_MODE_EXCLUSIVE + 1), 58004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_MAX_ENUM = 0x7FFFFFFF 58104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSharingMode; 58204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageLayout { 5845ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_UNDEFINED = 0, 5855ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_GENERAL = 1, 5865ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2, 5875ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3, 5885ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4, 5895ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5, 5903fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6, 5913fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7, 5925ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_PREINITIALIZED = 8, 593bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002, 594af3a1117ffa206a6e3143edf32c494b64e39f303Chris Forbes VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR = 1000111000, 5955ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_BEGIN_RANGE = VK_IMAGE_LAYOUT_UNDEFINED, 5965ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_END_RANGE = VK_IMAGE_LAYOUT_PREINITIALIZED, 5973fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_RANGE_SIZE = (VK_IMAGE_LAYOUT_PREINITIALIZED - VK_IMAGE_LAYOUT_UNDEFINED + 1), 5985ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_MAX_ENUM = 0x7FFFFFFF 5995ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkImageLayout; 60004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageViewType { 60204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_1D = 0, 60304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_2D = 1, 60404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_3D = 2, 60504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_CUBE = 3, 60604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4, 60704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5, 60804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6, 60904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_BEGIN_RANGE = VK_IMAGE_VIEW_TYPE_1D, 61004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_END_RANGE = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, 6113fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_VIEW_TYPE_RANGE_SIZE = (VK_IMAGE_VIEW_TYPE_CUBE_ARRAY - VK_IMAGE_VIEW_TYPE_1D + 1), 61204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_MAX_ENUM = 0x7FFFFFFF 61304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageViewType; 61404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkComponentSwizzle { 61665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_IDENTITY = 0, 61765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_ZERO = 1, 61865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_ONE = 2, 61965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_R = 3, 62065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_G = 4, 62165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_B = 5, 62265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_A = 6, 62365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_BEGIN_RANGE = VK_COMPONENT_SWIZZLE_IDENTITY, 62465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_END_RANGE = VK_COMPONENT_SWIZZLE_A, 62565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_RANGE_SIZE = (VK_COMPONENT_SWIZZLE_A - VK_COMPONENT_SWIZZLE_IDENTITY + 1), 62665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_MAX_ENUM = 0x7FFFFFFF 62765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkComponentSwizzle; 62804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6293e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkVertexInputRate { 63065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_VERTEX = 0, 63165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_INSTANCE = 1, 63265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_BEGIN_RANGE = VK_VERTEX_INPUT_RATE_VERTEX, 63365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_END_RANGE = VK_VERTEX_INPUT_RATE_INSTANCE, 63465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_RANGE_SIZE = (VK_VERTEX_INPUT_RATE_INSTANCE - VK_VERTEX_INPUT_RATE_VERTEX + 1), 63565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_MAX_ENUM = 0x7FFFFFFF 63665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkVertexInputRate; 63704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6383e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPrimitiveTopology { 63904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0, 64004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1, 64104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2, 64204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3, 64304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4, 64404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5, 6453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6, 6463fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7, 6473fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8, 6483fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9, 649091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10, 65004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE = VK_PRIMITIVE_TOPOLOGY_POINT_LIST, 651091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_END_RANGE = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST, 652091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE = (VK_PRIMITIVE_TOPOLOGY_PATCH_LIST - VK_PRIMITIVE_TOPOLOGY_POINT_LIST + 1), 65304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_MAX_ENUM = 0x7FFFFFFF 65404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPrimitiveTopology; 65504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6563e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPolygonMode { 65765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_FILL = 0, 65865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_LINE = 1, 65965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_POINT = 2, 66065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_BEGIN_RANGE = VK_POLYGON_MODE_FILL, 66165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_END_RANGE = VK_POLYGON_MODE_POINT, 66265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_RANGE_SIZE = (VK_POLYGON_MODE_POINT - VK_POLYGON_MODE_FILL + 1), 66365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_MAX_ENUM = 0x7FFFFFFF 66465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkPolygonMode; 66504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFrontFace { 6673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_COUNTER_CLOCKWISE = 0, 6683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_CLOCKWISE = 1, 6693fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_BEGIN_RANGE = VK_FRONT_FACE_COUNTER_CLOCKWISE, 6703fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_END_RANGE = VK_FRONT_FACE_CLOCKWISE, 6713fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_RANGE_SIZE = (VK_FRONT_FACE_CLOCKWISE - VK_FRONT_FACE_COUNTER_CLOCKWISE + 1), 67204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FRONT_FACE_MAX_ENUM = 0x7FFFFFFF 67304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFrontFace; 67404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6753e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCompareOp { 67604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_NEVER = 0, 67704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_LESS = 1, 67804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_EQUAL = 2, 6793fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_LESS_OR_EQUAL = 3, 68004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_GREATER = 4, 68104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_NOT_EQUAL = 5, 6823fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_GREATER_OR_EQUAL = 6, 68304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_ALWAYS = 7, 68404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_BEGIN_RANGE = VK_COMPARE_OP_NEVER, 68504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_END_RANGE = VK_COMPARE_OP_ALWAYS, 6863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_RANGE_SIZE = (VK_COMPARE_OP_ALWAYS - VK_COMPARE_OP_NEVER + 1), 68704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_MAX_ENUM = 0x7FFFFFFF 68804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkCompareOp; 68904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkStencilOp { 69104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_KEEP = 0, 69204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_ZERO = 1, 69304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_REPLACE = 2, 6943fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3, 6953fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4, 69604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_INVERT = 5, 6973fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_INCREMENT_AND_WRAP = 6, 6983fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_DECREMENT_AND_WRAP = 7, 69904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_BEGIN_RANGE = VK_STENCIL_OP_KEEP, 7003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_END_RANGE = VK_STENCIL_OP_DECREMENT_AND_WRAP, 7013fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_RANGE_SIZE = (VK_STENCIL_OP_DECREMENT_AND_WRAP - VK_STENCIL_OP_KEEP + 1), 70204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_MAX_ENUM = 0x7FFFFFFF 70304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStencilOp; 70404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkLogicOp { 70604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_CLEAR = 0, 70704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND = 1, 70804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND_REVERSE = 2, 70904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_COPY = 3, 71004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND_INVERTED = 4, 7113fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_NO_OP = 5, 71204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_XOR = 6, 71304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR = 7, 71404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_NOR = 8, 7153fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_EQUIVALENT = 9, 71604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_INVERT = 10, 71704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR_REVERSE = 11, 71804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_COPY_INVERTED = 12, 71904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR_INVERTED = 13, 72004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_NAND = 14, 72104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_SET = 15, 72204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_BEGIN_RANGE = VK_LOGIC_OP_CLEAR, 72304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_END_RANGE = VK_LOGIC_OP_SET, 7243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_RANGE_SIZE = (VK_LOGIC_OP_SET - VK_LOGIC_OP_CLEAR + 1), 72504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_MAX_ENUM = 0x7FFFFFFF 72604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkLogicOp; 72704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBlendFactor { 72965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ZERO = 0, 73065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE = 1, 73165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_COLOR = 2, 73265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3, 73365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_DST_COLOR = 4, 73465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5, 73565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_ALPHA = 6, 73665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7, 73765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_DST_ALPHA = 8, 73865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9, 73965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_CONSTANT_COLOR = 10, 74065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11, 74165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_CONSTANT_ALPHA = 12, 74265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13, 74365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14, 74465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC1_COLOR = 15, 74565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16, 74665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC1_ALPHA = 17, 74765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18, 74865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_BEGIN_RANGE = VK_BLEND_FACTOR_ZERO, 74965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_END_RANGE = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA, 75065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_RANGE_SIZE = (VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - VK_BLEND_FACTOR_ZERO + 1), 75165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_MAX_ENUM = 0x7FFFFFFF 75265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkBlendFactor; 75304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7543e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBlendOp { 75504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_ADD = 0, 75604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_SUBTRACT = 1, 75704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_REVERSE_SUBTRACT = 2, 75804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MIN = 3, 75904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MAX = 4, 76004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_BEGIN_RANGE = VK_BLEND_OP_ADD, 76104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_END_RANGE = VK_BLEND_OP_MAX, 7623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BLEND_OP_RANGE_SIZE = (VK_BLEND_OP_MAX - VK_BLEND_OP_ADD + 1), 76304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MAX_ENUM = 0x7FFFFFFF 76404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBlendOp; 76504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDynamicState { 7675ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_VIEWPORT = 0, 7685ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_SCISSOR = 1, 7695ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_LINE_WIDTH = 2, 7705ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_DEPTH_BIAS = 3, 7715ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4, 7725ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5, 7735ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6, 7745ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7, 7755ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8, 776ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000, 777ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000, 7785ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_BEGIN_RANGE = VK_DYNAMIC_STATE_VIEWPORT, 7795ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_END_RANGE = VK_DYNAMIC_STATE_STENCIL_REFERENCE, 7803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_DYNAMIC_STATE_RANGE_SIZE = (VK_DYNAMIC_STATE_STENCIL_REFERENCE - VK_DYNAMIC_STATE_VIEWPORT + 1), 7815ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF 7825ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkDynamicState; 7835ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 7843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFilter { 78523ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_NEAREST = 0, 78623ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_LINEAR = 1, 7872676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_FILTER_CUBIC_IMG = 1000015000, 78823ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST, 78923ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_END_RANGE = VK_FILTER_LINEAR, 7903fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1), 79123ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_MAX_ENUM = 0x7FFFFFFF 79223ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkFilter; 79304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSamplerMipmapMode { 7953dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_NEAREST = 0, 7963dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_LINEAR = 1, 7973dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE = VK_SAMPLER_MIPMAP_MODE_NEAREST, 79823ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_MIPMAP_MODE_END_RANGE = VK_SAMPLER_MIPMAP_MODE_LINEAR, 7993dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE = (VK_SAMPLER_MIPMAP_MODE_LINEAR - VK_SAMPLER_MIPMAP_MODE_NEAREST + 1), 80023ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_MIPMAP_MODE_MAX_ENUM = 0x7FFFFFFF 80123ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkSamplerMipmapMode; 80204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8033e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSamplerAddressMode { 804c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_REPEAT = 0, 805c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1, 806c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2, 807c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3, 808c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4, 809c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_REPEAT, 8102676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER, 8112676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE = (VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1), 81223ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF 81323ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkSamplerAddressMode; 81404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBorderColor { 81604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0, 81704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1, 81804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2, 81904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3, 82004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4, 82104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5, 82204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_BEGIN_RANGE = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK, 82304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_END_RANGE = VK_BORDER_COLOR_INT_OPAQUE_WHITE, 8243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BORDER_COLOR_RANGE_SIZE = (VK_BORDER_COLOR_INT_OPAQUE_WHITE - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK + 1), 82504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_MAX_ENUM = 0x7FFFFFFF 82604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBorderColor; 82704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDescriptorType { 82904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_SAMPLER = 0, 83004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1, 83104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2, 83204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3, 83304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4, 83404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5, 83504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6, 83604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7, 83704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8, 83804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9, 83904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10, 84004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER, 84104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, 8423fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1), 84304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF 84404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorType; 84504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8463e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentLoadOp { 84704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_LOAD = 0, 84804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_CLEAR = 1, 84904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2, 85004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE = VK_ATTACHMENT_LOAD_OP_LOAD, 85104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_END_RANGE = VK_ATTACHMENT_LOAD_OP_DONT_CARE, 8523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_ATTACHMENT_LOAD_OP_RANGE_SIZE = (VK_ATTACHMENT_LOAD_OP_DONT_CARE - VK_ATTACHMENT_LOAD_OP_LOAD + 1), 85304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_MAX_ENUM = 0x7FFFFFFF 85404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentLoadOp; 85504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8563e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentStoreOp { 85704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_STORE = 0, 85804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_DONT_CARE = 1, 85904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_BEGIN_RANGE = VK_ATTACHMENT_STORE_OP_STORE, 86004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_END_RANGE = VK_ATTACHMENT_STORE_OP_DONT_CARE, 8613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_ATTACHMENT_STORE_OP_RANGE_SIZE = (VK_ATTACHMENT_STORE_OP_DONT_CARE - VK_ATTACHMENT_STORE_OP_STORE + 1), 86204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF 86304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentStoreOp; 86404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8653e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPipelineBindPoint { 866c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_GRAPHICS = 0, 867c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_COMPUTE = 1, 868c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS, 869c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE, 8703fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1), 87104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF 87204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineBindPoint; 87304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferLevel { 8753fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0, 8763fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1, 8773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE = VK_COMMAND_BUFFER_LEVEL_PRIMARY, 8783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_END_RANGE = VK_COMMAND_BUFFER_LEVEL_SECONDARY, 8793fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE = (VK_COMMAND_BUFFER_LEVEL_SECONDARY - VK_COMMAND_BUFFER_LEVEL_PRIMARY + 1), 8803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_MAX_ENUM = 0x7FFFFFFF 8813fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferLevel; 88204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkIndexType { 88404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_UINT16 = 0, 88504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_UINT32 = 1, 88604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16, 88704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32, 8883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1), 88904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_MAX_ENUM = 0x7FFFFFFF 89004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkIndexType; 89104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSubpassContents { 89365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_INLINE = 0, 89465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1, 89565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_BEGIN_RANGE = VK_SUBPASS_CONTENTS_INLINE, 89665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_END_RANGE = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS, 89765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_RANGE_SIZE = (VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS - VK_SUBPASS_CONTENTS_INLINE + 1), 89865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF 89965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkSubpassContents; 90004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 90105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Halltypedef enum VkObjectType { 90205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_UNKNOWN = 0, 90305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_INSTANCE = 1, 90405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_PHYSICAL_DEVICE = 2, 90505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DEVICE = 3, 90605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_QUEUE = 4, 90705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_SEMAPHORE = 5, 90805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_COMMAND_BUFFER = 6, 90905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_FENCE = 7, 91005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DEVICE_MEMORY = 8, 91105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_BUFFER = 9, 91205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_IMAGE = 10, 91305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_EVENT = 11, 91405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_QUERY_POOL = 12, 91505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_BUFFER_VIEW = 13, 91605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_IMAGE_VIEW = 14, 91705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_SHADER_MODULE = 15, 91805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_PIPELINE_CACHE = 16, 91905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17, 92005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_RENDER_PASS = 18, 92105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_PIPELINE = 19, 92205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT = 20, 92305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_SAMPLER = 21, 92405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DESCRIPTOR_POOL = 22, 92505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DESCRIPTOR_SET = 23, 92605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_FRAMEBUFFER = 24, 92705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_COMMAND_POOL = 25, 92805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_SURFACE_KHR = 1000000000, 92905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_SWAPCHAIN_KHR = 1000001000, 93005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000, 93105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001, 93205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000, 93305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = 1000085000, 93405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_OBJECT_TABLE_NVX = 1000086000, 93505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX = 1000086001, 93605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_BEGIN_RANGE = VK_OBJECT_TYPE_UNKNOWN, 93705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_END_RANGE = VK_OBJECT_TYPE_COMMAND_POOL, 93805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_RANGE_SIZE = (VK_OBJECT_TYPE_COMMAND_POOL - VK_OBJECT_TYPE_UNKNOWN + 1), 93905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF 94005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall} VkObjectType; 94105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 942a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkInstanceCreateFlags; 94304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9443e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFormatFeatureFlagBits { 94504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 0x00000001, 94604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 0x00000002, 94704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004, 94804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008, 94904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 0x00000010, 95004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020, 95104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 0x00000040, 95204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 0x00000080, 95304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100, 95404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200, 9553fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400, 9563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800, 95733faaad096afbd0b103bd1284ce5b78cce74aa01Jesse Hall VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000, 9582676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000, 95977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = 0x00004000, 96077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = 0x00008000, 9612676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 96204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormatFeatureFlagBits; 96304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkFormatFeatureFlags; 96404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9653e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageUsageFlagBits { 9663fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 0x00000001, 9673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_USAGE_TRANSFER_DST_BIT = 0x00000002, 96804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_SAMPLED_BIT = 0x00000004, 96904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_STORAGE_BIT = 0x00000008, 97004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 0x00000010, 9715ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020, 97204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040, 97304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080, 9742676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 97504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageUsageFlagBits; 97604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkImageUsageFlags; 97704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageCreateFlagBits { 9795ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 0x00000001, 9805ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002, 9815ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 0x00000004, 9825ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 0x00000008, 9835ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 0x00000010, 984ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_IMAGE_CREATE_BIND_SFR_BIT_KHX = 0x00000040, 98577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR = 0x00000020, 9862676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 9875ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkImageCreateFlagBits; 9885ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkImageCreateFlags; 9895ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 9903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSampleCountFlagBits { 9915ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_1_BIT = 0x00000001, 9925ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_2_BIT = 0x00000002, 9935ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_4_BIT = 0x00000004, 9945ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_8_BIT = 0x00000008, 9955ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_16_BIT = 0x00000010, 9965ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_32_BIT = 0x00000020, 9975ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_64_BIT = 0x00000040, 9982676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 9995ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkSampleCountFlagBits; 10005ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkSampleCountFlags; 10015ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 10023e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueueFlagBits { 100304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUEUE_GRAPHICS_BIT = 0x00000001, 100404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUEUE_COMPUTE_BIT = 0x00000002, 100565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_QUEUE_TRANSFER_BIT = 0x00000004, 1006b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008, 10072676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 100804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueueFlagBits; 100904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueueFlags; 101004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkMemoryPropertyFlagBits { 1012d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001, 1013d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002, 1014d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004, 1015d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008, 1016d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010, 10172676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 101804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryPropertyFlagBits; 101904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryPropertyFlags; 102004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkMemoryHeapFlagBits { 1022d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 0x00000001, 1023ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX = 0x00000002, 10242676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 102504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryHeapFlagBits; 102604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryHeapFlags; 1027a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDeviceCreateFlags; 1028a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDeviceQueueCreateFlags; 1029543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall 1030543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Halltypedef enum VkPipelineStageFlagBits { 1031543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 0x00000001, 1032543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 0x00000002, 1033543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 0x00000004, 1034543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 0x00000008, 1035543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010, 1036543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020, 1037543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 0x00000040, 1038543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 0x00000080, 1039543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 0x00000100, 1040543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 0x00000200, 1041543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400, 1042543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 0x00000800, 1043543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TRANSFER_BIT = 0x00001000, 1044543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 0x00002000, 1045543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_HOST_BIT = 0x00004000, 1046543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000, 1047543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000, 1048289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000, 10492676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1050543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall} VkPipelineStageFlagBits; 1051543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Halltypedef VkFlags VkPipelineStageFlags; 105204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryMapFlags; 105304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10543e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageAspectFlagBits { 1055a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001, 1056a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002, 1057a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004, 1058a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008, 10592676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1060a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkImageAspectFlagBits; 10613e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkImageAspectFlags; 1062a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 10633e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSparseImageFormatFlagBits { 1064b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 0x00000001, 1065b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 0x00000002, 1066b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 0x00000004, 10672676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 106804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageFormatFlagBits; 106904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSparseImageFormatFlags; 1070091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall 1071091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Halltypedef enum VkSparseMemoryBindFlagBits { 1072091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_SPARSE_MEMORY_BIND_METADATA_BIT = 0x00000001, 10732676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1074091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall} VkSparseMemoryBindFlagBits; 107504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSparseMemoryBindFlags; 107604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFenceCreateFlagBits { 107804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FENCE_CREATE_SIGNALED_BIT = 0x00000001, 10792676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 108004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFenceCreateFlagBits; 108104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkFenceCreateFlags; 108204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSemaphoreCreateFlags; 108304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkEventCreateFlags; 1084a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkQueryPoolCreateFlags; 108504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10863e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryPipelineStatisticFlagBits { 1087ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 0x00000001, 1088ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 0x00000002, 1089ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 0x00000004, 1090ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 0x00000008, 1091ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 0x00000010, 1092ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 0x00000020, 1093ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 0x00000040, 1094ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 0x00000080, 1095ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 0x00000100, 1096ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 0x00000200, 1097ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400, 10982676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 109904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryPipelineStatisticFlagBits; 110004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueryPipelineStatisticFlags; 110104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 11023e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryResultFlagBits { 110304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_64_BIT = 0x00000001, 110404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_WAIT_BIT = 0x00000002, 110504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004, 110604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008, 11072676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 110804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryResultFlagBits; 110904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueryResultFlags; 111004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 11113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBufferCreateFlagBits { 1112a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 0x00000001, 1113a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002, 1114a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004, 11152676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1116a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkBufferCreateFlagBits; 1117a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkBufferCreateFlags; 1118a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 11193e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBufferUsageFlagBits { 11203fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 0x00000001, 11213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BUFFER_USAGE_TRANSFER_DST_BIT = 0x00000002, 112204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000004, 112304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 0x00000008, 112404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 0x00000010, 112504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 0x00000020, 112604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040, 112704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080, 112804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100, 11292676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 113004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferUsageFlagBits; 113104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkBufferUsageFlags; 1132a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkBufferViewCreateFlags; 11335ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkImageViewCreateFlags; 113404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkShaderModuleCreateFlags; 11353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineCacheCreateFlags; 113604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 11373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPipelineCreateFlagBits { 11383e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001, 11393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002, 11403e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004, 1141ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX = 0x00000008, 1142ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PIPELINE_CREATE_DISPATCH_BASE_KHX = 0x00000010, 11432676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 11443e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall} VkPipelineCreateFlagBits; 11453e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineCreateFlags; 11463e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineShaderStageCreateFlags; 11473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall 11483e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkShaderStageFlagBits { 1149a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_VERTEX_BIT = 0x00000001, 1150a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002, 1151a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004, 1152a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008, 1153a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010, 1154a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020, 11552676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F, 1156a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_ALL = 0x7FFFFFFF, 11572676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1158a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkShaderStageFlagBits; 1159a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineVertexInputStateCreateFlags; 1160a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineInputAssemblyStateCreateFlags; 11613dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef VkFlags VkPipelineTessellationStateCreateFlags; 1162a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineViewportStateCreateFlags; 11633fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkPipelineRasterizationStateCreateFlags; 1164c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall 11653e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCullModeFlagBits { 1166c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_NONE = 0, 1167c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_FRONT_BIT = 0x00000001, 1168c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_BACK_BIT = 0x00000002, 11692676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_CULL_MODE_FRONT_AND_BACK = 0x00000003, 11702676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_CULL_MODE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1171c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall} VkCullModeFlagBits; 1172c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Halltypedef VkFlags VkCullModeFlags; 1173a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineMultisampleStateCreateFlags; 1174a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineDepthStencilStateCreateFlags; 1175a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineColorBlendStateCreateFlags; 1176a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 11773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkColorComponentFlagBits { 117865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_R_BIT = 0x00000001, 117965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_G_BIT = 0x00000002, 118065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_B_BIT = 0x00000004, 118165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_A_BIT = 0x00000008, 11822676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 118365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkColorComponentFlagBits; 118465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Halltypedef VkFlags VkColorComponentFlags; 1185a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineDynamicStateCreateFlags; 1186a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineLayoutCreateFlags; 118704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkShaderStageFlags; 1188a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkSamplerCreateFlags; 1189ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 1190ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkDescriptorSetLayoutCreateFlagBits { 1191ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001, 1192ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1193ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDescriptorSetLayoutCreateFlagBits; 1194a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDescriptorSetLayoutCreateFlags; 119504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 11963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDescriptorPoolCreateFlagBits { 1197fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001, 11982676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1199fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall} VkDescriptorPoolCreateFlagBits; 1200fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Halltypedef VkFlags VkDescriptorPoolCreateFlags; 1201fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Halltypedef VkFlags VkDescriptorPoolResetFlags; 1202a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkFramebufferCreateFlags; 1203a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkRenderPassCreateFlags; 1204fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall 12053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentDescriptionFlagBits { 12065ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 0x00000001, 12072676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12085ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkAttachmentDescriptionFlagBits; 12095ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkAttachmentDescriptionFlags; 1210ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 1211ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkSubpassDescriptionFlagBits { 1212ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX = 0x00000001, 1213ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX = 0x00000002, 1214ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1215ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkSubpassDescriptionFlagBits; 121604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSubpassDescriptionFlags; 121704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12183e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAccessFlagBits { 12193e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 0x00000001, 12203e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INDEX_READ_BIT = 0x00000002, 12213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004, 12223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_UNIFORM_READ_BIT = 0x00000008, 12233e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 0x00000010, 12243e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_SHADER_READ_BIT = 0x00000020, 12253e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_SHADER_WRITE_BIT = 0x00000040, 12263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 0x00000080, 12273e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100, 12283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200, 12293e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400, 12303e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_TRANSFER_READ_BIT = 0x00000800, 12313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_TRANSFER_WRITE_BIT = 0x00001000, 12323e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_HOST_READ_BIT = 0x00002000, 12333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_HOST_WRITE_BIT = 0x00004000, 12343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_MEMORY_READ_BIT = 0x00008000, 12353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000, 1236289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX = 0x00020000, 1237289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX = 0x00040000, 12382676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall} VkAccessFlagBits; 12403e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkAccessFlags; 12413e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall 12423e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDependencyFlagBits { 1243dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall VK_DEPENDENCY_BY_REGION_BIT = 0x00000001, 1244ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX = 0x00000002, 1245ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX = 0x00000004, 12462676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEPENDENCY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1247dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall} VkDependencyFlagBits; 1248dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Halltypedef VkFlags VkDependencyFlags; 1249dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall 12503e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandPoolCreateFlagBits { 12513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 0x00000001, 12523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 0x00000002, 12532676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12543fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolCreateFlagBits; 12553fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandPoolCreateFlags; 125604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12573e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandPoolResetFlagBits { 12583fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001, 12592676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12603fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolResetFlagBits; 12613fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandPoolResetFlags; 126204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12633e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferUsageFlagBits { 12643fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001, 12653fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002, 12663fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004, 12672676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferUsageFlagBits; 12693fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandBufferUsageFlags; 127004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1271f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef enum VkQueryControlFlagBits { 1272f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001, 12732676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1274f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall} VkQueryControlFlagBits; 1275f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkQueryControlFlags; 1276f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall 12773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferResetFlagBits { 12783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001, 12792676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferResetFlagBits; 12813fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandBufferResetFlags; 128204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkStencilFaceFlagBits { 12845ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_STENCIL_FACE_FRONT_BIT = 0x00000001, 12855ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_STENCIL_FACE_BACK_BIT = 0x00000002, 12862676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STENCIL_FRONT_AND_BACK = 0x00000003, 12872676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12885ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkStencilFaceFlagBits; 12895ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkStencilFaceFlags; 129004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1291e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void* (VKAPI_PTR *PFN_vkAllocationFunction)( 12923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 12933e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 12943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t alignment, 12953e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 129603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1297e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void* (VKAPI_PTR *PFN_vkReallocationFunction)( 12983e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 12993e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pOriginal, 13003e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 13013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t alignment, 13023e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 130304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1304e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeFunction)( 13053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 13063e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pMemory); 130704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1308e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)( 13093e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 13103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 13113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkInternalAllocationType allocationType, 13123e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 131303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1314e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)( 13153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 13163e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 13173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkInternalAllocationType allocationType, 13183e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 131903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1320e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkVoidFunction)(void); 13215ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 13223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkApplicationInfo { 1323563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1324563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1325563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pApplicationName; 1326563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t applicationVersion; 1327563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pEngineName; 1328563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t engineVersion; 1329563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t apiVersion; 13305ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkApplicationInfo; 13315ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 13323e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkInstanceCreateInfo { 1333563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1334563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1335563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkInstanceCreateFlags flags; 1336563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkApplicationInfo* pApplicationInfo; 1337563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledLayerCount; 1338563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledLayerNames; 1339563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledExtensionCount; 1340563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledExtensionNames; 134104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkInstanceCreateInfo; 134204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13433e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAllocationCallbacks { 1344563380d389732337a84e7455caa01ec955ebee30Jesse Hall void* pUserData; 1345563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkAllocationFunction pfnAllocation; 1346563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkReallocationFunction pfnReallocation; 1347563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkFreeFunction pfnFree; 1348563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkInternalAllocationNotification pfnInternalAllocation; 1349563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkInternalFreeNotification pfnInternalFree; 13503fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkAllocationCallbacks; 135103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 13523e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceFeatures { 1353563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 robustBufferAccess; 1354563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fullDrawIndexUint32; 1355563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 imageCubeArray; 1356563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 independentBlend; 1357563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 geometryShader; 1358563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 tessellationShader; 1359563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sampleRateShading; 1360563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 dualSrcBlend; 1361563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 logicOp; 1362563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 multiDrawIndirect; 1363563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 drawIndirectFirstInstance; 1364563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthClamp; 1365563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBiasClamp; 1366563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fillModeNonSolid; 1367563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBounds; 1368563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 wideLines; 1369563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 largePoints; 1370563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToOne; 1371563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 multiViewport; 1372563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 samplerAnisotropy; 1373563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionETC2; 1374563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionASTC_LDR; 1375563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionBC; 1376563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 occlusionQueryPrecise; 1377563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 pipelineStatisticsQuery; 1378563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 vertexPipelineStoresAndAtomics; 1379563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fragmentStoresAndAtomics; 1380563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderTessellationAndGeometryPointSize; 1381563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderImageGatherExtended; 1382563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageExtendedFormats; 1383563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageMultisample; 1384563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageReadWithoutFormat; 1385563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageWriteWithoutFormat; 1386563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderUniformBufferArrayDynamicIndexing; 1387563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderSampledImageArrayDynamicIndexing; 1388563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageBufferArrayDynamicIndexing; 1389563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageArrayDynamicIndexing; 1390563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderClipDistance; 1391563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderCullDistance; 1392563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderFloat64; 1393563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderInt64; 1394563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderInt16; 1395563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderResourceResidency; 1396563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderResourceMinLod; 1397563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseBinding; 1398563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyBuffer; 1399563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyImage2D; 1400563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyImage3D; 1401563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency2Samples; 1402563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency4Samples; 1403563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency8Samples; 1404563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency16Samples; 1405563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyAliased; 1406563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 variableMultisampleRate; 1407563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 inheritedQueries; 140804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceFeatures; 140904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFormatProperties { 1411563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags linearTilingFeatures; 1412563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags optimalTilingFeatures; 1413563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags bufferFeatures; 141404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormatProperties; 141504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14163e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtent3D { 1417563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 1418563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 1419563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t depth; 14205ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkExtent3D; 14215ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 14223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageFormatProperties { 1423563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D maxExtent; 1424563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxMipLevels; 1425563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxArrayLayers; 1426563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampleCounts; 1427563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize maxResourceSize; 142804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageFormatProperties; 142904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14303e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceLimits { 1431563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension1D; 1432563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension2D; 1433563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension3D; 1434563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimensionCube; 1435563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageArrayLayers; 1436563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelBufferElements; 1437563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxUniformBufferRange; 1438563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxStorageBufferRange; 1439563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPushConstantsSize; 1440563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxMemoryAllocationCount; 1441563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSamplerAllocationCount; 1442563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize bufferImageGranularity; 1443563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize sparseAddressSpaceSize; 1444563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxBoundDescriptorSets; 1445563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorSamplers; 1446563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorUniformBuffers; 1447563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorStorageBuffers; 1448563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorSampledImages; 1449563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorStorageImages; 1450563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorInputAttachments; 1451563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageResources; 1452563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetSamplers; 1453563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetUniformBuffers; 1454563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetUniformBuffersDynamic; 1455563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageBuffers; 1456563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageBuffersDynamic; 1457563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetSampledImages; 1458563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageImages; 1459563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetInputAttachments; 1460563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputAttributes; 1461563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputBindings; 1462563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputAttributeOffset; 1463563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputBindingStride; 1464563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexOutputComponents; 1465563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationGenerationLevel; 1466563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationPatchSize; 1467563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerVertexInputComponents; 1468563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerVertexOutputComponents; 1469563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerPatchOutputComponents; 1470563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlTotalOutputComponents; 1471563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationEvaluationInputComponents; 1472563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationEvaluationOutputComponents; 1473563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryShaderInvocations; 1474563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryInputComponents; 1475563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryOutputComponents; 1476563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryOutputVertices; 1477563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryTotalOutputComponents; 1478563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentInputComponents; 1479563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentOutputAttachments; 1480563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentDualSrcAttachments; 1481563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentCombinedOutputResources; 1482563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeSharedMemorySize; 1483563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupCount[3]; 1484563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupInvocations; 1485563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupSize[3]; 1486563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subPixelPrecisionBits; 1487563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subTexelPrecisionBits; 1488563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipmapPrecisionBits; 1489563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDrawIndexedIndexValue; 1490563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDrawIndirectCount; 1491563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxSamplerLodBias; 1492563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxSamplerAnisotropy; 1493563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxViewports; 1494563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxViewportDimensions[2]; 1495563380d389732337a84e7455caa01ec955ebee30Jesse Hall float viewportBoundsRange[2]; 1496563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t viewportSubPixelBits; 1497563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t minMemoryMapAlignment; 1498563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minTexelBufferOffsetAlignment; 1499563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minUniformBufferOffsetAlignment; 1500563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minStorageBufferOffsetAlignment; 1501563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t minTexelOffset; 1502563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelOffset; 1503563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t minTexelGatherOffset; 1504563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelGatherOffset; 1505563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minInterpolationOffset; 1506563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxInterpolationOffset; 1507563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subPixelInterpolationOffsetBits; 1508563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferWidth; 1509563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferHeight; 1510563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferLayers; 1511563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferColorSampleCounts; 1512563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferDepthSampleCounts; 1513563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferStencilSampleCounts; 1514563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferNoAttachmentsSampleCounts; 1515563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxColorAttachments; 1516563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageColorSampleCounts; 1517563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageIntegerSampleCounts; 1518563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageDepthSampleCounts; 1519563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageStencilSampleCounts; 1520563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags storageImageSampleCounts; 1521563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSampleMaskWords; 1522563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 timestampComputeAndGraphics; 1523563380d389732337a84e7455caa01ec955ebee30Jesse Hall float timestampPeriod; 1524563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxClipDistances; 1525563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxCullDistances; 1526563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxCombinedClipAndCullDistances; 1527563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t discreteQueuePriorities; 1528563380d389732337a84e7455caa01ec955ebee30Jesse Hall float pointSizeRange[2]; 1529563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidthRange[2]; 1530563380d389732337a84e7455caa01ec955ebee30Jesse Hall float pointSizeGranularity; 1531563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidthGranularity; 1532563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 strictLines; 1533563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 standardSampleLocations; 1534563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize optimalBufferCopyOffsetAlignment; 1535563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize optimalBufferCopyRowPitchAlignment; 1536563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize nonCoherentAtomSize; 153704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceLimits; 153804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceSparseProperties { 1540563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard2DBlockShape; 1541563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard2DMultisampleBlockShape; 1542563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard3DBlockShape; 1543563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyAlignedMipSize; 1544563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyNonResidentStrict; 15455ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkPhysicalDeviceSparseProperties; 15465ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 15473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceProperties { 1548563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t apiVersion; 1549563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t driverVersion; 1550563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t vendorID; 1551563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t deviceID; 1552563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceType deviceType; 1553563380d389732337a84e7455caa01ec955ebee30Jesse Hall char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE]; 1554563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint8_t pipelineCacheUUID[VK_UUID_SIZE]; 1555563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceLimits limits; 1556563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceSparseProperties sparseProperties; 155704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceProperties; 155804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkQueueFamilyProperties { 1560563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueueFlags queueFlags; 1561563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCount; 1562563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t timestampValidBits; 1563563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D minImageTransferGranularity; 15645ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkQueueFamilyProperties; 156504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryType { 1567563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryPropertyFlags propertyFlags; 1568563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t heapIndex; 156904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryType; 157004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryHeap { 1572563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1573563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryHeapFlags flags; 157404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryHeap; 157504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceMemoryProperties { 1577563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeCount; 1578563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES]; 1579563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryHeapCount; 1580563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS]; 158104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceMemoryProperties; 158204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDeviceQueueCreateInfo { 1584563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1585563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1586563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceQueueCreateFlags flags; 1587563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndex; 1588563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCount; 1589563380d389732337a84e7455caa01ec955ebee30Jesse Hall const float* pQueuePriorities; 159004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDeviceQueueCreateInfo; 159104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDeviceCreateInfo { 1593563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1594563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1595563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceCreateFlags flags; 1596563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCreateInfoCount; 1597563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDeviceQueueCreateInfo* pQueueCreateInfos; 1598563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledLayerCount; 1599563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledLayerNames; 1600563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledExtensionCount; 1601563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledExtensionNames; 1602563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPhysicalDeviceFeatures* pEnabledFeatures; 160304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDeviceCreateInfo; 160404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtensionProperties { 1606563380d389732337a84e7455caa01ec955ebee30Jesse Hall char extensionName[VK_MAX_EXTENSION_NAME_SIZE]; 1607563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t specVersion; 160804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkExtensionProperties; 160904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkLayerProperties { 1611563380d389732337a84e7455caa01ec955ebee30Jesse Hall char layerName[VK_MAX_EXTENSION_NAME_SIZE]; 1612563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t specVersion; 1613563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t implementationVersion; 1614563380d389732337a84e7455caa01ec955ebee30Jesse Hall char description[VK_MAX_DESCRIPTION_SIZE]; 161504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkLayerProperties; 161604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubmitInfo { 1618563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1619563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1620563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t waitSemaphoreCount; 1621563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pWaitSemaphores; 1622563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineStageFlags* pWaitDstStageMask; 1623563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t commandBufferCount; 1624563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkCommandBuffer* pCommandBuffers; 1625563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t signalSemaphoreCount; 1626563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pSignalSemaphores; 1627a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall} VkSubmitInfo; 1628a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall 16293e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryAllocateInfo { 1630563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1631563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1632563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize allocationSize; 1633563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeIndex; 16343fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkMemoryAllocateInfo; 163504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16363e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMappedMemoryRange { 1637563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1638563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1639563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1640563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1641563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 164204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMappedMemoryRange; 164304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16443e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryRequirements { 1645563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1646563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize alignment; 1647563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeBits; 164804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryRequirements; 164904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16503e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageFormatProperties { 1651563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1652563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D imageGranularity; 1653563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseImageFormatFlags flags; 165404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageFormatProperties; 165504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16563e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryRequirements { 1657563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseImageFormatProperties formatProperties; 1658563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t imageMipTailFirstLod; 1659563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailSize; 1660563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailOffset; 1661563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailStride; 166204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageMemoryRequirements; 166304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16643e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseMemoryBind { 1665563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize resourceOffset; 1666563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1667563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1668563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize memoryOffset; 1669563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseMemoryBindFlags flags; 1670a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseMemoryBind; 1671a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 16723e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseBufferMemoryBindInfo { 1673563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 1674563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1675563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseMemoryBind* pBinds; 1676a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseBufferMemoryBindInfo; 1677a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 16783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageOpaqueMemoryBindInfo { 1679563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1680563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1681563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseMemoryBind* pBinds; 1682a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseImageOpaqueMemoryBindInfo; 168304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresource { 1685563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1686563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevel; 1687563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t arrayLayer; 168804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageSubresource; 168904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkOffset3D { 1691563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t x; 1692563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t y; 1693563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t z; 169404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkOffset3D; 169504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryBind { 1697563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresource subresource; 1698563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D offset; 1699563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 1700563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1701563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize memoryOffset; 1702563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseMemoryBindFlags flags; 1703a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseImageMemoryBind; 1704a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 17053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryBindInfo { 1706563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1707563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1708563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseImageMemoryBind* pBinds; 170904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageMemoryBindInfo; 171004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBindSparseInfo { 171204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkStructureType sType; 171304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const void* pNext; 1714a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t waitSemaphoreCount; 1715a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSemaphore* pWaitSemaphores; 1716a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t bufferBindCount; 1717a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseBufferMemoryBindInfo* pBufferBinds; 1718a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t imageOpaqueBindCount; 1719a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds; 1720a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t imageBindCount; 1721a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseImageMemoryBindInfo* pImageBinds; 1722a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t signalSemaphoreCount; 1723a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSemaphore* pSignalSemaphores; 1724a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkBindSparseInfo; 1725a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 17263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFenceCreateInfo { 1727563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1728563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1729563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFenceCreateFlags flags; 173004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFenceCreateInfo; 173104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17323e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSemaphoreCreateInfo { 1733563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1734563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1735563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSemaphoreCreateFlags flags; 173604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSemaphoreCreateInfo; 173704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17383e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkEventCreateInfo { 1739563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1740563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1741563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkEventCreateFlags flags; 174204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkEventCreateInfo; 174304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17443e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkQueryPoolCreateInfo { 1745563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1746563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1747563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPoolCreateFlags flags; 1748563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryType queryType; 1749563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queryCount; 1750563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPipelineStatisticFlags pipelineStatistics; 175104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryPoolCreateInfo; 175204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17533e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferCreateInfo { 1754563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1755563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1756563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferCreateFlags flags; 1757563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1758563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferUsageFlags usage; 1759563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode sharingMode; 1760563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 1761563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 176204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferCreateInfo; 176304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17643e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferViewCreateInfo { 1765563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1766563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1767563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferViewCreateFlags flags; 1768563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 1769563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1770563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1771563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize range; 177204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferViewCreateInfo; 177304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageCreateInfo { 1775563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1776563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1777563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageCreateFlags flags; 1778563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageType imageType; 1779563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1780563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 1781563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevels; 1782563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t arrayLayers; 1783563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits samples; 1784563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageTiling tiling; 1785563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags usage; 1786563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode sharingMode; 1787563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 1788563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 1789563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout initialLayout; 179004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageCreateInfo; 179104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubresourceLayout { 1793563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1794563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1795563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize rowPitch; 1796563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize arrayPitch; 1797563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize depthPitch; 179804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubresourceLayout; 179904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18003e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkComponentMapping { 1801563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle r; 1802563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle g; 1803563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle b; 1804563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle a; 180565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkComponentMapping; 180604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18073e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresourceRange { 1808563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1809563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseMipLevel; 1810563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t levelCount; 1811563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 1812563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 181304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageSubresourceRange; 181404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageViewCreateInfo { 1816563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1817563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1818563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageViewCreateFlags flags; 1819563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1820563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageViewType viewType; 1821563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1822563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentMapping components; 1823563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceRange subresourceRange; 182404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageViewCreateInfo; 182504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkShaderModuleCreateInfo { 1827563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1828563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1829563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderModuleCreateFlags flags; 1830563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t codeSize; 1831563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pCode; 183204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkShaderModuleCreateInfo; 183304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineCacheCreateInfo { 1835563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1836563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1837563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCacheCreateFlags flags; 1838563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t initialDataSize; 1839563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pInitialData; 184004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineCacheCreateInfo; 184104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18423e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSpecializationMapEntry { 1843563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t constantID; 1844563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 1845563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t size; 184604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSpecializationMapEntry; 184704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18483e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSpecializationInfo { 1849563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mapEntryCount; 1850563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSpecializationMapEntry* pMapEntries; 1851563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t dataSize; 1852563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pData; 185304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSpecializationInfo; 185404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18553e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineShaderStageCreateInfo { 1856563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1857563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1858563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineShaderStageCreateFlags flags; 1859563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlagBits stage; 1860563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderModule module; 1861563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pName; 1862563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSpecializationInfo* pSpecializationInfo; 186304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineShaderStageCreateInfo; 186404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18653e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkVertexInputBindingDescription { 1866563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 1867563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stride; 1868563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkVertexInputRate inputRate; 186904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkVertexInputBindingDescription; 187004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkVertexInputAttributeDescription { 1872563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t location; 1873563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 1874563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1875563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 187604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkVertexInputAttributeDescription; 187704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineVertexInputStateCreateInfo { 187904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkStructureType sType; 188004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const void* pNext; 1881a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPipelineVertexInputStateCreateFlags flags; 188203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t vertexBindingDescriptionCount; 188304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkVertexInputBindingDescription* pVertexBindingDescriptions; 188403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t vertexAttributeDescriptionCount; 188504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkVertexInputAttributeDescription* pVertexAttributeDescriptions; 188604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineVertexInputStateCreateInfo; 188704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineInputAssemblyStateCreateInfo { 1889563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1890563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1891563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineInputAssemblyStateCreateFlags flags; 1892563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPrimitiveTopology topology; 1893563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 primitiveRestartEnable; 189404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineInputAssemblyStateCreateInfo; 189504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineTessellationStateCreateInfo { 1897563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1898563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1899563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineTessellationStateCreateFlags flags; 1900563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t patchControlPoints; 190104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineTessellationStateCreateInfo; 190204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19033e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkViewport { 1904563380d389732337a84e7455caa01ec955ebee30Jesse Hall float x; 1905563380d389732337a84e7455caa01ec955ebee30Jesse Hall float y; 1906563380d389732337a84e7455caa01ec955ebee30Jesse Hall float width; 1907563380d389732337a84e7455caa01ec955ebee30Jesse Hall float height; 1908563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minDepth; 1909563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxDepth; 19105ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkViewport; 19115ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 19123e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkOffset2D { 1913563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t x; 1914563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t y; 19155ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkOffset2D; 19165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 19173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtent2D { 1918563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 1919563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 19205ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkExtent2D; 19215ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 19223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkRect2D { 1923563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D offset; 1924563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D extent; 19255ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkRect2D; 19265ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 19273e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineViewportStateCreateInfo { 1928563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1929563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1930563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineViewportStateCreateFlags flags; 1931563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t viewportCount; 1932563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkViewport* pViewports; 1933563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t scissorCount; 1934563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkRect2D* pScissors; 193504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineViewportStateCreateInfo; 193604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineRasterizationStateCreateInfo { 1938563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1939563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1940563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineRasterizationStateCreateFlags flags; 1941563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthClampEnable; 1942563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 rasterizerDiscardEnable; 1943563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPolygonMode polygonMode; 1944563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCullModeFlags cullMode; 1945563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFrontFace frontFace; 1946563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBiasEnable; 1947563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasConstantFactor; 1948563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasClamp; 1949563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasSlopeFactor; 1950563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidth; 19513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkPipelineRasterizationStateCreateInfo; 195204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19533e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineMultisampleStateCreateInfo { 1954563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1955563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1956563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineMultisampleStateCreateFlags flags; 1957563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits rasterizationSamples; 1958563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sampleShadingEnable; 1959563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minSampleShading; 1960563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSampleMask* pSampleMask; 1961563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToCoverageEnable; 1962563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToOneEnable; 196304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineMultisampleStateCreateInfo; 196404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19653e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkStencilOpState { 1966563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp failOp; 1967563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp passOp; 1968563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp depthFailOp; 1969563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp compareOp; 1970563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t compareMask; 1971563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t writeMask; 1972563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t reference; 197304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStencilOpState; 197404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19753e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineDepthStencilStateCreateInfo { 1976563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1977563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1978563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineDepthStencilStateCreateFlags flags; 1979563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthTestEnable; 1980563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthWriteEnable; 1981563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp depthCompareOp; 1982563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBoundsTestEnable; 1983563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 stencilTestEnable; 1984563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOpState front; 1985563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOpState back; 1986563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minDepthBounds; 1987563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxDepthBounds; 198804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineDepthStencilStateCreateInfo; 198904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineColorBlendAttachmentState { 1991563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 blendEnable; 1992563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor srcColorBlendFactor; 1993563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor dstColorBlendFactor; 1994563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendOp colorBlendOp; 1995563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor srcAlphaBlendFactor; 1996563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor dstAlphaBlendFactor; 1997563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendOp alphaBlendOp; 1998563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorComponentFlags colorWriteMask; 199904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineColorBlendAttachmentState; 200004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineColorBlendStateCreateInfo { 2002563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2003563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2004563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineColorBlendStateCreateFlags flags; 2005563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 logicOpEnable; 2006563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkLogicOp logicOp; 2007563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 2008563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineColorBlendAttachmentState* pAttachments; 2009563380d389732337a84e7455caa01ec955ebee30Jesse Hall float blendConstants[4]; 201004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineColorBlendStateCreateInfo; 201104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20123e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineDynamicStateCreateInfo { 2013563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2014563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2015563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineDynamicStateCreateFlags flags; 2016563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dynamicStateCount; 2017563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDynamicState* pDynamicStates; 20185ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkPipelineDynamicStateCreateInfo; 20195ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 20203e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkGraphicsPipelineCreateInfo { 2021563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2022563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2023563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCreateFlags flags; 2024563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stageCount; 2025563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineShaderStageCreateInfo* pStages; 2026563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineVertexInputStateCreateInfo* pVertexInputState; 2027563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState; 2028563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineTessellationStateCreateInfo* pTessellationState; 2029563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineViewportStateCreateInfo* pViewportState; 2030563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineRasterizationStateCreateInfo* pRasterizationState; 2031563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineMultisampleStateCreateInfo* pMultisampleState; 2032563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState; 2033563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineColorBlendStateCreateInfo* pColorBlendState; 2034563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineDynamicStateCreateInfo* pDynamicState; 2035563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayout layout; 2036563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2037563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpass; 2038563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipeline basePipelineHandle; 2039563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t basePipelineIndex; 204004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkGraphicsPipelineCreateInfo; 204104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20423e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkComputePipelineCreateInfo { 2043563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2044563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2045563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCreateFlags flags; 2046563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineShaderStageCreateInfo stage; 2047563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayout layout; 2048563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipeline basePipelineHandle; 2049563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t basePipelineIndex; 205004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkComputePipelineCreateInfo; 205104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20523e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPushConstantRange { 2053563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlags stageFlags; 2054563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 2055563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t size; 205604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPushConstantRange; 205704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20583e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineLayoutCreateInfo { 2059563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2060563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2061563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayoutCreateFlags flags; 2062563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t setLayoutCount; 2063563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayout* pSetLayouts; 2064563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t pushConstantRangeCount; 2065563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPushConstantRange* pPushConstantRanges; 206604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineLayoutCreateInfo; 206704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20683e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSamplerCreateInfo { 2069563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2070563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2071563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerCreateFlags flags; 2072563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFilter magFilter; 2073563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFilter minFilter; 2074563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerMipmapMode mipmapMode; 2075563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeU; 2076563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeV; 2077563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeW; 2078563380d389732337a84e7455caa01ec955ebee30Jesse Hall float mipLodBias; 2079563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 anisotropyEnable; 2080563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxAnisotropy; 2081563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 compareEnable; 2082563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp compareOp; 2083563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minLod; 2084563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxLod; 2085563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBorderColor borderColor; 2086563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 unnormalizedCoordinates; 208704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSamplerCreateInfo; 208804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20893e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetLayoutBinding { 2090563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 2091563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType descriptorType; 2092563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 2093563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlags stageFlags; 2094563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSampler* pImmutableSamplers; 209504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorSetLayoutBinding; 209604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20973e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetLayoutCreateInfo { 2098563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2099563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2100563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSetLayoutCreateFlags flags; 2101563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindingCount; 2102563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayoutBinding* pBindings; 210304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorSetLayoutCreateInfo; 210404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorPoolSize { 2106563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType type; 2107563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 210865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkDescriptorPoolSize; 210904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorPoolCreateInfo { 2111563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2112563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2113563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorPoolCreateFlags flags; 2114563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSets; 2115563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t poolSizeCount; 2116563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorPoolSize* pPoolSizes; 211704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorPoolCreateInfo; 211804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21193e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetAllocateInfo { 2120563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2121563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2122563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorPool descriptorPool; 2123563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorSetCount; 2124563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayout* pSetLayouts; 21253fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDescriptorSetAllocateInfo; 2126fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall 21273e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorImageInfo { 2128563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampler sampler; 2129563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageView imageView; 2130563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout imageLayout; 2131a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkDescriptorImageInfo; 2132a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 21333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorBufferInfo { 2134563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 2135563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 2136563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize range; 21375ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkDescriptorBufferInfo; 21385ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 21393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkWriteDescriptorSet { 2140563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2141563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2142563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet dstSet; 2143563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstBinding; 2144563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstArrayElement; 2145563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 2146563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType descriptorType; 2147563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorImageInfo* pImageInfo; 2148563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorBufferInfo* pBufferInfo; 2149563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkBufferView* pTexelBufferView; 215004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkWriteDescriptorSet; 215104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21523e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCopyDescriptorSet { 2153563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2154563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2155563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet srcSet; 2156563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcBinding; 2157563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcArrayElement; 2158563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet dstSet; 2159563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstBinding; 2160563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstArrayElement; 2161563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 216204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkCopyDescriptorSet; 216304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21643e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFramebufferCreateInfo { 2165563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2166563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2167563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebufferCreateFlags flags; 2168563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2169563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 2170563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkImageView* pAttachments; 2171563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 2172563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 2173563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layers; 217404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFramebufferCreateInfo; 217504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAttachmentDescription { 2177563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentDescriptionFlags flags; 2178563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 2179563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits samples; 2180563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentLoadOp loadOp; 2181563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentStoreOp storeOp; 2182563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentLoadOp stencilLoadOp; 2183563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentStoreOp stencilStoreOp; 2184563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout initialLayout; 2185563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout finalLayout; 218604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentDescription; 218704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAttachmentReference { 2189563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachment; 2190563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout layout; 219104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentReference; 219204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21933e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubpassDescription { 2194563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSubpassDescriptionFlags flags; 2195563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineBindPoint pipelineBindPoint; 2196563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t inputAttachmentCount; 2197563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pInputAttachments; 2198563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t colorAttachmentCount; 2199563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pColorAttachments; 2200563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pResolveAttachments; 2201563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pDepthStencilAttachment; 2202563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t preserveAttachmentCount; 2203563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pPreserveAttachments; 220404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubpassDescription; 220504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22063e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubpassDependency { 2207563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcSubpass; 2208563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstSubpass; 2209563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineStageFlags srcStageMask; 2210563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineStageFlags dstStageMask; 2211563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2212563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2213563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDependencyFlags dependencyFlags; 221404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubpassDependency; 221504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22163e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkRenderPassCreateInfo { 2217563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2218563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2219563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPassCreateFlags flags; 2220563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 2221563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentDescription* pAttachments; 2222563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpassCount; 2223563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSubpassDescription* pSubpasses; 2224563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dependencyCount; 2225563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSubpassDependency* pDependencies; 222604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkRenderPassCreateInfo; 222704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCommandPoolCreateInfo { 2229563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2230563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2231563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandPoolCreateFlags flags; 2232563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndex; 22333fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolCreateInfo; 223404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCommandBufferAllocateInfo { 2236563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2237563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2238563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandPool commandPool; 2239563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandBufferLevel level; 2240563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t commandBufferCount; 22413fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferAllocateInfo; 224204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22433dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkCommandBufferInheritanceInfo { 2244563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2245563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2246563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2247563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpass; 2248563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebuffer framebuffer; 2249563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 occlusionQueryEnable; 2250563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryControlFlags queryFlags; 2251563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPipelineStatisticFlags pipelineStatistics; 22523dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkCommandBufferInheritanceInfo; 22533dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 22543dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkCommandBufferBeginInfo { 2255563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2256563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2257563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandBufferUsageFlags flags; 2258563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkCommandBufferInheritanceInfo* pInheritanceInfo; 22593fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferBeginInfo; 226004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22613e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferCopy { 2262563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize srcOffset; 2263563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize dstOffset; 2264563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 226504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferCopy; 226604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22673e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresourceLayers { 2268563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 2269563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevel; 2270563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 2271563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 227265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkImageSubresourceLayers; 22735ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 22743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageCopy { 2275563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2276563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffset; 2277563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2278563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffset; 2279563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 228004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageCopy; 228104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22823e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageBlit { 2283563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2284563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffsets[2]; 2285563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2286563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffsets[2]; 228704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageBlit; 228804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22893e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferImageCopy { 2290563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize bufferOffset; 2291563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bufferRowLength; 2292563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bufferImageHeight; 2293563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers imageSubresource; 2294563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D imageOffset; 2295563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D imageExtent; 229604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferImageCopy; 229704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22983e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef union VkClearColorValue { 2299563380d389732337a84e7455caa01ec955ebee30Jesse Hall float float32[4]; 2300563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t int32[4]; 2301563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t uint32[4]; 230204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkClearColorValue; 230304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23043e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearDepthStencilValue { 2305563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depth; 2306563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stencil; 23075ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkClearDepthStencilValue; 23085ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 23093e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef union VkClearValue { 2310563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearColorValue color; 2311563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearDepthStencilValue depthStencil; 2312ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall} VkClearValue; 2313ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall 23143e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearAttachment { 2315563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 2316563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t colorAttachment; 2317563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearValue clearValue; 2318ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall} VkClearAttachment; 2319ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall 23203e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearRect { 2321563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D rect; 2322563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 2323563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 2324a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkClearRect; 232504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageResolve { 2327563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2328563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffset; 2329563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2330563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffset; 2331563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 233204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageResolve; 233304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23343dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkMemoryBarrier { 2335563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2336563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2337563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2338563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 23393dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkMemoryBarrier; 234004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23413e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferMemoryBarrier { 2342563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2343563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2344563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2345563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2346563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcQueueFamilyIndex; 2347563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstQueueFamilyIndex; 2348563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 2349563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 2350563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 235104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferMemoryBarrier; 235204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23533dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkImageMemoryBarrier { 2354563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2355563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2356563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2357563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2358563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout oldLayout; 2359563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout newLayout; 2360563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcQueueFamilyIndex; 2361563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstQueueFamilyIndex; 2362563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 2363563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceRange subresourceRange; 23643dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkImageMemoryBarrier; 23653dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 23663dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkRenderPassBeginInfo { 2367563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2368563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2369563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2370563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebuffer framebuffer; 2371563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D renderArea; 2372563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t clearValueCount; 2373563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkClearValue* pClearValues; 23743dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkRenderPassBeginInfo; 23753dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 23763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDispatchIndirectCommand { 2377563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t x; 2378563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t y; 2379563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t z; 23803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDispatchIndirectCommand; 238104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23823e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDrawIndexedIndirectCommand { 2383563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t indexCount; 2384563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t instanceCount; 2385563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstIndex; 2386563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t vertexOffset; 2387563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstInstance; 23883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDrawIndexedIndirectCommand; 238904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDrawIndirectCommand { 2391563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t vertexCount; 2392563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t instanceCount; 2393563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstVertex; 2394563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstInstance; 23953fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDrawIndirectCommand; 239604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 239704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2398e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance); 2399e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyInstance)(VkInstance instance, const VkAllocationCallbacks* pAllocator); 2400e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices); 2401e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures); 2402e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties); 2403e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties); 2404e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties); 2405e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties); 2406e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties); 2407e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName); 2408e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetDeviceProcAddr)(VkDevice device, const char* pName); 2409e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice); 2410e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDevice)(VkDevice device, const VkAllocationCallbacks* pAllocator); 2411e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceExtensionProperties)(const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties); 2412e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties); 2413e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceLayerProperties)(uint32_t* pPropertyCount, VkLayerProperties* pProperties); 2414e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties); 2415e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetDeviceQueue)(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue); 2416e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence); 2417e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueWaitIdle)(VkQueue queue); 2418e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDeviceWaitIdle)(VkDevice device); 2419e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateMemory)(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory); 2420e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeMemory)(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator); 2421e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData); 2422e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory memory); 2423e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges); 2424e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges); 2425e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetDeviceMemoryCommitment)(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes); 2426e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory)(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset); 2427e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory)(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset); 2428e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements)(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements); 2429e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements)(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements); 2430e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements)(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements); 2431e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties); 2432e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueBindSparse)(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence); 2433e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateFence)(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence); 2434e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyFence)(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator); 2435e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences); 2436e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetFenceStatus)(VkDevice device, VkFence fence); 2437e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkWaitForFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout); 2438e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore); 2439e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator); 2440e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateEvent)(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent); 2441e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyEvent)(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator); 2442e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetEventStatus)(VkDevice device, VkEvent event); 2443e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkSetEvent)(VkDevice device, VkEvent event); 2444e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetEvent)(VkDevice device, VkEvent event); 2445e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateQueryPool)(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool); 2446e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyQueryPool)(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator); 2447f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetQueryPoolResults)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags); 2448e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateBuffer)(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer); 2449e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyBuffer)(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator); 2450e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateBufferView)(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView); 2451e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyBufferView)(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator); 2452e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateImage)(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage); 2453e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyImage)(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator); 2454e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout); 2455e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateImageView)(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView); 2456e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyImageView)(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator); 2457e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule); 2458e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator); 2459e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineCache)(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache); 2460e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipelineCache)(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator); 2461e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData); 2462e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkMergePipelineCaches)(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches); 2463e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateGraphicsPipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); 2464e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateComputePipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); 2465e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipeline)(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator); 2466e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineLayout)(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout); 2467e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipelineLayout)(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator); 2468e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSampler)(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler); 2469e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator); 2470e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorSetLayout)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout); 2471e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDescriptorSetLayout)(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator); 2472e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorPool)(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool); 2473e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator); 2474e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags); 2475e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateDescriptorSets)(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets); 2476e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkFreeDescriptorSets)(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets); 2477e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSets)(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies); 2478e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateFramebuffer)(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer); 2479e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyFramebuffer)(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator); 2480e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass)(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass); 2481e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyRenderPass)(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator); 2482e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity); 2483e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateCommandPool)(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool); 2484e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyCommandPool)(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator); 2485e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags); 2486e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateCommandBuffers)(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers); 2487e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeCommandBuffers)(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers); 2488e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBeginCommandBuffer)(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo); 2489e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEndCommandBuffer)(VkCommandBuffer commandBuffer); 2490e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetCommandBuffer)(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags); 2491e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline); 2492f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetViewport)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports); 2493f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetScissor)(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors); 2494e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetLineWidth)(VkCommandBuffer commandBuffer, float lineWidth); 2495e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDepthBias)(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor); 2496e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetBlendConstants)(VkCommandBuffer commandBuffer, const float blendConstants[4]); 2497e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDepthBounds)(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds); 2498e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilCompareMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask); 2499e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilWriteMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask); 2500e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilReference)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference); 2501e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef 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); 2502e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType); 2503f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets); 2504e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance); 2505e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance); 2506e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride); 2507e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride); 2508ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ); 2509e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset); 2510e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions); 2511e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions); 2512e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBlitImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter); 2513e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions); 2514e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions); 251556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdUpdateBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData); 2516e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdFillBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data); 2517e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearColorImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges); 2518e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearDepthStencilImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges); 2519e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearAttachments)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects); 2520e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResolveImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions); 2521e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask); 2522e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask); 25233dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef 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); 25243dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef 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); 25253dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBeginQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags); 25263dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdEndQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query); 2527f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResetQueryPool)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount); 25283dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query); 2529f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyQueryPoolResults)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags); 2530f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdPushConstants)(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues); 2531e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents); 2532e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdNextSubpass)(VkCommandBuffer commandBuffer, VkSubpassContents contents); 2533e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass)(VkCommandBuffer commandBuffer); 25343dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdExecuteCommands)(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers); 253504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2536563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 2537e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance( 253804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkInstanceCreateInfo* pCreateInfo, 25393fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 254004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance* pInstance); 254104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2542e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyInstance( 254303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkInstance instance, 25443fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 254504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2546e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices( 254704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance instance, 254804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t* pPhysicalDeviceCount, 254904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice* pPhysicalDevices); 255004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2551e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures( 255204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 255304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceFeatures* pFeatures); 255404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2555e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties( 255604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 255704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 255804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormatProperties* pFormatProperties); 255904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2560e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties( 256104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 256204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 256304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageType type, 256404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageTiling tiling, 256504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageUsageFlags usage, 25665ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkImageCreateFlags flags, 256704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageFormatProperties* pImageFormatProperties); 256804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2569e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties( 257004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 257104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceProperties* pProperties); 257204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2573e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties( 257404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 257503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pQueueFamilyPropertyCount, 25765ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkQueueFamilyProperties* pQueueFamilyProperties); 257704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2578e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties( 257904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 258004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceMemoryProperties* pMemoryProperties); 258104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2582e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr( 258304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance instance, 258404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pName); 258504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2586e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr( 258704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 258804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pName); 258904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2590e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice( 259104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 259204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDeviceCreateInfo* pCreateInfo, 25933fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 259404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice* pDevice); 259504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2596e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDevice( 259703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDevice device, 25983fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 259904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2600e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties( 260104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pLayerName, 260203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 260304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtensionProperties* pProperties); 260404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2605e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties( 260604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 260704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pLayerName, 260803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 260904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtensionProperties* pProperties); 261004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2611e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties( 261203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 261304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkLayerProperties* pProperties); 261404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2615e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties( 261604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 261703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 261804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkLayerProperties* pProperties); 261904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2620e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue( 262104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 262204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queueFamilyIndex, 262304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queueIndex, 262404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue* pQueue); 262504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2626e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit( 262704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue, 2628a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall uint32_t submitCount, 2629b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall const VkSubmitInfo* pSubmits, 263004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence fence); 263104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2632e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle( 263304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue); 263404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2635e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle( 263604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device); 263704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2638e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory( 263904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26403fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMemoryAllocateInfo* pAllocateInfo, 26413fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 26423fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory* pMemory); 264304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2644e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkFreeMemory( 264504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26463fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 26473fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 264804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2649e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkMapMemory( 265004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 265204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 265304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize size, 265404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryMapFlags flags, 265504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void** ppData); 265604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2657e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkUnmapMemory( 265804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26593fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory); 266004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2661e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges( 266204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26633fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryRangeCount, 26643fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMappedMemoryRange* pMemoryRanges); 266504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2666e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges( 266704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryRangeCount, 26693fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMappedMemoryRange* pMemoryRanges); 267004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2671e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment( 267204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 267304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceMemory memory, 267404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize* pCommittedMemoryInBytes); 267504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2676e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory( 267704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 267804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 26793fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 26803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize memoryOffset); 268104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2682e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory( 268304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 268404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 26853fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 26863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize memoryOffset); 268704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2688e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements( 268904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 269004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 269104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryRequirements* pMemoryRequirements); 269204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2693e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements( 269404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 269504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 269604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryRequirements* pMemoryRequirements); 269704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2698e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements( 269904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 270004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 270103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pSparseMemoryRequirementCount, 270204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSparseImageMemoryRequirements* pSparseMemoryRequirements); 270304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2704e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties( 270504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 270604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 270704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageType type, 2708091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VkSampleCountFlagBits samples, 270904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageUsageFlags usage, 271004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageTiling tiling, 271103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 271204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSparseImageFormatProperties* pProperties); 271304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2714e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse( 271504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue, 271603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t bindInfoCount, 2717a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkBindSparseInfo* pBindInfo, 2718a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkFence fence); 271904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2720e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateFence( 272104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 272204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFenceCreateInfo* pCreateInfo, 27233fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 272404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence* pFence); 272504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2726e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyFence( 272704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 272803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkFence fence, 27293fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 273004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2731e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetFences( 273204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 273304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t fenceCount, 273404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFence* pFences); 273504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2736e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus( 273704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 273804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence fence); 273904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2740e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences( 274104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 274204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t fenceCount, 274304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFence* pFences, 274404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBool32 waitAll, 274504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint64_t timeout); 274604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2747e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore( 274804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 274904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkSemaphoreCreateInfo* pCreateInfo, 27503fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 275104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSemaphore* pSemaphore); 275204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2753e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySemaphore( 275404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 275503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkSemaphore semaphore, 27563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 275704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2758e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent( 275904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 276004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkEventCreateInfo* pCreateInfo, 27613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 276204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent* pEvent); 276304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2764e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyEvent( 276504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 276603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkEvent event, 27673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 276804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2769e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus( 277004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 277104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 277204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2773e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkSetEvent( 277404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 277504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 277604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2777e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetEvent( 277804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 277904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 278004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2781e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool( 278204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 278304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkQueryPoolCreateInfo* pCreateInfo, 27843fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 278504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool* pQueryPool); 278604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2787e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool( 278804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 278903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkQueryPool queryPool, 27903fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 279104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2792e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults( 279304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 279404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 2795f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 279604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount, 2797a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall size_t dataSize, 279804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void* pData, 2799a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall VkDeviceSize stride, 280004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryResultFlags flags); 280104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2802e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer( 280304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 280404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferCreateInfo* pCreateInfo, 28053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 280604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer* pBuffer); 280704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2808e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyBuffer( 280904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 281003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkBuffer buffer, 28113fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 281204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2813e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView( 281404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 281504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferViewCreateInfo* pCreateInfo, 28163fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 281704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBufferView* pView); 281804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2819e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyBufferView( 282004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 282103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkBufferView bufferView, 28223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 282304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2824e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateImage( 282504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 282604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageCreateInfo* pCreateInfo, 28273fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 282804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage* pImage); 282904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2830e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyImage( 283104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 283203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkImage image, 28333fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 283404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2835e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout( 283604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 283704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 283804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresource* pSubresource, 283904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSubresourceLayout* pLayout); 284004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2841e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView( 284204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 284304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageViewCreateInfo* pCreateInfo, 28443fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 284504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageView* pView); 284604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2847e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyImageView( 284804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 284903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkImageView imageView, 28503fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 285104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2852e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule( 285304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 285404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkShaderModuleCreateInfo* pCreateInfo, 28553fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 285604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkShaderModule* pShaderModule); 285704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2858e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule( 285904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 286003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkShaderModule shaderModule, 28613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 286204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2863e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache( 286404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 286504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineCacheCreateInfo* pCreateInfo, 28663fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 286704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache* pPipelineCache); 286804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2869e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache( 287004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 287103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipelineCache pipelineCache, 28723fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 287304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2874e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData( 287504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 287604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 2877a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall size_t* pDataSize, 287804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void* pData); 287904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2880e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches( 288104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 28823fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineCache dstCache, 288304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t srcCacheCount, 288404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineCache* pSrcCaches); 288504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2886e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines( 288704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 288804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 288903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t createInfoCount, 289004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkGraphicsPipelineCreateInfo* pCreateInfos, 28913fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 289204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline* pPipelines); 289304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2894e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines( 289504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 289604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 289703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t createInfoCount, 289804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkComputePipelineCreateInfo* pCreateInfos, 28993fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 290004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline* pPipelines); 290104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2902e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipeline( 290304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 290403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipeline pipeline, 29053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 290604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2907e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout( 290804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 290904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineLayoutCreateInfo* pCreateInfo, 29103fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 291104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout* pPipelineLayout); 291204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2913e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout( 291404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 291503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipelineLayout pipelineLayout, 29163fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 291704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2918e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler( 291904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 292004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkSamplerCreateInfo* pCreateInfo, 29213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 292204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSampler* pSampler); 292304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2924e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySampler( 292504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 292603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkSampler sampler, 29273fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 292804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2929e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout( 293004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 293104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSetLayoutCreateInfo* pCreateInfo, 29323fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 293304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorSetLayout* pSetLayout); 293404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2935e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout( 293604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 293703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDescriptorSetLayout descriptorSetLayout, 29383fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 293904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2940e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool( 294104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 294204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorPoolCreateInfo* pCreateInfo, 29433fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 294404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorPool* pDescriptorPool); 294504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2946e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool( 294704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 294803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDescriptorPool descriptorPool, 29493fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 295004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2951e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool( 295204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 2953fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VkDescriptorPool descriptorPool, 2954fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VkDescriptorPoolResetFlags flags); 295504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2956e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets( 295704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 29583fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkDescriptorSetAllocateInfo* pAllocateInfo, 29595ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkDescriptorSet* pDescriptorSets); 296004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2961e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets( 296204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 296304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorPool descriptorPool, 296403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t descriptorSetCount, 296504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSet* pDescriptorSets); 296604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2967e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets( 296804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 2969b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t descriptorWriteCount, 297004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkWriteDescriptorSet* pDescriptorWrites, 2971b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t descriptorCopyCount, 297204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkCopyDescriptorSet* pDescriptorCopies); 297304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2974e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer( 297504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 297604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFramebufferCreateInfo* pCreateInfo, 29773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 297804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFramebuffer* pFramebuffer); 297904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2980e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer( 298104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 298203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkFramebuffer framebuffer, 29833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 298404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2985e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass( 298604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 298704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkRenderPassCreateInfo* pCreateInfo, 29883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 298904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkRenderPass* pRenderPass); 299004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2991e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass( 299204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 299303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkRenderPass renderPass, 29943fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 299504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2996e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity( 299704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 299804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkRenderPass renderPass, 299904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtent2D* pGranularity); 300004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3001e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool( 300204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 30033fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandPoolCreateInfo* pCreateInfo, 30043fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 30053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandPool* pCommandPool); 300604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3007e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool( 300804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 300965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 30103fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 301104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3012e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool( 301304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 301465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 30153fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandPoolResetFlags flags); 301604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3017e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers( 301804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 30193fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBufferAllocateInfo* pAllocateInfo, 30203fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer* pCommandBuffers); 302104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3022e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers( 302304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 302465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 302503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t commandBufferCount, 30263fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBuffer* pCommandBuffers); 302704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3028e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer( 30293fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30303fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBufferBeginInfo* pBeginInfo); 303104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3032e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer( 30333fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer); 303404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3035e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer( 30363fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBufferResetFlags flags); 303804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3039e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline( 30403fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 304104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineBindPoint pipelineBindPoint, 304204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline pipeline); 304304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3044e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetViewport( 30453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3046f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstViewport, 30475ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t viewportCount, 30485ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkViewport* pViewports); 30495ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3050e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetScissor( 30513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3052f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstScissor, 30535ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t scissorCount, 30545ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkRect2D* pScissors); 30555ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3056e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth( 30573fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30585ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float lineWidth); 30595ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3060e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias( 30613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3062a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall float depthBiasConstantFactor, 30635ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float depthBiasClamp, 3064a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall float depthBiasSlopeFactor); 306504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3066e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants( 30673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3068b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall const float blendConstants[4]); 306904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3070e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds( 30713fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30725ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float minDepthBounds, 30735ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float maxDepthBounds); 307404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3075e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask( 30763fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30775ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 307865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t compareMask); 30795ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3080e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask( 30813fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30825ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 308365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t writeMask); 30845ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3085e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference( 30863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30875ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 308865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t reference); 308904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3090e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets( 30913fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 309204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineBindPoint pipelineBindPoint, 309304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout layout, 309404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t firstSet, 309503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t descriptorSetCount, 309604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSet* pDescriptorSets, 309704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t dynamicOffsetCount, 309804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const uint32_t* pDynamicOffsets); 309904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3100e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer( 31013fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 310204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 310304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 310404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkIndexType indexType); 310504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3106e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers( 31073fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3108f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstBinding, 310904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t bindingCount, 311004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBuffer* pBuffers, 311104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDeviceSize* pOffsets); 311204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3113e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDraw( 31143fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 311504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t vertexCount, 31165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t instanceCount, 31175ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstVertex, 31185ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstInstance); 311904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3120e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed( 31213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 312204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t indexCount, 31235ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t instanceCount, 31245ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstIndex, 312504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall int32_t vertexOffset, 31265ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstInstance); 312704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3128e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect( 31293fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 313004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 313104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 313203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t drawCount, 313304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t stride); 313404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3135e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect( 31363fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 313704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 313804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 313903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t drawCount, 314004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t stride); 314104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3142e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDispatch( 31433fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3144ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountX, 3145ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountY, 3146ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountZ); 314704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3148e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect( 31493fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 315004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 315104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset); 315204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3153e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer( 31543fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 315504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer srcBuffer, 31563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 315704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 315804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferCopy* pRegions); 315904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3160e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyImage( 31613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 316204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 316304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 31643fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 31653fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 316604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 316704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageCopy* pRegions); 316804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3169e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBlitImage( 31703fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 317104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 317204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 31733fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 31743fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 317504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 317604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageBlit* pRegions, 317723ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VkFilter filter); 317804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3179e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage( 31803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 318104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer srcBuffer, 31823fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 31833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 318404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 318504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferImageCopy* pRegions); 318604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3187e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer( 31883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 318904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 319004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 31913fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 319204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 319304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferImageCopy* pRegions); 319404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3195e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer( 31963fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 31973fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 31983fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 319904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize dataSize, 320056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall const void* pData); 320104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3202e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer( 32033fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 32043fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 32053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 3206b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkDeviceSize size, 320704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t data); 320804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3209e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage( 32103fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 321104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 321204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout imageLayout, 321304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkClearColorValue* pColor, 321404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rangeCount, 321504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresourceRange* pRanges); 321604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3217e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage( 32183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 321904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 322004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout imageLayout, 32215ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkClearDepthStencilValue* pDepthStencil, 322204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rangeCount, 322304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresourceRange* pRanges); 322404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3225e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments( 32263fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3227ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall uint32_t attachmentCount, 3228ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall const VkClearAttachment* pAttachments, 322904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rectCount, 3230a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall const VkClearRect* pRects); 323104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3232e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResolveImage( 32333fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 323404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 323504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 32363fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 32373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 323804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 323904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageResolve* pRegions); 324004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3241e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetEvent( 32423fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 324304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event, 324404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags stageMask); 324504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3246e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResetEvent( 32473fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 324804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event, 324904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags stageMask); 325004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3251e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents( 32523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 325304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t eventCount, 325404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkEvent* pEvents, 325504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags srcStageMask, 32563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineStageFlags dstStageMask, 32573fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryBarrierCount, 32583dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkMemoryBarrier* pMemoryBarriers, 32593dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t bufferMemoryBarrierCount, 32603dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkBufferMemoryBarrier* pBufferMemoryBarriers, 32613dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t imageMemoryBarrierCount, 32623dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkImageMemoryBarrier* pImageMemoryBarriers); 326304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3264e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier( 32653fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 326604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags srcStageMask, 32673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineStageFlags dstStageMask, 3268dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall VkDependencyFlags dependencyFlags, 32693fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryBarrierCount, 32703dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkMemoryBarrier* pMemoryBarriers, 32713dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t bufferMemoryBarrierCount, 32723dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkBufferMemoryBarrier* pBufferMemoryBarriers, 32733dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t imageMemoryBarrierCount, 32743dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkImageMemoryBarrier* pImageMemoryBarriers); 327504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3276e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery( 32773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 327804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 32793dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query, 328004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryControlFlags flags); 328104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3282e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdEndQuery( 32833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 328404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 32853dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query); 328604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3287e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool( 32883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 328904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 3290f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 329104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount); 329204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3293e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp( 32943fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 32956f39a6d1c6202b5d1bb0aa0dc9b2e130e5b73666Jesse Hall VkPipelineStageFlagBits pipelineStage, 3296a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VkQueryPool queryPool, 32973dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query); 329804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3299e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults( 33003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 330104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 3302f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 330304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount, 33043fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 33053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 3306a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall VkDeviceSize stride, 330704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryResultFlags flags); 330804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3309e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPushConstants( 33103fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 331104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout layout, 331204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkShaderStageFlags stageFlags, 331303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t offset, 331403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t size, 3315f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall const void* pValues); 331604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3317e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass( 33183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 331904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkRenderPassBeginInfo* pRenderPassBegin, 332065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkSubpassContents contents); 332104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3322e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass( 33233fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 332465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkSubpassContents contents); 332504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3326e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass( 33273fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer); 332804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3329e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands( 33303fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 33313dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t commandBufferCount, 33323fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBuffer* pCommandBuffers); 333304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 333404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3335091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_surface 1 33363fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR) 33371356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 333833faaad096afbd0b103bd1284ce5b78cce74aa01Jesse Hall#define VK_KHR_SURFACE_SPEC_VERSION 25 33393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface" 33402676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_COLORSPACE_SRGB_NONLINEAR_KHR VK_COLOR_SPACE_SRGB_NONLINEAR_KHR 33411356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33421356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33433e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkColorSpaceKHR { 33442676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0, 3345bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT = 1000104001, 3346bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT = 1000104002, 3347c45673f8f14ecbcf49683ef7dd62dd4123a57fe5Courtney Goeltzenleuchter VK_COLOR_SPACE_DCI_P3_LINEAR_EXT = 1000104003, 3348c45673f8f14ecbcf49683ef7dd62dd4123a57fe5Courtney Goeltzenleuchter VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT = 1000104004, 3349c45673f8f14ecbcf49683ef7dd62dd4123a57fe5Courtney Goeltzenleuchter VK_COLOR_SPACE_BT709_LINEAR_EXT = 1000104005, 3350c45673f8f14ecbcf49683ef7dd62dd4123a57fe5Courtney Goeltzenleuchter VK_COLOR_SPACE_BT709_NONLINEAR_EXT = 1000104006, 3351c45673f8f14ecbcf49683ef7dd62dd4123a57fe5Courtney Goeltzenleuchter VK_COLOR_SPACE_BT2020_LINEAR_EXT = 1000104007, 3352c45673f8f14ecbcf49683ef7dd62dd4123a57fe5Courtney Goeltzenleuchter VK_COLOR_SPACE_HDR10_ST2084_EXT = 1000104008, 3353c45673f8f14ecbcf49683ef7dd62dd4123a57fe5Courtney Goeltzenleuchter VK_COLOR_SPACE_DOLBYVISION_EXT = 1000104009, 3354c45673f8f14ecbcf49683ef7dd62dd4123a57fe5Courtney Goeltzenleuchter VK_COLOR_SPACE_HDR10_HLG_EXT = 1000104010, 33557f558ede108cdb5579e89ca7137013279fa9b1b7Courtney Goeltzenleuchter VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT = 1000104011, 33567f558ede108cdb5579e89ca7137013279fa9b1b7Courtney Goeltzenleuchter VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT = 1000104012, 3357bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_PASS_THROUGH_EXT = 1000104013, 3358edc88e78a30ca412a0a085a21f1fc1be7be5081fCourtney Goeltzenleuchter VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT = 1000104014, 33592676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_BEGIN_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR, 33602676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_END_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR, 33612676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_RANGE_SIZE_KHR = (VK_COLOR_SPACE_SRGB_NONLINEAR_KHR - VK_COLOR_SPACE_SRGB_NONLINEAR_KHR + 1), 33622676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_MAX_ENUM_KHR = 0x7FFFFFFF 33631356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkColorSpaceKHR; 33641356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33653e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPresentModeKHR { 33661356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_IMMEDIATE_KHR = 0, 33671356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_MAILBOX_KHR = 1, 33681356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_FIFO_KHR = 2, 336903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3, 33701d5f68c10560a82fd3278e17e934ee3bff328374Chris Forbes VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR = 1000111000, 33711d5f68c10560a82fd3278e17e934ee3bff328374Chris Forbes VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR = 1000111001, 33722676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PRESENT_MODE_BEGIN_RANGE_KHR = VK_PRESENT_MODE_IMMEDIATE_KHR, 33732676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PRESENT_MODE_END_RANGE_KHR = VK_PRESENT_MODE_FIFO_RELAXED_KHR, 33742676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PRESENT_MODE_RANGE_SIZE_KHR = (VK_PRESENT_MODE_FIFO_RELAXED_KHR - VK_PRESENT_MODE_IMMEDIATE_KHR + 1), 33752676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PRESENT_MODE_MAX_ENUM_KHR = 0x7FFFFFFF 33761356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkPresentModeKHR; 33771356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33781356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSurfaceTransformFlagBitsKHR { 3380f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 0x00000001, 33819ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002, 33829ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004, 33839ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008, 33849ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010, 33859ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020, 33869ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040, 33879ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080, 33881356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100, 33892676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF 33901356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSurfaceTransformFlagBitsKHR; 33911356b0d3179254a7a27e88abb2d2500385469f14Jesse Halltypedef VkFlags VkSurfaceTransformFlagsKHR; 33921356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33933e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCompositeAlphaFlagBitsKHR { 3394a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 0x00000001, 3395a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 0x00000002, 3396a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 0x00000004, 3397a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 0x00000008, 33982676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF 3399a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkCompositeAlphaFlagBitsKHR; 3400a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkCompositeAlphaFlagsKHR; 3401a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 34023e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSurfaceCapabilitiesKHR { 3403563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t minImageCount; 3404563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageCount; 3405563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D currentExtent; 3406563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minImageExtent; 3407563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxImageExtent; 3408563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageArrayLayers; 3409563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagsKHR supportedTransforms; 3410563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR currentTransform; 3411563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompositeAlphaFlagsKHR supportedCompositeAlpha; 3412563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags supportedUsageFlags; 3413b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall} VkSurfaceCapabilitiesKHR; 34141356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 34153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSurfaceFormatKHR { 3416563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 3417563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorSpaceKHR colorSpace; 34181356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSurfaceFormatKHR; 34191356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3420b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3421f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator); 3422e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported); 3423e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities); 3424e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats); 3425e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes); 3426b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3427563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3428e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR( 3429f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkInstance instance, 3430f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSurfaceKHR surface, 34310e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator); 3432b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3433e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR( 3434b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3435b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t queueFamilyIndex, 3436b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3437b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkBool32* pSupported); 3438b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3439e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR( 3440b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3441b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3442b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceCapabilitiesKHR* pSurfaceCapabilities); 3443b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3444e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR( 3445b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3446b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3447b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t* pSurfaceFormatCount, 3448b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceFormatKHR* pSurfaceFormats); 3449b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3450e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR( 3451b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3452b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3453b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t* pPresentModeCount, 3454b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPresentModeKHR* pPresentModes); 3455b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall#endif 3456b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3457091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_swapchain 1 34583fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR) 3459b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 34602676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_KHR_SWAPCHAIN_SPEC_VERSION 68 34613e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain" 3462b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3463ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 3464ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkSwapchainCreateFlagBitsKHR { 3465ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX = 0x00000001, 3466ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF 3467ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkSwapchainCreateFlagBitsKHR; 3468f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkSwapchainCreateFlagsKHR; 3469f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall 34703e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSwapchainCreateInfoKHR { 3471563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3472563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3473563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSwapchainCreateFlagsKHR flags; 3474563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceKHR surface; 3475563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t minImageCount; 3476563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat imageFormat; 3477563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorSpaceKHR imageColorSpace; 3478563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D imageExtent; 3479563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t imageArrayLayers; 3480563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags imageUsage; 3481563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode imageSharingMode; 3482563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 3483563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 3484563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR preTransform; 3485563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompositeAlphaFlagBitsKHR compositeAlpha; 3486563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPresentModeKHR presentMode; 3487563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 clipped; 3488563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSwapchainKHR oldSwapchain; 34891356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSwapchainCreateInfoKHR; 34901356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 34913e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPresentInfoKHR { 3492563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3493563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3494563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t waitSemaphoreCount; 3495563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pWaitSemaphores; 3496563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t swapchainCount; 3497563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSwapchainKHR* pSwapchains; 3498563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pImageIndices; 3499563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkResult* pResults; 35001356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkPresentInfoKHR; 35011356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35021356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3503f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain); 3504f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator); 3505f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainImagesKHR)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages); 3506f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex); 3507f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueuePresentKHR)(VkQueue queue, const VkPresentInfoKHR* pPresentInfo); 35081356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3509563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3510e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR( 3511f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3512f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkSwapchainCreateInfoKHR* pCreateInfo, 35130e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 3514f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR* pSwapchain); 35151356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3516e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR( 3517f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3518f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 35190e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator); 35201356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3521e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR( 3522f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3523f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 3524f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t* pSwapchainImageCount, 3525f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkImage* pSwapchainImages); 35261356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3527e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR( 3528f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3529f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 3530f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint64_t timeout, 3531f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSemaphore semaphore, 3532f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkFence fence, 3533f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t* pImageIndex); 35341356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3535e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR( 3536f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkQueue queue, 3537f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkPresentInfoKHR* pPresentInfo); 35381356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 35391356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3540091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_display 1 35413fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR) 35423fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayModeKHR) 35431356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3544543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_DISPLAY_SPEC_VERSION 21 35453e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_DISPLAY_EXTENSION_NAME "VK_KHR_display" 35461356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35471356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35483e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDisplayPlaneAlphaFlagBitsKHR { 3549f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 0x00000001, 3550f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 0x00000002, 3551f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004, 3552f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008, 35532676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF 35541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPlaneAlphaFlagBitsKHR; 35551356b0d3179254a7a27e88abb2d2500385469f14Jesse Halltypedef VkFlags VkDisplayPlaneAlphaFlagsKHR; 35562676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef VkFlags VkDisplayModeCreateFlagsKHR; 3557f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkDisplaySurfaceCreateFlagsKHR; 35581356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPropertiesKHR { 3560563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayKHR display; 3561563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* displayName; 3562563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D physicalDimensions; 3563563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D physicalResolution; 3564563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagsKHR supportedTransforms; 3565563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 planeReorderPossible; 3566563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 persistentContent; 35671356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPropertiesKHR; 35681356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModeParametersKHR { 3570563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D visibleRegion; 3571563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t refreshRate; 3572a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplayModeParametersKHR; 35731356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModePropertiesKHR { 3575563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeKHR displayMode; 3576563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeParametersKHR parameters; 35771356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayModePropertiesKHR; 35781356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModeCreateInfoKHR { 3580563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3581563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3582563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeCreateFlagsKHR flags; 3583563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeParametersKHR parameters; 35841356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayModeCreateInfoKHR; 35851356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35863e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPlaneCapabilitiesKHR { 3587563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayPlaneAlphaFlagsKHR supportedAlpha; 3588563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D minSrcPosition; 3589563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D maxSrcPosition; 3590563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minSrcExtent; 3591563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxSrcExtent; 3592563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D minDstPosition; 3593563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D maxDstPosition; 3594563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minDstExtent; 3595563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxDstExtent; 3596a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplayPlaneCapabilitiesKHR; 35971356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35983e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPlanePropertiesKHR { 3599563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayKHR currentDisplay; 3600563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t currentStackIndex; 3601b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall} VkDisplayPlanePropertiesKHR; 3602b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 36033e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplaySurfaceCreateInfoKHR { 3604563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3605563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3606563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplaySurfaceCreateFlagsKHR flags; 3607563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeKHR displayMode; 3608563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t planeIndex; 3609563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t planeStackIndex; 3610563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR transform; 3611563380d389732337a84e7455caa01ec955ebee30Jesse Hall float globalAlpha; 3612563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayPlaneAlphaFlagBitsKHR alphaMode; 3613563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D imageExtent; 3614a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplaySurfaceCreateInfoKHR; 36151356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36161356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3617e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties); 3618e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties); 36193dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays); 3620e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties); 36212676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode); 36229ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities); 36230e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 36241356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3625563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3626e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR( 36271356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 362803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 36291356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayPropertiesKHR* pProperties); 36301356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3631e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR( 3632a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3633a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t* pPropertyCount, 3634a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkDisplayPlanePropertiesKHR* pProperties); 3635a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3636e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR( 3637a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 36383dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t planeIndex, 3639f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall uint32_t* pDisplayCount, 3640f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VkDisplayKHR* pDisplays); 3641a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3642e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR( 36431356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 36441356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayKHR display, 364503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 364603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDisplayModePropertiesKHR* pProperties); 36471356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3648e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR( 36491356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 36501356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayKHR display, 36511356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall const VkDisplayModeCreateInfoKHR* pCreateInfo, 36520e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 36531356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayModeKHR* pMode); 36541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3655e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR( 36561356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 36579ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkDisplayModeKHR mode, 36581356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall uint32_t planeIndex, 3659a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkDisplayPlaneCapabilitiesKHR* pCapabilities); 3660a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3661e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR( 3662a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkInstance instance, 3663a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, 36640e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 3665a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkSurfaceKHR* pSurface); 36661356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 36671356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3668091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_display_swapchain 1 3669543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION 9 36703e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain" 36711356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36723e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPresentInfoKHR { 3673563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3674563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3675563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D srcRect; 3676563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D dstRect; 3677563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 persistent; 36781356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPresentInfoKHR; 36791356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36801356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36819ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains); 36829ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall 3683563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 36849ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR( 36859ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkDevice device, 36869ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall uint32_t swapchainCount, 36879ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall const VkSwapchainCreateInfoKHR* pCreateInfos, 36889ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall const VkAllocationCallbacks* pAllocator, 36899ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkSwapchainKHR* pSwapchains); 36909ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall#endif 36911356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3692a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall#ifdef VK_USE_PLATFORM_XLIB_KHR 3693091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_xlib_surface 1 36941356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <X11/Xlib.h> 36951356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3696543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_XLIB_SURFACE_SPEC_VERSION 6 3697091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_XLIB_SURFACE_EXTENSION_NAME "VK_KHR_xlib_surface" 36981356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3699f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkXlibSurfaceCreateFlagsKHR; 3700f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3701f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkXlibSurfaceCreateInfoKHR { 3702563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3703563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3704563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkXlibSurfaceCreateFlagsKHR flags; 3705563380d389732337a84e7455caa01ec955ebee30Jesse Hall Display* dpy; 3706563380d389732337a84e7455caa01ec955ebee30Jesse Hall Window window; 3707f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkXlibSurfaceCreateInfoKHR; 3708f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3709f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3710f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateXlibSurfaceKHR)(VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3711e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID); 37121356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3713563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3714e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR( 37151356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3716f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkXlibSurfaceCreateInfoKHR* pCreateInfo, 37170e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 37181356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3719a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3720e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR( 3721a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3722a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3723a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall Display* dpy, 372465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VisualID visualID); 37251356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 3726a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall#endif /* VK_USE_PLATFORM_XLIB_KHR */ 37271356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 37281356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_XCB_KHR 3729091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_xcb_surface 1 37301356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <xcb/xcb.h> 37311356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3732543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_XCB_SURFACE_SPEC_VERSION 6 37333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_XCB_SURFACE_EXTENSION_NAME "VK_KHR_xcb_surface" 37341356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3735f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkXcbSurfaceCreateFlagsKHR; 3736f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3737f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkXcbSurfaceCreateInfoKHR { 3738563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3739563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3740563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkXcbSurfaceCreateFlagsKHR flags; 3741563380d389732337a84e7455caa01ec955ebee30Jesse Hall xcb_connection_t* connection; 3742563380d389732337a84e7455caa01ec955ebee30Jesse Hall xcb_window_t window; 3743f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkXcbSurfaceCreateInfoKHR; 3744f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3745f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3746f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateXcbSurfaceKHR)(VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3747e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id); 37481356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3749563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3750e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateXcbSurfaceKHR( 37511356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3752f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkXcbSurfaceCreateInfoKHR* pCreateInfo, 37530e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 37541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3755a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3756e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR( 3757a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3758a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3759a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall xcb_connection_t* connection, 3760a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall xcb_visualid_t visual_id); 37611356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 37621356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_XCB_KHR */ 37631356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 37641356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_WAYLAND_KHR 3765091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_wayland_surface 1 37661356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <wayland-client.h> 37671356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3768fdc8ab300de5306a26b7d9c7f12fe3fff41dc913Jesse Hall#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 6 37693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface" 37701356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3771f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkWaylandSurfaceCreateFlagsKHR; 3772f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3773f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkWaylandSurfaceCreateInfoKHR { 3774563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3775563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3776563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkWaylandSurfaceCreateFlagsKHR flags; 3777563380d389732337a84e7455caa01ec955ebee30Jesse Hall struct wl_display* display; 3778563380d389732337a84e7455caa01ec955ebee30Jesse Hall struct wl_surface* surface; 3779f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkWaylandSurfaceCreateInfoKHR; 3780f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3781f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3782f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3783e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display); 37841356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3785563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3786e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR( 37871356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3788f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, 37890e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 37901356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3791a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3792e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR( 3793a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3794a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3795a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall struct wl_display* display); 37961356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 37971356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_WAYLAND_KHR */ 37981356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 37991356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_MIR_KHR 3800091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_mir_surface 1 38011356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <mir_toolkit/client_types.h> 38021356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3803543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_MIR_SURFACE_SPEC_VERSION 4 38043e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_MIR_SURFACE_EXTENSION_NAME "VK_KHR_mir_surface" 38051356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3806f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkMirSurfaceCreateFlagsKHR; 3807f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3808f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkMirSurfaceCreateInfoKHR { 3809563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3810563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3811563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMirSurfaceCreateFlagsKHR flags; 3812563380d389732337a84e7455caa01ec955ebee30Jesse Hall MirConnection* connection; 3813563380d389732337a84e7455caa01ec955ebee30Jesse Hall MirSurface* mirSurface; 3814f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkMirSurfaceCreateInfoKHR; 3815f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3816f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3817f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateMirSurfaceKHR)(VkInstance instance, const VkMirSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3818e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceMirPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, MirConnection* connection); 38191356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3820563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3821e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateMirSurfaceKHR( 38221356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3823f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkMirSurfaceCreateInfoKHR* pCreateInfo, 38240e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 38251356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3826a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3827e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceMirPresentationSupportKHR( 3828a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3829a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3830a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall MirConnection* connection); 38311356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 38321356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_MIR_KHR */ 38331356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 38341356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_ANDROID_KHR 3835091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_android_surface 1 38361356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 383733faaad096afbd0b103bd1284ce5b78cce74aa01Jesse Hall#define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6 38383e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface" 38391356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3840f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkAndroidSurfaceCreateFlagsKHR; 3841f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3842f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkAndroidSurfaceCreateInfoKHR { 3843563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3844563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3845563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAndroidSurfaceCreateFlagsKHR flags; 384682afc95f7ed4e896a15d8b2a20d4f4521ed100c2Alistair Strachan struct ANativeWindow* window; 3847f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkAndroidSurfaceCreateInfoKHR; 3848f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3849f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3850f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 38511356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3852563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3853e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR( 38541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3855f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, 38560e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 38571356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 38581356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 38591356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_ANDROID_KHR */ 38601356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 38611356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHR 3862091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_win32_surface 1 38631356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <windows.h> 38641356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3865543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_WIN32_SURFACE_SPEC_VERSION 5 38663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_WIN32_SURFACE_EXTENSION_NAME "VK_KHR_win32_surface" 38671356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3868f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkWin32SurfaceCreateFlagsKHR; 3869f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3870f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkWin32SurfaceCreateInfoKHR { 3871563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3872563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3873563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkWin32SurfaceCreateFlagsKHR flags; 3874563380d389732337a84e7455caa01ec955ebee30Jesse Hall HINSTANCE hinstance; 3875563380d389732337a84e7455caa01ec955ebee30Jesse Hall HWND hwnd; 3876f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkWin32SurfaceCreateInfoKHR; 3877f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3878f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3879f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3880e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex); 38811356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3882563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3883e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateWin32SurfaceKHR( 38841356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3885f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkWin32SurfaceCreateInfoKHR* pCreateInfo, 38860e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 38871356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3888a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3889e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR( 3890a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3891a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex); 38921356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 38931356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHR */ 38941356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 38952676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_KHR_sampler_mirror_clamp_to_edge 1 38962676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION 1 38972676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge" 38982676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 38991194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39001194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#define VK_KHR_get_physical_device_properties2 1 39011194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION 1 39021194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME "VK_KHR_get_physical_device_properties2" 39031194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39041194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceFeatures2KHR { 39051194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39061194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39071194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceFeatures features; 39081194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceFeatures2KHR; 39091194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39101194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceProperties2KHR { 39111194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39121194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39131194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceProperties properties; 39141194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceProperties2KHR; 39151194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39161194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkFormatProperties2KHR { 39171194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39181194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39191194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormatProperties formatProperties; 39201194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkFormatProperties2KHR; 39211194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39221194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkImageFormatProperties2KHR { 39231194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39241194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39251194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageFormatProperties imageFormatProperties; 39261194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkImageFormatProperties2KHR; 39271194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39281194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceImageFormatInfo2KHR { 39291194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39301194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes const void* pNext; 39311194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormat format; 39321194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageType type; 39331194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageTiling tiling; 39341194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageUsageFlags usage; 39351194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageCreateFlags flags; 39361194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceImageFormatInfo2KHR; 39371194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39381194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkQueueFamilyProperties2KHR { 39391194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39401194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39411194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkQueueFamilyProperties queueFamilyProperties; 39421194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkQueueFamilyProperties2KHR; 39431194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39441194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceMemoryProperties2KHR { 39451194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39461194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39471194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceMemoryProperties memoryProperties; 39481194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceMemoryProperties2KHR; 39491194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39501194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkSparseImageFormatProperties2KHR { 39511194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39521194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39531194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkSparseImageFormatProperties properties; 39541194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkSparseImageFormatProperties2KHR; 39551194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39561194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceSparseImageFormatInfo2KHR { 39571194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39581194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes const void* pNext; 39591194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormat format; 39601194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageType type; 39611194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkSampleCountFlagBits samples; 39621194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageUsageFlags usage; 39631194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageTiling tiling; 39641194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceSparseImageFormatInfo2KHR; 39651194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39661194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39671194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2KHR* pFeatures); 39681194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2KHR* pProperties); 39691194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2KHR)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2KHR* pFormatProperties); 39701194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2KHR* pImageFormatInfo, VkImageFormatProperties2KHR* pImageFormatProperties); 39711194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2KHR* pQueueFamilyProperties); 39721194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2KHR* pMemoryProperties); 39731194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2KHR* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2KHR* pProperties); 39741194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39751194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#ifndef VK_NO_PROTOTYPES 39761194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2KHR( 39771194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39781194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceFeatures2KHR* pFeatures); 39791194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39801194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2KHR( 39811194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39821194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceProperties2KHR* pProperties); 39831194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39841194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2KHR( 39851194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39861194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormat format, 39871194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormatProperties2KHR* pFormatProperties); 39881194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39891194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2KHR( 39901194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39911194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes const VkPhysicalDeviceImageFormatInfo2KHR* pImageFormatInfo, 39921194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageFormatProperties2KHR* pImageFormatProperties); 39931194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39941194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2KHR( 39951194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39961194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes uint32_t* pQueueFamilyPropertyCount, 39971194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkQueueFamilyProperties2KHR* pQueueFamilyProperties); 39981194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39991194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2KHR( 40001194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 40011194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceMemoryProperties2KHR* pMemoryProperties); 40021194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 40031194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2KHR( 40041194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 40051194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes const VkPhysicalDeviceSparseImageFormatInfo2KHR* pFormatInfo, 40061194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes uint32_t* pPropertyCount, 40071194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkSparseImageFormatProperties2KHR* pProperties); 40081194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#endif 40091194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 401077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_shader_draw_parameters 1 401177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION 1 401277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME "VK_KHR_shader_draw_parameters" 4013cb35113761ae7afc26c7bffc529b590575a9f4d7Ian Elliott 4014cb35113761ae7afc26c7bffc529b590575a9f4d7Ian Elliott 401577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_maintenance1 1 401677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_MAINTENANCE1_SPEC_VERSION 1 401777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_MAINTENANCE1_EXTENSION_NAME "VK_KHR_maintenance1" 40182676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 401977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkFlags VkCommandPoolTrimFlagsKHR; 40202e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes 402177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef void (VKAPI_PTR *PFN_vkTrimCommandPoolKHR)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags); 40222e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes 40232e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes#ifndef VK_NO_PROTOTYPES 402477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR void VKAPI_CALL vkTrimCommandPoolKHR( 40252e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes VkDevice device, 402677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkCommandPool commandPool, 402777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkCommandPoolTrimFlagsKHR flags); 40282e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes#endif 40292e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes 4030ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_push_descriptor 1 4031ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 1 4032ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor" 4033ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4034ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDevicePushDescriptorPropertiesKHR { 4035ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4036ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4037ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t maxPushDescriptors; 4038ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDevicePushDescriptorPropertiesKHR; 4039ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4040ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4041ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetKHR)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites); 4042ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4043ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4044ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetKHR( 4045ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 4046ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineBindPoint pipelineBindPoint, 4047ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineLayout layout, 4048ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t set, 4049ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t descriptorWriteCount, 4050ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkWriteDescriptorSet* pDescriptorWrites); 4051ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4052ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4053f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall#define VK_KHR_incremental_present 1 4054f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall#define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 1 4055f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall#define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present" 4056f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall 4057f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Halltypedef struct VkRectLayerKHR { 4058f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall VkOffset2D offset; 4059f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall VkExtent2D extent; 4060f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall uint32_t layer; 4061f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall} VkRectLayerKHR; 4062f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall 4063f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Halltypedef struct VkPresentRegionKHR { 4064f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall uint32_t rectangleCount; 4065f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall const VkRectLayerKHR* pRectangles; 4066f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall} VkPresentRegionKHR; 4067f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall 4068f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Halltypedef struct VkPresentRegionsKHR { 4069f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall VkStructureType sType; 4070f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall const void* pNext; 4071f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall uint32_t swapchainCount; 4072f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall const VkPresentRegionKHR* pRegions; 4073f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall} VkPresentRegionsKHR; 4074f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall 4075f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall 4076f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall 4077ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_descriptor_update_template 1 4078ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplateKHR) 4079ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4080ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 1 4081ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template" 4082ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4083ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4084ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkDescriptorUpdateTemplateTypeKHR { 4085ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = 0, 4086ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1, 4087ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR, 4088ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR, 4089ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE_KHR = (VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR + 1), 4090ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF 4091ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDescriptorUpdateTemplateTypeKHR; 4092ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4093ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkDescriptorUpdateTemplateCreateFlagsKHR; 4094ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4095ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDescriptorUpdateTemplateEntryKHR { 4096ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t dstBinding; 4097ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t dstArrayElement; 4098ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t descriptorCount; 4099ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorType descriptorType; 4100ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall size_t offset; 4101ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall size_t stride; 4102ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDescriptorUpdateTemplateEntryKHR; 4103ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4104ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDescriptorUpdateTemplateCreateInfoKHR { 4105ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4106ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4107ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateCreateFlagsKHR flags; 4108ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t descriptorUpdateEntryCount; 4109ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkDescriptorUpdateTemplateEntryKHR* pDescriptorUpdateEntries; 4110ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateTypeKHR templateType; 4111ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorSetLayout descriptorSetLayout; 4112ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineBindPoint pipelineBindPoint; 4113ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineLayout pipelineLayout; 4114ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t set; 4115ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDescriptorUpdateTemplateCreateInfoKHR; 4116ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4117ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4118ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplateKHR)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate); 4119ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator); 4120ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData); 4121ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData); 4122ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4123ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4124ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR( 4125ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4126ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, 4127ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAllocationCallbacks* pAllocator, 4128ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate); 4129ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4130ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR( 4131ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4132ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, 4133ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAllocationCallbacks* pAllocator); 4134ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4135ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR( 4136ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4137ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorSet descriptorSet, 4138ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, 4139ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pData); 4140ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4141ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetWithTemplateKHR( 4142ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 4143ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, 4144ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineLayout layout, 4145ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t set, 4146ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pData); 4147ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4148ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 414905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#define VK_KHR_shared_presentable_image 1 415005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1 415105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image" 415205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 415305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Halltypedef struct VkSharedPresentSurfaceCapabilitiesKHR { 415405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkStructureType sType; 415505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall void* pNext; 415605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkImageUsageFlags sharedPresentSupportedUsageFlags; 415705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall} VkSharedPresentSurfaceCapabilitiesKHR; 415805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 415905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 416005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain); 416105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 416205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#ifndef VK_NO_PROTOTYPES 416305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR( 416405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkDevice device, 416505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkSwapchainKHR swapchain); 416605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#endif 416705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 416805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#define VK_KHR_get_surface_capabilities2 1 416905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#define VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION 1 417005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2" 417105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 417205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Halltypedef struct VkPhysicalDeviceSurfaceInfo2KHR { 417305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkStructureType sType; 417405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall const void* pNext; 417505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkSurfaceKHR surface; 417605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall} VkPhysicalDeviceSurfaceInfo2KHR; 417705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 417805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Halltypedef struct VkSurfaceCapabilities2KHR { 417905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkStructureType sType; 418005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall void* pNext; 418105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkSurfaceCapabilitiesKHR surfaceCapabilities; 418205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall} VkSurfaceCapabilities2KHR; 418305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 418405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Halltypedef struct VkSurfaceFormat2KHR { 418505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkStructureType sType; 418605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall void* pNext; 418705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkSurfaceFormatKHR surfaceFormat; 418805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall} VkSurfaceFormat2KHR; 418905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 419005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 419105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities); 419205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats); 419305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 419405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#ifndef VK_NO_PROTOTYPES 419505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2KHR( 419605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkPhysicalDevice physicalDevice, 419705556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, 419805556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkSurfaceCapabilities2KHR* pSurfaceCapabilities); 419905556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 420005556b1dfdd37364c305ba8f9682558c5a6de2ffJesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormats2KHR( 420105556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkPhysicalDevice physicalDevice, 420205556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, 420305556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall uint32_t* pSurfaceFormatCount, 420405556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall VkSurfaceFormat2KHR* pSurfaceFormats); 420505556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall#endif 420605556b1dfdd37364c305ba8f9682558c5a6de2ffJesse Hall 4207e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#define VK_EXT_debug_report 1 4208e2948d83f352b9a093252a06757f76a88f5355d3Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT) 4209e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4210f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall#define VK_EXT_DEBUG_REPORT_SPEC_VERSION 6 4211e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report" 42122676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT 4213e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4214e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4215e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef enum VkDebugReportObjectTypeEXT { 4216e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0, 4217e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1, 4218e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2, 4219e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT = 3, 4220e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT = 4, 4221e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT = 5, 4222e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT = 6, 4223e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT = 7, 4224e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT = 8, 4225e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT = 9, 4226e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT = 10, 4227e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT = 11, 4228e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT = 12, 4229e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT = 13, 4230e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT = 14, 4231e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT = 15, 4232e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT = 16, 4233e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT = 17, 4234e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT = 18, 4235e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT = 19, 4236e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT = 20, 4237e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT = 21, 4238e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT = 22, 4239e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT = 23, 4240e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT = 24, 4241e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT = 25, 4242e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26, 4243e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27, 4244e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = 28, 4245289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29, 4246289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30, 4247289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT = 31, 4248289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT = 32, 4249f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = 1000085000, 42502676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 4251289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT, 4252289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1), 42532676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF 4254e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall} VkDebugReportObjectTypeEXT; 4255e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4256e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef enum VkDebugReportErrorEXT { 4257e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_ERROR_NONE_EXT = 0, 4258e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT = 1, 42592676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_ERROR_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_ERROR_NONE_EXT, 42602676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_ERROR_END_RANGE_EXT = VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT, 42612676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_ERROR_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT - VK_DEBUG_REPORT_ERROR_NONE_EXT + 1), 42622676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_ERROR_MAX_ENUM_EXT = 0x7FFFFFFF 4263e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall} VkDebugReportErrorEXT; 4264e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4265e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4266e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef enum VkDebugReportFlagBitsEXT { 4267e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 0x00000001, 4268e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_WARNING_BIT_EXT = 0x00000002, 4269e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 0x00000004, 4270e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_ERROR_BIT_EXT = 0x00000008, 4271e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_DEBUG_BIT_EXT = 0x00000010, 42722676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF 4273e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall} VkDebugReportFlagBitsEXT; 4274e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef VkFlags VkDebugReportFlagsEXT; 4275e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4276e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkDebugReportCallbackEXT)( 4277e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportFlagsEXT flags, 4278e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportObjectTypeEXT objectType, 4279e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall uint64_t object, 4280e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall size_t location, 4281e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall int32_t messageCode, 4282e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const char* pLayerPrefix, 4283e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const char* pMessage, 4284e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall void* pUserData); 4285e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4286e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4287e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef struct VkDebugReportCallbackCreateInfoEXT { 4288e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkStructureType sType; 4289e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const void* pNext; 4290e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportFlagsEXT flags; 4291e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall PFN_vkDebugReportCallbackEXT pfnCallback; 4292e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall void* pUserData; 4293e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall} VkDebugReportCallbackCreateInfoEXT; 4294e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4295e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4296e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDebugReportCallbackEXT)(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback); 4297e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDebugReportCallbackEXT)(VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator); 4298e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef 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); 4299e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4300e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#ifndef VK_NO_PROTOTYPES 4301e2948d83f352b9a093252a06757f76a88f5355d3Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugReportCallbackEXT( 4302e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkInstance instance, 4303e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, 4304e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const VkAllocationCallbacks* pAllocator, 4305e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportCallbackEXT* pCallback); 4306e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4307e2948d83f352b9a093252a06757f76a88f5355d3Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDebugReportCallbackEXT( 4308e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkInstance instance, 4309e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportCallbackEXT callback, 4310e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const VkAllocationCallbacks* pAllocator); 4311e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4312e2948d83f352b9a093252a06757f76a88f5355d3Jesse HallVKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT( 4313e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkInstance instance, 4314e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportFlagsEXT flags, 4315e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportObjectTypeEXT objectType, 4316e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall uint64_t object, 4317e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall size_t location, 4318e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall int32_t messageCode, 4319e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const char* pLayerPrefix, 4320e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const char* pMessage); 4321e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#endif 4322e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 43232676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_NV_glsl_shader 1 43242676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_NV_GLSL_SHADER_SPEC_VERSION 1 43252676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_NV_GLSL_SHADER_EXTENSION_NAME "VK_NV_glsl_shader" 43262676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43272676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43282676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_IMG_filter_cubic 1 43292676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_IMG_FILTER_CUBIC_SPEC_VERSION 1 43302676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic" 43312676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43322676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43332676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_AMD_rasterization_order 1 43342676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION 1 43352676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME "VK_AMD_rasterization_order" 43362676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43372676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43382676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef enum VkRasterizationOrderAMD { 43392676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_STRICT_AMD = 0, 43402676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_RELAXED_AMD = 1, 43412676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD = VK_RASTERIZATION_ORDER_STRICT_AMD, 43422676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_END_RANGE_AMD = VK_RASTERIZATION_ORDER_RELAXED_AMD, 43432676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD = (VK_RASTERIZATION_ORDER_RELAXED_AMD - VK_RASTERIZATION_ORDER_STRICT_AMD + 1), 43442676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_MAX_ENUM_AMD = 0x7FFFFFFF 43452676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkRasterizationOrderAMD; 43462676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43472676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef struct VkPipelineRasterizationStateRasterizationOrderAMD { 43482676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkStructureType sType; 43492676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pNext; 43502676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkRasterizationOrderAMD rasterizationOrder; 43512676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkPipelineRasterizationStateRasterizationOrderAMD; 43522676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43532676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43542676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 435556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_shader_trinary_minmax 1 435656d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION 1 435756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME "VK_AMD_shader_trinary_minmax" 435856d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 435956d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 436056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_shader_explicit_vertex_parameter 1 436156d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION 1 436256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME "VK_AMD_shader_explicit_vertex_parameter" 436356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 436456d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 43652676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_EXT_debug_marker 1 43668f49fcb42d560de4fcc9224226495b942a94bff4Jesse Hall#define VK_EXT_DEBUG_MARKER_SPEC_VERSION 4 43672676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_EXT_DEBUG_MARKER_EXTENSION_NAME "VK_EXT_debug_marker" 43682676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43692676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef struct VkDebugMarkerObjectNameInfoEXT { 43702676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkStructureType sType; 43712676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pNext; 43722676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugReportObjectTypeEXT objectType; 43732676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall uint64_t object; 43742676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const char* pObjectName; 43752676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkDebugMarkerObjectNameInfoEXT; 43762676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43772676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef struct VkDebugMarkerObjectTagInfoEXT { 43782676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkStructureType sType; 43792676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pNext; 43802676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugReportObjectTypeEXT objectType; 43812676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall uint64_t object; 43822676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall uint64_t tagName; 43832676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall size_t tagSize; 43842676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pTag; 43852676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkDebugMarkerObjectTagInfoEXT; 43862676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43872676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef struct VkDebugMarkerMarkerInfoEXT { 43882676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkStructureType sType; 43892676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pNext; 43902676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const char* pMarkerName; 43912676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall float color[4]; 43922676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkDebugMarkerMarkerInfoEXT; 43932676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43942676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 43952676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectTagEXT)(VkDevice device, VkDebugMarkerObjectTagInfoEXT* pTagInfo); 43962676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectNameEXT)(VkDevice device, VkDebugMarkerObjectNameInfoEXT* pNameInfo); 43972676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerBeginEXT)(VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo); 43982676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerEndEXT)(VkCommandBuffer commandBuffer); 43992676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerInsertEXT)(VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo); 44002676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 44012676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#ifndef VK_NO_PROTOTYPES 44022676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectTagEXT( 44032676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDevice device, 44042676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugMarkerObjectTagInfoEXT* pTagInfo); 44052676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 44062676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectNameEXT( 44072676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDevice device, 44082676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugMarkerObjectNameInfoEXT* pNameInfo); 44092676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 44102676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerBeginEXT( 44112676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkCommandBuffer commandBuffer, 44122676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugMarkerMarkerInfoEXT* pMarkerInfo); 44132676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 44142676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerEndEXT( 44152676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkCommandBuffer commandBuffer); 44162676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 44172676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerInsertEXT( 44182676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkCommandBuffer commandBuffer, 44192676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugMarkerMarkerInfoEXT* pMarkerInfo); 44202676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#endif 44212676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 442256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_gcn_shader 1 442356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_GCN_SHADER_SPEC_VERSION 1 442456d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_GCN_SHADER_EXTENSION_NAME "VK_AMD_gcn_shader" 442556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 442656d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 442756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_NV_dedicated_allocation 1 442856d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION 1 442956d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_NV_dedicated_allocation" 443056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 443156d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Halltypedef struct VkDedicatedAllocationImageCreateInfoNV { 443256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkStructureType sType; 443356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall const void* pNext; 443456d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkBool32 dedicatedAllocation; 443556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall} VkDedicatedAllocationImageCreateInfoNV; 443656d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 443756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Halltypedef struct VkDedicatedAllocationBufferCreateInfoNV { 443856d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkStructureType sType; 443956d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall const void* pNext; 444056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkBool32 dedicatedAllocation; 444156d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall} VkDedicatedAllocationBufferCreateInfoNV; 444256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 444356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Halltypedef struct VkDedicatedAllocationMemoryAllocateInfoNV { 444456d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkStructureType sType; 444556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall const void* pNext; 444656d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkImage image; 444756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkBuffer buffer; 444856d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall} VkDedicatedAllocationMemoryAllocateInfoNV; 444956d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 445056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 445177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 4452289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_draw_indirect_count 1 4453289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION 1 4454289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_AMD_draw_indirect_count" 4455289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4456289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride); 4457289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride); 4458289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4459289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifndef VK_NO_PROTOTYPES 4460289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountAMD( 4461289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer commandBuffer, 4462289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer, 4463289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize offset, 4464289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer countBuffer, 4465289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize countBufferOffset, 4466289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxDrawCount, 4467289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t stride); 4468289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4469289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountAMD( 4470289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer commandBuffer, 4471289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer, 4472289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize offset, 4473289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer countBuffer, 4474289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize countBufferOffset, 4475289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxDrawCount, 4476289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t stride); 4477289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 4478289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4479289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_negative_viewport_height 1 4480289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION 1 4481289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME "VK_AMD_negative_viewport_height" 4482289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4483289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4484289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_gpu_shader_half_float 1 4485289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION 1 4486289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME "VK_AMD_gpu_shader_half_float" 4487289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4488289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4489289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_shader_ballot 1 4490289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_SHADER_BALLOT_SPEC_VERSION 1 4491289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_SHADER_BALLOT_EXTENSION_NAME "VK_AMD_shader_ballot" 4492289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4493289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4494ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_multiview 1 4495ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_MULTIVIEW_SPEC_VERSION 1 4496ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_MULTIVIEW_EXTENSION_NAME "VK_KHX_multiview" 4497ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4498ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkRenderPassMultiviewCreateInfoKHX { 4499ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4500ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4501ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t subpassCount; 4502ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pViewMasks; 4503ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t dependencyCount; 4504ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const int32_t* pViewOffsets; 4505ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t correlationMaskCount; 4506ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pCorrelationMasks; 4507ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkRenderPassMultiviewCreateInfoKHX; 4508ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4509ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceMultiviewFeaturesKHX { 4510ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4511ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4512ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 multiview; 4513ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 multiviewGeometryShader; 4514ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 multiviewTessellationShader; 4515ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceMultiviewFeaturesKHX; 4516ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4517ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceMultiviewPropertiesKHX { 4518ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4519ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4520ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t maxMultiviewViewCount; 4521ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t maxMultiviewInstanceIndex; 4522ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceMultiviewPropertiesKHX; 4523ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4524ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4525ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4526289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_IMG_format_pvrtc 1 4527289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_IMG_FORMAT_PVRTC_SPEC_VERSION 1 4528289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_IMG_FORMAT_PVRTC_EXTENSION_NAME "VK_IMG_format_pvrtc" 4529289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4530289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4531289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_external_memory_capabilities 1 4532289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1 4533289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_NV_external_memory_capabilities" 4534289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4535289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4536289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkExternalMemoryHandleTypeFlagBitsNV { 4537289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 0x00000001, 4538289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 0x00000002, 4539289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 0x00000004, 4540289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 0x00000008, 4541289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF 4542289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExternalMemoryHandleTypeFlagBitsNV; 4543289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkFlags VkExternalMemoryHandleTypeFlagsNV; 4544289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4545289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkExternalMemoryFeatureFlagBitsNV { 4546289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 0x00000001, 4547289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 0x00000002, 4548289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 0x00000004, 4549289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF 4550289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExternalMemoryFeatureFlagBitsNV; 4551289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkFlags VkExternalMemoryFeatureFlagsNV; 4552289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4553289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkExternalImageFormatPropertiesNV { 4554289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageFormatProperties imageFormatProperties; 4555289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryFeatureFlagsNV externalMemoryFeatures; 4556289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes; 4557289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes; 4558289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExternalImageFormatPropertiesNV; 4559289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4560289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4561289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties); 4562289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4563289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifndef VK_NO_PROTOTYPES 4564289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceExternalImageFormatPropertiesNV( 4565289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPhysicalDevice physicalDevice, 4566289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkFormat format, 4567289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageType type, 4568289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageTiling tiling, 4569289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageUsageFlags usage, 4570289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageCreateFlags flags, 4571289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV externalHandleType, 4572289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties); 4573289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 4574289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4575289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_external_memory 1 4576289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_SPEC_VERSION 1 4577289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME "VK_NV_external_memory" 4578289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4579289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkExternalMemoryImageCreateInfoNV { 4580289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4581289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4582289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV handleTypes; 4583289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExternalMemoryImageCreateInfoNV; 4584289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4585289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkExportMemoryAllocateInfoNV { 4586289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4587289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4588289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV handleTypes; 4589289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExportMemoryAllocateInfoNV; 4590289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4591289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4592289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4593289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifdef VK_USE_PLATFORM_WIN32_KHR 4594289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_external_memory_win32 1 4595289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1 4596289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_NV_external_memory_win32" 4597289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4598289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkImportMemoryWin32HandleInfoNV { 4599289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4600289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4601289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV handleType; 4602289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes HANDLE handle; 4603289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkImportMemoryWin32HandleInfoNV; 4604289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4605289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkExportMemoryWin32HandleInfoNV { 4606289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4607289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4608289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const SECURITY_ATTRIBUTES* pAttributes; 4609289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes DWORD dwAccess; 4610289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExportMemoryWin32HandleInfoNV; 4611289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4612289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4613289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleNV)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle); 4614289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4615289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifndef VK_NO_PROTOTYPES 4616289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleNV( 4617289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 4618289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceMemory memory, 4619289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV handleType, 4620289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes HANDLE* pHandle); 4621289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 4622289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif /* VK_USE_PLATFORM_WIN32_KHR */ 4623289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4624289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifdef VK_USE_PLATFORM_WIN32_KHR 4625289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_win32_keyed_mutex 1 4626289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION 1 4627289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_NV_win32_keyed_mutex" 4628289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4629289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkWin32KeyedMutexAcquireReleaseInfoNV { 4630289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4631289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4632289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t acquireCount; 4633289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkDeviceMemory* pAcquireSyncs; 4634289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint64_t* pAcquireKeys; 4635289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint32_t* pAcquireTimeoutMilliseconds; 4636289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t releaseCount; 4637289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkDeviceMemory* pReleaseSyncs; 4638289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint64_t* pReleaseKeys; 4639289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkWin32KeyedMutexAcquireReleaseInfoNV; 4640289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4641289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4642289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif /* VK_USE_PLATFORM_WIN32_KHR */ 4643289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4644ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_device_group 1 4645ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MAX_DEVICE_GROUP_SIZE_KHX 32 4646ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_DEVICE_GROUP_SPEC_VERSION 1 4647ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_DEVICE_GROUP_EXTENSION_NAME "VK_KHX_device_group" 4648ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4649ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4650ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkPeerMemoryFeatureFlagBitsKHX { 4651ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX = 0x00000001, 4652ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX = 0x00000002, 4653ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX = 0x00000004, 4654ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX = 0x00000008, 4655ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4656ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPeerMemoryFeatureFlagBitsKHX; 4657ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkPeerMemoryFeatureFlagsKHX; 4658ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4659ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkMemoryAllocateFlagBitsKHX { 4660ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX = 0x00000001, 4661ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4662ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMemoryAllocateFlagBitsKHX; 4663ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkMemoryAllocateFlagsKHX; 4664ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4665ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkDeviceGroupPresentModeFlagBitsKHX { 4666ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX = 0x00000001, 4667ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX = 0x00000002, 4668ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX = 0x00000004, 4669ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX = 0x00000008, 4670ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4671ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupPresentModeFlagBitsKHX; 4672ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkDeviceGroupPresentModeFlagsKHX; 4673ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4674ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkMemoryAllocateFlagsInfoKHX { 4675ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4676ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4677ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkMemoryAllocateFlagsKHX flags; 4678ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask; 4679ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMemoryAllocateFlagsInfoKHX; 4680ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4681ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkBindBufferMemoryInfoKHX { 4682ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4683ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4684ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBuffer buffer; 4685ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceMemory memory; 4686ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceSize memoryOffset; 4687ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceIndexCount; 4688ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pDeviceIndices; 4689ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkBindBufferMemoryInfoKHX; 4690ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4691ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkBindImageMemoryInfoKHX { 4692ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4693ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4694ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkImage image; 4695ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceMemory memory; 4696ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceSize memoryOffset; 4697ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceIndexCount; 4698ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pDeviceIndices; 4699ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t SFRRectCount; 4700ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkRect2D* pSFRRects; 4701ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkBindImageMemoryInfoKHX; 4702ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4703ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupRenderPassBeginInfoKHX { 4704ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4705ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4706ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask; 4707ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceRenderAreaCount; 4708ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkRect2D* pDeviceRenderAreas; 4709ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupRenderPassBeginInfoKHX; 4710ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4711ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupCommandBufferBeginInfoKHX { 4712ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4713ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4714ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask; 4715ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupCommandBufferBeginInfoKHX; 4716ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4717ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupSubmitInfoKHX { 4718ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4719ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4720ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t waitSemaphoreCount; 4721ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pWaitSemaphoreDeviceIndices; 4722ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t commandBufferCount; 4723ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pCommandBufferDeviceMasks; 4724ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t signalSemaphoreCount; 4725ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pSignalSemaphoreDeviceIndices; 4726ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupSubmitInfoKHX; 4727ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4728ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupBindSparseInfoKHX { 4729ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4730ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4731ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t resourceDeviceIndex; 4732ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t memoryDeviceIndex; 4733ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupBindSparseInfoKHX; 4734ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4735ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupPresentCapabilitiesKHX { 4736ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4737ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4738ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE_KHX]; 4739ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentModeFlagsKHX modes; 4740ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupPresentCapabilitiesKHX; 4741ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4742ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImageSwapchainCreateInfoKHX { 4743ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4744ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4745ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSwapchainKHR swapchain; 4746ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImageSwapchainCreateInfoKHX; 4747ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4748ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkBindImageMemorySwapchainInfoKHX { 4749ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4750ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4751ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSwapchainKHR swapchain; 4752ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t imageIndex; 4753ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkBindImageMemorySwapchainInfoKHX; 4754ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4755ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkAcquireNextImageInfoKHX { 4756ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4757ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4758ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSwapchainKHR swapchain; 4759ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint64_t timeout; 4760ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore; 4761ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkFence fence; 4762ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask; 4763ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkAcquireNextImageInfoKHX; 4764ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4765ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupPresentInfoKHX { 4766ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4767ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4768ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t swapchainCount; 4769ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pDeviceMasks; 4770ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentModeFlagBitsKHX mode; 4771ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupPresentInfoKHX; 4772ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4773ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupSwapchainCreateInfoKHX { 4774ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4775ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4776ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentModeFlagsKHX modes; 4777ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupSwapchainCreateInfoKHX; 4778ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4779ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4780ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeaturesKHX)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlagsKHX* pPeerMemoryFeatures); 4781ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2KHX)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfoKHX* pBindInfos); 4782ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2KHX)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfoKHX* pBindInfos); 4783ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMaskKHX)(VkCommandBuffer commandBuffer, uint32_t deviceMask); 4784ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupPresentCapabilitiesKHX)(VkDevice device, VkDeviceGroupPresentCapabilitiesKHX* pDeviceGroupPresentCapabilities); 4785ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupSurfacePresentModesKHX)(VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHX* pModes); 4786ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImage2KHX)(VkDevice device, const VkAcquireNextImageInfoKHX* pAcquireInfo, uint32_t* pImageIndex); 4787ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDispatchBaseKHX)(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ); 4788ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDevicePresentRectanglesKHX)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects); 4789ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4790ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4791ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeaturesKHX( 4792ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4793ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t heapIndex, 4794ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t localDeviceIndex, 4795ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t remoteDeviceIndex, 4796ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPeerMemoryFeatureFlagsKHX* pPeerMemoryFeatures); 4797ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4798ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2KHX( 4799ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4800ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t bindInfoCount, 4801ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkBindBufferMemoryInfoKHX* pBindInfos); 4802ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4803ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2KHX( 4804ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4805ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t bindInfoCount, 4806ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkBindImageMemoryInfoKHX* pBindInfos); 4807ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4808ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMaskKHX( 4809ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 4810ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask); 4811ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4812ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupPresentCapabilitiesKHX( 4813ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4814ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentCapabilitiesKHX* pDeviceGroupPresentCapabilities); 4815ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4816ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupSurfacePresentModesKHX( 4817ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4818ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSurfaceKHR surface, 4819ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentModeFlagsKHX* pModes); 4820ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4821ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImage2KHX( 4822ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4823ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAcquireNextImageInfoKHX* pAcquireInfo, 4824ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t* pImageIndex); 4825ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4826ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDispatchBaseKHX( 4827ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 4828ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t baseGroupX, 4829ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t baseGroupY, 4830ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t baseGroupZ, 4831ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountX, 4832ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountY, 4833ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountZ); 4834ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4835ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDevicePresentRectanglesKHX( 4836ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevice, 4837ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSurfaceKHR surface, 4838ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t* pRectCount, 4839ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkRect2D* pRects); 4840ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4841ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4842289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_EXT_validation_flags 1 4843289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_EXT_VALIDATION_FLAGS_SPEC_VERSION 1 4844289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME "VK_EXT_validation_flags" 4845289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4846289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4847289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkValidationCheckEXT { 4848289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_ALL_EXT = 0, 4849289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_BEGIN_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT, 4850289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_END_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT, 4851289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_RANGE_SIZE_EXT = (VK_VALIDATION_CHECK_ALL_EXT - VK_VALIDATION_CHECK_ALL_EXT + 1), 4852289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_MAX_ENUM_EXT = 0x7FFFFFFF 4853289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkValidationCheckEXT; 4854289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4855289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkValidationFlagsEXT { 4856289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4857289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4858289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t disabledValidationCheckCount; 4859289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkValidationCheckEXT* pDisabledValidationChecks; 4860289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkValidationFlagsEXT; 4861289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4862289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4863289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 486477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifdef VK_USE_PLATFORM_VI_NN 486577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_NN_vi_surface 1 486677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_NN_VI_SURFACE_SPEC_VERSION 1 486777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_NN_VI_SURFACE_EXTENSION_NAME "VK_NN_vi_surface" 486877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 486977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkFlags VkViSurfaceCreateFlagsNN; 487077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 487177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkViSurfaceCreateInfoNN { 487277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 487377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 487477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkViSurfaceCreateFlagsNN flags; 487577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall void* window; 487677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkViSurfaceCreateInfoNN; 487777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 487877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 487977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateViSurfaceNN)(VkInstance instance, const VkViSurfaceCreateInfoNN* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 488077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 488177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 488277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateViSurfaceNN( 488377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkInstance instance, 488477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkViSurfaceCreateInfoNN* pCreateInfo, 488577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkAllocationCallbacks* pAllocator, 488677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceKHR* pSurface); 488777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 488877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif /* VK_USE_PLATFORM_VI_NN */ 488977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 489077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_shader_subgroup_ballot 1 489177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION 1 489277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME "VK_EXT_shader_subgroup_ballot" 489377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 489477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 489577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_shader_subgroup_vote 1 489677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION 1 489777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME "VK_EXT_shader_subgroup_vote" 489877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 489977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 4900ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_device_group_creation 1 4901ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_DEVICE_GROUP_CREATION_SPEC_VERSION 1 4902ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME "VK_KHX_device_group_creation" 4903ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4904ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceGroupPropertiesKHX { 4905ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4906f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall void* pNext; 4907ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t physicalDeviceCount; 4908ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE_KHX]; 4909ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 subsetAllocation; 4910ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceGroupPropertiesKHX; 4911ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4912ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupDeviceCreateInfoKHX { 4913ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4914ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4915ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t physicalDeviceCount; 4916ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkPhysicalDevice* pPhysicalDevices; 4917ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupDeviceCreateInfoKHX; 4918ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4919ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4920ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroupsKHX)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupPropertiesKHX* pPhysicalDeviceGroupProperties); 4921ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4922ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4923ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroupsKHX( 4924ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkInstance instance, 4925ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t* pPhysicalDeviceGroupCount, 4926ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDeviceGroupPropertiesKHX* pPhysicalDeviceGroupProperties); 4927ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4928ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4929ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_memory_capabilities 1 4930ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_LUID_SIZE_KHX 8 4931ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1 4932ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_KHX_external_memory_capabilities" 4933ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4934ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4935ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkExternalMemoryHandleTypeFlagBitsKHX { 4936ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHX = 0x00000001, 4937ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHX = 0x00000002, 4938ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHX = 0x00000004, 4939ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHX = 0x00000008, 4940ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHX = 0x00000010, 4941ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHX = 0x00000020, 4942ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHX = 0x00000040, 4943ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4944ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryHandleTypeFlagBitsKHX; 4945ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkExternalMemoryHandleTypeFlagsKHX; 4946ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4947ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkExternalMemoryFeatureFlagBitsKHX { 4948ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHX = 0x00000001, 4949ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHX = 0x00000002, 4950ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHX = 0x00000004, 4951ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4952ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryFeatureFlagBitsKHX; 4953ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkExternalMemoryFeatureFlagsKHX; 4954ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4955ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalMemoryPropertiesKHX { 4956ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryFeatureFlagsKHX externalMemoryFeatures; 4957ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX exportFromImportedHandleTypes; 4958ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX compatibleHandleTypes; 4959ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryPropertiesKHX; 4960ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4961ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceExternalImageFormatInfoKHX { 4962ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4963ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4964ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType; 4965ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceExternalImageFormatInfoKHX; 4966ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4967ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalImageFormatPropertiesKHX { 4968ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4969ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4970ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryPropertiesKHX externalMemoryProperties; 4971ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalImageFormatPropertiesKHX; 4972ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4973ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceExternalBufferInfoKHX { 4974ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4975ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4976ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBufferCreateFlags flags; 4977ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBufferUsageFlags usage; 4978ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType; 4979ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceExternalBufferInfoKHX; 4980ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4981ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalBufferPropertiesKHX { 4982ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4983ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4984ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryPropertiesKHX externalMemoryProperties; 4985ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalBufferPropertiesKHX; 4986ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4987ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceIDPropertiesKHX { 4988ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4989ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4990ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint8_t deviceUUID[VK_UUID_SIZE]; 4991ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint8_t driverUUID[VK_UUID_SIZE]; 4992ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint8_t deviceLUID[VK_LUID_SIZE_KHX]; 4993ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 deviceLUIDValid; 4994ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceIDPropertiesKHX; 4995ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4996ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4997ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHX)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfoKHX* pExternalBufferInfo, VkExternalBufferPropertiesKHX* pExternalBufferProperties); 4998ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4999ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5000ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferPropertiesKHX( 5001ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevice, 5002ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkPhysicalDeviceExternalBufferInfoKHX* pExternalBufferInfo, 5003ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalBufferPropertiesKHX* pExternalBufferProperties); 5004ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5005ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5006ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_memory 1 5007ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_SPEC_VERSION 1 5008ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_EXTENSION_NAME "VK_KHX_external_memory" 5009ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_QUEUE_FAMILY_EXTERNAL_KHX (~0U-1) 5010ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5011ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalMemoryImageCreateInfoKHX { 5012ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5013ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5014ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX handleTypes; 5015ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryImageCreateInfoKHX; 5016ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5017ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalMemoryBufferCreateInfoKHX { 5018ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5019ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5020ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX handleTypes; 5021ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryBufferCreateInfoKHX; 5022ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5023ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExportMemoryAllocateInfoKHX { 5024ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5025ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5026ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX handleTypes; 5027ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExportMemoryAllocateInfoKHX; 5028ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5029ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5030ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5031f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHX 5032ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_memory_win32 1 5033ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1 5034ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_KHX_external_memory_win32" 5035ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5036ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImportMemoryWin32HandleInfoKHX { 5037ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5038ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5039ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType; 5040ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE handle; 5041ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImportMemoryWin32HandleInfoKHX; 5042ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5043ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExportMemoryWin32HandleInfoKHX { 5044ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5045ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5046ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const SECURITY_ATTRIBUTES* pAttributes; 5047ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall DWORD dwAccess; 5048ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall LPCWSTR name; 5049ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExportMemoryWin32HandleInfoKHX; 5050ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5051ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkMemoryWin32HandlePropertiesKHX { 5052ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5053ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 5054ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t memoryTypeBits; 5055ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMemoryWin32HandlePropertiesKHX; 5056ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5057ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5058ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleKHX)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagBitsKHX handleType, HANDLE* pHandle); 5059ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandlePropertiesKHX)(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHX handleType, HANDLE handle, VkMemoryWin32HandlePropertiesKHX* pMemoryWin32HandleProperties); 5060ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5061ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5062ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleKHX( 5063ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5064ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceMemory memory, 5065ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType, 5066ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE* pHandle); 5067ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5068ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandlePropertiesKHX( 5069ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5070ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType, 5071ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE handle, 5072ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkMemoryWin32HandlePropertiesKHX* pMemoryWin32HandleProperties); 5073ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5074f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHX */ 5075ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5076ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_memory_fd 1 5077ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_FD_SPEC_VERSION 1 5078ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_FD_EXTENSION_NAME "VK_KHX_external_memory_fd" 5079ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5080ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImportMemoryFdInfoKHX { 5081ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5082ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5083ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType; 5084ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int fd; 5085ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImportMemoryFdInfoKHX; 5086ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5087ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkMemoryFdPropertiesKHX { 5088ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5089ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 5090ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t memoryTypeBits; 5091ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMemoryFdPropertiesKHX; 5092ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5093ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5094ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdKHX)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagBitsKHX handleType, int* pFd); 5095ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdPropertiesKHX)(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHX handleType, int fd, VkMemoryFdPropertiesKHX* pMemoryFdProperties); 5096ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5097ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5098ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdKHX( 5099ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5100ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceMemory memory, 5101ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType, 5102ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int* pFd); 5103ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5104ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdPropertiesKHX( 5105ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5106ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType, 5107ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int fd, 5108ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkMemoryFdPropertiesKHX* pMemoryFdProperties); 5109ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5110ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5111ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHR 5112ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_win32_keyed_mutex 1 5113ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_WIN32_KEYED_MUTEX_SPEC_VERSION 1 5114ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_KHX_win32_keyed_mutex" 5115ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5116ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkWin32KeyedMutexAcquireReleaseInfoKHX { 5117ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5118ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5119ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t acquireCount; 5120ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkDeviceMemory* pAcquireSyncs; 5121ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint64_t* pAcquireKeys; 5122ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pAcquireTimeouts; 5123ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t releaseCount; 5124ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkDeviceMemory* pReleaseSyncs; 5125ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint64_t* pReleaseKeys; 5126ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkWin32KeyedMutexAcquireReleaseInfoKHX; 5127ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5128ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5129ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHR */ 5130ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5131ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_semaphore_capabilities 1 5132ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION 1 5133ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME "VK_KHX_external_semaphore_capabilities" 5134ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5135ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5136ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkExternalSemaphoreHandleTypeFlagBitsKHX { 5137ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHX = 0x00000001, 5138ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHX = 0x00000002, 5139ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHX = 0x00000004, 5140ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHX = 0x00000008, 5141ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FENCE_FD_BIT_KHX = 0x00000010, 5142ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 5143ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalSemaphoreHandleTypeFlagBitsKHX; 5144ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkExternalSemaphoreHandleTypeFlagsKHX; 5145ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5146ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkExternalSemaphoreFeatureFlagBitsKHX { 5147ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHX = 0x00000001, 5148ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHX = 0x00000002, 5149ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 5150ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalSemaphoreFeatureFlagBitsKHX; 5151ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkExternalSemaphoreFeatureFlagsKHX; 5152ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5153ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceExternalSemaphoreInfoKHX { 5154ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5155ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5156ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagBitsKHX handleType; 5157ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceExternalSemaphoreInfoKHX; 5158ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5159ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalSemaphorePropertiesKHX { 5160ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5161ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 5162ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagsKHX exportFromImportedHandleTypes; 5163ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagsKHX compatibleHandleTypes; 5164ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreFeatureFlagsKHX externalSemaphoreFeatures; 5165ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalSemaphorePropertiesKHX; 5166ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5167ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5168ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHX)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfoKHX* pExternalSemaphoreInfo, VkExternalSemaphorePropertiesKHX* pExternalSemaphoreProperties); 5169ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5170ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5171ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphorePropertiesKHX( 5172ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevice, 5173ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkPhysicalDeviceExternalSemaphoreInfoKHX* pExternalSemaphoreInfo, 5174ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphorePropertiesKHX* pExternalSemaphoreProperties); 5175ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5176ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5177ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_semaphore 1 5178ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_SPEC_VERSION 1 5179ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_EXTENSION_NAME "VK_KHX_external_semaphore" 5180ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5181ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExportSemaphoreCreateInfoKHX { 5182ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5183ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5184ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagsKHX handleTypes; 5185ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExportSemaphoreCreateInfoKHX; 5186ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5187ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5188ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5189ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHX 5190ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_semaphore_win32 1 5191ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION 1 5192ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME "VK_KHX_external_semaphore_win32" 5193ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5194ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImportSemaphoreWin32HandleInfoKHX { 5195ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5196ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5197ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore; 5198ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagsKHX handleType; 5199ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE handle; 5200ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImportSemaphoreWin32HandleInfoKHX; 5201ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5202ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExportSemaphoreWin32HandleInfoKHX { 5203ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5204ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5205ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const SECURITY_ATTRIBUTES* pAttributes; 5206ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall DWORD dwAccess; 5207ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall LPCWSTR name; 5208ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExportSemaphoreWin32HandleInfoKHX; 5209ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5210ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkD3D12FenceSubmitInfoKHX { 5211ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5212ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5213ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t waitSemaphoreValuesCount; 5214ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint64_t* pWaitSemaphoreValues; 5215ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t signalSemaphoreValuesCount; 5216ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint64_t* pSignalSemaphoreValues; 5217ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkD3D12FenceSubmitInfoKHX; 5218ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5219ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5220ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreWin32HandleKHX)(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHX* pImportSemaphoreWin32HandleInfo); 5221ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreWin32HandleKHX)(VkDevice device, VkSemaphore semaphore, VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, HANDLE* pHandle); 5222ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5223ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5224ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreWin32HandleKHX( 5225ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5226ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkImportSemaphoreWin32HandleInfoKHX* pImportSemaphoreWin32HandleInfo); 5227ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5228ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreWin32HandleKHX( 5229ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5230ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore, 5231ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, 5232ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE* pHandle); 5233ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5234ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHX */ 5235ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5236ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_semaphore_fd 1 5237ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION 1 5238ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME "VK_KHX_external_semaphore_fd" 5239ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5240ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImportSemaphoreFdInfoKHX { 5241ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5242ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5243ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore; 5244ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagBitsKHX handleType; 5245ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int fd; 5246ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImportSemaphoreFdInfoKHX; 5247ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5248ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5249ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreFdKHX)(VkDevice device, const VkImportSemaphoreFdInfoKHX* pImportSemaphoreFdInfo); 5250ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreFdKHX)(VkDevice device, VkSemaphore semaphore, VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, int* pFd); 5251ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5252ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5253ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreFdKHX( 5254ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5255ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkImportSemaphoreFdInfoKHX* pImportSemaphoreFdInfo); 5256ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5257ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreFdKHX( 5258ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5259ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore, 5260ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, 5261ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int* pFd); 5262ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5263ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5264289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NVX_device_generated_commands 1 5265289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkObjectTableNVX) 5266289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNVX) 5267289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5268289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 1 5269289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NVX_device_generated_commands" 5270289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5271289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5272289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkIndirectCommandsTokenTypeNVX { 5273289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX = 0, 5274289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_DESCRIPTOR_SET_NVX = 1, 5275289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_INDEX_BUFFER_NVX = 2, 5276289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_VERTEX_BUFFER_NVX = 3, 5277289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_PUSH_CONSTANT_NVX = 4, 5278289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_DRAW_INDEXED_NVX = 5, 5279289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_DRAW_NVX = 6, 5280289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX = 7, 5281289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX, 5282289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX, 5283289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NVX = (VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX - VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX + 1), 5284289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF 5285289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsTokenTypeNVX; 5286289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5287289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkObjectEntryTypeNVX { 5288289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX = 0, 5289289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_PIPELINE_NVX = 1, 5290289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_INDEX_BUFFER_NVX = 2, 5291289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_VERTEX_BUFFER_NVX = 3, 5292289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX = 4, 5293289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_TYPE_BEGIN_RANGE_NVX = VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX, 5294289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_TYPE_END_RANGE_NVX = VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX, 5295289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_TYPE_RANGE_SIZE_NVX = (VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX - VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX + 1), 5296289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF 5297289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectEntryTypeNVX; 5298289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5299289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5300289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkIndirectCommandsLayoutUsageFlagBitsNVX { 5301289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX = 0x00000001, 5302289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX = 0x00000002, 5303289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX = 0x00000004, 5304289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX = 0x00000008, 5305289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF 5306289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsLayoutUsageFlagBitsNVX; 5307289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkFlags VkIndirectCommandsLayoutUsageFlagsNVX; 5308289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5309289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkObjectEntryUsageFlagBitsNVX { 5310289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX = 0x00000001, 5311289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX = 0x00000002, 5312289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF 5313289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectEntryUsageFlagBitsNVX; 5314289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkFlags VkObjectEntryUsageFlagsNVX; 5315289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5316289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkDeviceGeneratedCommandsFeaturesNVX { 5317289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5318289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5319289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBool32 computeBindingPointSupport; 5320289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkDeviceGeneratedCommandsFeaturesNVX; 5321289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5322289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkDeviceGeneratedCommandsLimitsNVX { 5323289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5324289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5325289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxIndirectCommandsLayoutTokenCount; 5326289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxObjectEntryCounts; 5327289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t minSequenceCountBufferOffsetAlignment; 5328289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t minSequenceIndexBufferOffsetAlignment; 5329289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t minCommandsTokenBufferOffsetAlignment; 5330289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkDeviceGeneratedCommandsLimitsNVX; 5331289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5332289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkIndirectCommandsTokenNVX { 5333289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsTokenTypeNVX tokenType; 5334289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer; 5335289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize offset; 5336289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsTokenNVX; 5337289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5338289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkIndirectCommandsLayoutTokenNVX { 5339289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsTokenTypeNVX tokenType; 5340289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t bindingUnit; 5341289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t dynamicCount; 5342289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t divisor; 5343289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsLayoutTokenNVX; 5344289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5345289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkIndirectCommandsLayoutCreateInfoNVX { 5346289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5347289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5348289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPipelineBindPoint pipelineBindPoint; 5349289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutUsageFlagsNVX flags; 5350289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t tokenCount; 5351289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkIndirectCommandsLayoutTokenNVX* pTokens; 5352289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsLayoutCreateInfoNVX; 5353289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5354289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkCmdProcessCommandsInfoNVX { 5355289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5356289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5357289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable; 5358289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutNVX indirectCommandsLayout; 5359289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t indirectCommandsTokenCount; 5360289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkIndirectCommandsTokenNVX* pIndirectCommandsTokens; 5361289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxSequencesCount; 5362289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer targetCommandBuffer; 5363289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer sequencesCountBuffer; 5364289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize sequencesCountOffset; 5365289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer sequencesIndexBuffer; 5366289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize sequencesIndexOffset; 5367289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkCmdProcessCommandsInfoNVX; 5368289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5369289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkCmdReserveSpaceForCommandsInfoNVX { 5370289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5371289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5372289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable; 5373289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutNVX indirectCommandsLayout; 5374289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxSequencesCount; 5375289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkCmdReserveSpaceForCommandsInfoNVX; 5376289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5377289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableCreateInfoNVX { 5378289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5379289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5380289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t objectCount; 5381289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectEntryTypeNVX* pObjectEntryTypes; 5382289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint32_t* pObjectEntryCounts; 5383289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectEntryUsageFlagsNVX* pObjectEntryUsageFlags; 5384289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxUniformBuffersPerDescriptor; 5385289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxStorageBuffersPerDescriptor; 5386289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxStorageImagesPerDescriptor; 5387289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxSampledImagesPerDescriptor; 5388289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxPipelineLayouts; 5389289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableCreateInfoNVX; 5390289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5391289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableEntryNVX { 5392289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5393289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5394289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableEntryNVX; 5395289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5396289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTablePipelineEntryNVX { 5397289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5398289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5399289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPipeline pipeline; 5400289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTablePipelineEntryNVX; 5401289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5402289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableDescriptorSetEntryNVX { 5403289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5404289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5405289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPipelineLayout pipelineLayout; 5406289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDescriptorSet descriptorSet; 5407289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableDescriptorSetEntryNVX; 5408289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5409289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableVertexBufferEntryNVX { 5410289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5411289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5412289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer; 5413289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableVertexBufferEntryNVX; 5414289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5415289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableIndexBufferEntryNVX { 5416289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5417289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5418289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer; 541977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkIndexType indexType; 5420289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableIndexBufferEntryNVX; 5421289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5422289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTablePushConstantEntryNVX { 5423289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5424289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5425289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPipelineLayout pipelineLayout; 5426289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkShaderStageFlags stageFlags; 5427289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTablePushConstantEntryNVX; 5428289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5429289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5430289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkCmdProcessCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo); 5431289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkCmdReserveSpaceForCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo); 5432289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNVX)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout); 5433289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNVX)(VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator); 5434289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkCreateObjectTableNVX)(VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable); 5435289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkDestroyObjectTableNVX)(VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator); 5436289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkRegisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const uint32_t* pObjectIndices); 5437289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkUnregisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const uint32_t* pObjectIndices); 5438289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX)(VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits); 5439289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5440289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifndef VK_NO_PROTOTYPES 5441289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkCmdProcessCommandsNVX( 5442289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer commandBuffer, 5443289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo); 5444289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5445289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkCmdReserveSpaceForCommandsNVX( 5446289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer commandBuffer, 5447289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo); 5448289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5449289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNVX( 5450289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5451289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, 5452289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkAllocationCallbacks* pAllocator, 5453289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout); 5454289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5455289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNVX( 5456289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5457289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutNVX indirectCommandsLayout, 5458289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkAllocationCallbacks* pAllocator); 5459289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5460289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkCreateObjectTableNVX( 5461289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5462289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectTableCreateInfoNVX* pCreateInfo, 5463289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkAllocationCallbacks* pAllocator, 5464289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX* pObjectTable); 5465289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5466289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkDestroyObjectTableNVX( 5467289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5468289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable, 5469289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkAllocationCallbacks* pAllocator); 5470289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5471289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkRegisterObjectsNVX( 5472289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5473289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable, 5474289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t objectCount, 5475289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectTableEntryNVX* const* ppObjectTableEntries, 5476289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint32_t* pObjectIndices); 5477289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5478289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkUnregisterObjectsNVX( 5479289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5480289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable, 5481289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t objectCount, 5482289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectEntryTypeNVX* pObjectEntryTypes, 5483289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint32_t* pObjectIndices); 5484289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5485289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX( 5486289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPhysicalDevice physicalDevice, 5487289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, 5488289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceGeneratedCommandsLimitsNVX* pLimits); 5489289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 5490289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5491ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_clip_space_w_scaling 1 5492ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1 5493ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling" 5494ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5495ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkViewportWScalingNV { 5496ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall float xcoeff; 5497ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall float ycoeff; 5498ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkViewportWScalingNV; 5499ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5500ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPipelineViewportWScalingStateCreateInfoNV { 5501ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5502ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5503ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 viewportWScalingEnable; 5504ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t viewportCount; 5505ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkViewportWScalingNV* pViewportWScalings; 5506ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPipelineViewportWScalingStateCreateInfoNV; 5507ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5508ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5509ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetViewportWScalingNV)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings); 5510ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5511ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5512ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWScalingNV( 5513ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 5514ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t firstViewport, 5515ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t viewportCount, 5516ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkViewportWScalingNV* pViewportWScalings); 5517ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5518ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 551977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_direct_mode_display 1 552077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION 1 552177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME "VK_EXT_direct_mode_display" 552277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 552377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkReleaseDisplayEXT)(VkPhysicalDevice physicalDevice, VkDisplayKHR display); 552477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 552577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 552677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkReleaseDisplayEXT( 552777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkPhysicalDevice physicalDevice, 552877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR display); 552977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 553077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 553177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT 553277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_acquire_xlib_display 1 553377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#include <X11/extensions/Xrandr.h> 553477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 553577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION 1 553677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME "VK_EXT_acquire_xlib_display" 553777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 553877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAcquireXlibDisplayEXT)(VkPhysicalDevice physicalDevice, Display* dpy, VkDisplayKHR display); 553977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetRandROutputDisplayEXT)(VkPhysicalDevice physicalDevice, Display* dpy, RROutput rrOutput, VkDisplayKHR* pDisplay); 554077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 554177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 554277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAcquireXlibDisplayEXT( 554377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkPhysicalDevice physicalDevice, 554477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall Display* dpy, 554577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR display); 554677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 554777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetRandROutputDisplayEXT( 554877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkPhysicalDevice physicalDevice, 554977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall Display* dpy, 555077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall RROutput rrOutput, 555177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR* pDisplay); 555277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 555377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif /* VK_USE_PLATFORM_XLIB_XRANDR_EXT */ 555477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 555577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_display_surface_counter 1 555677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION 1 555777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME "VK_EXT_display_surface_counter" 555877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 555977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 556077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef enum VkSurfaceCounterFlagBitsEXT { 556177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_SURFACE_COUNTER_VBLANK_EXT = 0x00000001, 556277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF 556377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkSurfaceCounterFlagBitsEXT; 556477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkFlags VkSurfaceCounterFlagsEXT; 556577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 556677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkSurfaceCapabilities2EXT { 556777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 556877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall void* pNext; 556977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t minImageCount; 557077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t maxImageCount; 557177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkExtent2D currentExtent; 557277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkExtent2D minImageExtent; 557377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkExtent2D maxImageExtent; 557477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t maxImageArrayLayers; 557577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceTransformFlagsKHR supportedTransforms; 557677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceTransformFlagBitsKHR currentTransform; 557777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkCompositeAlphaFlagsKHR supportedCompositeAlpha; 557877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkImageUsageFlags supportedUsageFlags; 557977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceCounterFlagsEXT supportedSurfaceCounters; 558077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkSurfaceCapabilities2EXT; 558177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 558277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 558377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities); 558477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 558577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 558677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2EXT( 558777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkPhysicalDevice physicalDevice, 558877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceKHR surface, 558977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceCapabilities2EXT* pSurfaceCapabilities); 559077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 559177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 559277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_display_control 1 559377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DISPLAY_CONTROL_SPEC_VERSION 1 559477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME "VK_EXT_display_control" 559577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 559677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 559777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef enum VkDisplayPowerStateEXT { 559877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_OFF_EXT = 0, 559977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1, 560077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_ON_EXT = 2, 560177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_BEGIN_RANGE_EXT = VK_DISPLAY_POWER_STATE_OFF_EXT, 560277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_END_RANGE_EXT = VK_DISPLAY_POWER_STATE_ON_EXT, 560377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_RANGE_SIZE_EXT = (VK_DISPLAY_POWER_STATE_ON_EXT - VK_DISPLAY_POWER_STATE_OFF_EXT + 1), 560477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT = 0x7FFFFFFF 560577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDisplayPowerStateEXT; 560677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 560777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef enum VkDeviceEventTypeEXT { 560877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT = 0, 560977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT, 561077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_END_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT, 561177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT - VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT + 1), 561277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF 561377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDeviceEventTypeEXT; 561477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 561577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef enum VkDisplayEventTypeEXT { 561677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT = 0, 561777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT, 561877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_END_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT, 561977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT - VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT + 1), 562077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF 562177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDisplayEventTypeEXT; 562277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 562377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkDisplayPowerInfoEXT { 562477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 562577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 562677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayPowerStateEXT powerState; 562777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDisplayPowerInfoEXT; 562877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 562977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkDeviceEventInfoEXT { 563077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 563177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 563277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDeviceEventTypeEXT deviceEvent; 563377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDeviceEventInfoEXT; 563477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 563577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkDisplayEventInfoEXT { 563677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 563777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 563877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayEventTypeEXT displayEvent; 563977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDisplayEventInfoEXT; 564077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 564177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkSwapchainCounterCreateInfoEXT { 564277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 564377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 564477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceCounterFlagsEXT surfaceCounters; 564577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkSwapchainCounterCreateInfoEXT; 564677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 564777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 564877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDisplayPowerControlEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo); 564977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkRegisterDeviceEventEXT)(VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence); 565077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkRegisterDisplayEventEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence); 565177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainCounterEXT)(VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue); 565277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 565377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 565477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDisplayPowerControlEXT( 565577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 565677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR display, 565777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkDisplayPowerInfoEXT* pDisplayPowerInfo); 565877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 565977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkRegisterDeviceEventEXT( 566077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 566177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkDeviceEventInfoEXT* pDeviceEventInfo, 566277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkAllocationCallbacks* pAllocator, 566377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkFence* pFence); 566477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 566577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkRegisterDisplayEventEXT( 566677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 566777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR display, 566877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkDisplayEventInfoEXT* pDisplayEventInfo, 566977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkAllocationCallbacks* pAllocator, 567077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkFence* pFence); 567177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 567277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainCounterEXT( 567377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 567477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSwapchainKHR swapchain, 567577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceCounterFlagBitsEXT counter, 567677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint64_t* pCounterValue); 567777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 567877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 5679889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#define VK_GOOGLE_display_timing 1 5680889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#define VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION 1 5681889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#define VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME "VK_GOOGLE_display_timing" 5682889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5683889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef struct VkRefreshCycleDurationGOOGLE { 5684889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t refreshDuration; 5685889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall} VkRefreshCycleDurationGOOGLE; 5686889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5687889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef struct VkPastPresentationTimingGOOGLE { 5688889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint32_t presentID; 5689889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t desiredPresentTime; 5690889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t actualPresentTime; 5691889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t earliestPresentTime; 5692889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t presentMargin; 5693889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall} VkPastPresentationTimingGOOGLE; 5694889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5695889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef struct VkPresentTimeGOOGLE { 5696889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint32_t presentID; 5697889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t desiredPresentTime; 5698889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall} VkPresentTimeGOOGLE; 5699889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5700889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef struct VkPresentTimesInfoGOOGLE { 5701889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkStructureType sType; 5702889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall const void* pNext; 5703889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint32_t swapchainCount; 5704889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall const VkPresentTimeGOOGLE* pTimes; 5705889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall} VkPresentTimesInfoGOOGLE; 5706889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5707889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5708889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetRefreshCycleDurationGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties); 5709889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings); 5710889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5711889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#ifndef VK_NO_PROTOTYPES 5712889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetRefreshCycleDurationGOOGLE( 5713889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkDevice device, 5714889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkSwapchainKHR swapchain, 5715889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties); 5716889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5717889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPastPresentationTimingGOOGLE( 5718889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkDevice device, 5719889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkSwapchainKHR swapchain, 5720889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint32_t* pPresentationTimingCount, 5721889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkPastPresentationTimingGOOGLE* pPresentationTimings); 5722889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#endif 5723889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5724ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_sample_mask_override_coverage 1 5725ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION 1 5726ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME "VK_NV_sample_mask_override_coverage" 5727ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5728ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5729ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_geometry_shader_passthrough 1 5730ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION 1 5731ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME "VK_NV_geometry_shader_passthrough" 5732ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5733ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5734ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_viewport_array2 1 5735ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION 1 5736ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME "VK_NV_viewport_array2" 5737ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5738ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5739ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NVX_multiview_per_view_attributes 1 5740ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION 1 5741ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME "VK_NVX_multiview_per_view_attributes" 5742ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5743ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX { 5744ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5745ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 5746ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 perViewPositionAllComponents; 5747ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX; 5748ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5749ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5750ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5751ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_viewport_swizzle 1 5752ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION 1 5753ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME "VK_NV_viewport_swizzle" 5754ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5755ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5756ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkViewportCoordinateSwizzleNV { 5757ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV = 0, 5758ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV = 1, 5759ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV = 2, 5760ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV = 3, 5761ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV = 4, 5762ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV = 5, 5763ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV = 6, 5764ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV = 7, 5765ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_BEGIN_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV, 5766ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_END_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV, 5767ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_RANGE_SIZE_NV = (VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV + 1), 5768ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV = 0x7FFFFFFF 5769ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkViewportCoordinateSwizzleNV; 5770ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5771ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkPipelineViewportSwizzleStateCreateFlagsNV; 5772ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5773ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkViewportSwizzleNV { 5774ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkViewportCoordinateSwizzleNV x; 5775ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkViewportCoordinateSwizzleNV y; 5776ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkViewportCoordinateSwizzleNV z; 5777ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkViewportCoordinateSwizzleNV w; 5778ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkViewportSwizzleNV; 5779ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5780ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPipelineViewportSwizzleStateCreateInfoNV { 5781ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5782ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5783ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineViewportSwizzleStateCreateFlagsNV flags; 5784ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t viewportCount; 5785ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkViewportSwizzleNV* pViewportSwizzles; 5786ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPipelineViewportSwizzleStateCreateInfoNV; 5787ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5788ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5789ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5790ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_EXT_discard_rectangles 1 5791ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION 1 5792ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME "VK_EXT_discard_rectangles" 5793ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5794ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5795ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkDiscardRectangleModeEXT { 5796ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT = 0, 5797ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT = 1, 5798ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_BEGIN_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT, 5799ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_END_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT, 5800ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_RANGE_SIZE_EXT = (VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT - VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT + 1), 5801ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT = 0x7FFFFFFF 5802ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDiscardRectangleModeEXT; 5803ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5804ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkPipelineDiscardRectangleStateCreateFlagsEXT; 5805ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5806ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT { 5807ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5808f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall void* pNext; 5809ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t maxDiscardRectangles; 5810ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceDiscardRectanglePropertiesEXT; 5811ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5812ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPipelineDiscardRectangleStateCreateInfoEXT { 5813ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5814ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5815ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineDiscardRectangleStateCreateFlagsEXT flags; 5816ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDiscardRectangleModeEXT discardRectangleMode; 5817ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t discardRectangleCount; 5818ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkRect2D* pDiscardRectangles; 5819ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPipelineDiscardRectangleStateCreateInfoEXT; 5820ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5821ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5822ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDiscardRectangleEXT)(VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles); 5823ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5824ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5825ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDiscardRectangleEXT( 5826ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 5827ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t firstDiscardRectangle, 5828ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t discardRectangleCount, 5829ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkRect2D* pDiscardRectangles); 5830ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5831ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5832e278daf850a664a1f15c760c64a74d3649b6f812Courtney Goeltzenleuchter#define VK_EXT_swapchain_colorspace 1 5833edc88e78a30ca412a0a085a21f1fc1be7be5081fCourtney Goeltzenleuchter#define VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION 3 5834e278daf850a664a1f15c760c64a74d3649b6f812Courtney Goeltzenleuchter#define VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME "VK_EXT_swapchain_colorspace" 5835e278daf850a664a1f15c760c64a74d3649b6f812Courtney Goeltzenleuchter 5836f5ad48b5a71611751021c2ee9037c703cc946b4bJesse Hall 5837d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#define VK_EXT_hdr_metadata 1 5838fdc8ab300de5306a26b7d9c7f12fe3fff41dc913Jesse Hall#define VK_EXT_HDR_METADATA_SPEC_VERSION 1 5839d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#define VK_EXT_HDR_METADATA_EXTENSION_NAME "VK_EXT_hdr_metadata" 5840d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5841d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchtertypedef struct VkXYColorEXT { 5842d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float x; 5843d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float y; 5844d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter} VkXYColorEXT; 5845d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5846d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchtertypedef struct VkHdrMetadataEXT { 5847d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkStructureType sType; 5848d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter const void* pNext; 5849d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkXYColorEXT displayPrimaryRed; 5850d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkXYColorEXT displayPrimaryGreen; 5851d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkXYColorEXT displayPrimaryBlue; 5852d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkXYColorEXT whitePoint; 5853d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float maxLuminance; 5854d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float minLuminance; 5855d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float maxContentLightLevel; 5856d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float maxFrameAverageLightLevel; 5857d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter} VkHdrMetadataEXT; 5858d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5859d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5860d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchtertypedef void (VKAPI_PTR *PFN_vkSetHdrMetadataEXT)(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata); 5861d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5862d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#ifndef VK_NO_PROTOTYPES 5863d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney GoeltzenleuchterVKAPI_ATTR void VKAPI_CALL vkSetHdrMetadataEXT( 5864d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkDevice device, 5865d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter uint32_t swapchainCount, 5866d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter const VkSwapchainKHR* pSwapchains, 5867d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter const VkHdrMetadataEXT* pMetadata); 5868d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#endif 5869d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5870ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_IOS_MVK 5871ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_ios_surface 1 5872ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_IOS_SURFACE_SPEC_VERSION 2 5873ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_IOS_SURFACE_EXTENSION_NAME "VK_MVK_ios_surface" 5874ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5875ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkIOSSurfaceCreateFlagsMVK; 5876ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5877ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkIOSSurfaceCreateInfoMVK { 5878ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5879ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5880ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkIOSSurfaceCreateFlagsMVK flags; 5881ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pView; 5882ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkIOSSurfaceCreateInfoMVK; 5883ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5884ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5885ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateIOSSurfaceMVK)(VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 5886ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5887ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5888ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateIOSSurfaceMVK( 5889ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkInstance instance, 5890ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkIOSSurfaceCreateInfoMVK* pCreateInfo, 5891ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAllocationCallbacks* pAllocator, 5892ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSurfaceKHR* pSurface); 5893ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5894ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_IOS_MVK */ 5895ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5896ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_MACOS_MVK 5897ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_macos_surface 1 5898ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_MACOS_SURFACE_SPEC_VERSION 2 5899ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_MACOS_SURFACE_EXTENSION_NAME "VK_MVK_macos_surface" 5900ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5901ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkMacOSSurfaceCreateFlagsMVK; 5902ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5903ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkMacOSSurfaceCreateInfoMVK { 5904ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5905ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5906ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkMacOSSurfaceCreateFlagsMVK flags; 5907ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pView; 5908ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMacOSSurfaceCreateInfoMVK; 5909ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5910ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5911ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateMacOSSurfaceMVK)(VkInstance instance, const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 5912ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5913ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5914ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateMacOSSurfaceMVK( 5915ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkInstance instance, 5916ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, 5917ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAllocationCallbacks* pAllocator, 5918ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSurfaceKHR* pSurface); 5919ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5920ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_MACOS_MVK */ 5921ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 592204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#ifdef __cplusplus 592304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} 592404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 592504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 592604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 5927