vulkan.h revision ad250840766ea76def08c0d9f0b04a09c32dab79
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 46ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_HEADER_VERSION 42 472676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 485ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 49a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall#define VK_NULL_HANDLE 0 5077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse 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 6377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse 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_PHYSICAL_DEVICE_PROPERTIES_2_KHX = 1000071005, 265ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHX = 1000071006, 266ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHX = 1000071007, 267ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHX = 1000072000, 268ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHX = 1000072001, 269ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHX = 1000072002, 270ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHX = 1000073000, 271ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHX = 1000073001, 272ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHX = 1000073002, 273ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHX = 1000074000, 274ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHX = 1000074001, 275ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHX = 1000075000, 276ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHX = 1000076000, 277ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHX = 1000076001, 278ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHX = 1000077000, 279ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHX = 1000078000, 280ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHX = 1000078001, 281ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHX = 1000078002, 282ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHX = 1000079000, 283ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR = 1000080000, 284889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000, 285ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR = 1000085000, 286289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX = 1000086000, 287289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX = 1000086001, 288289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX = 1000086002, 289289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX = 1000086003, 290289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX = 1000086004, 291289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX = 1000086005, 292ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV = 1000087000, 29377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT = 1000090000, 29477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT = 1000091000, 29577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT = 1000091001, 29677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT = 1000091002, 29777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT = 1000091003, 29814866bbeca1ebcda93f43a3352934889a9f37c2bIan Elliott VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE = 1000092000, 299ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX = 1000097000, 300ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV = 1000098000, 301ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT = 1000099000, 302ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT = 1000099001, 303ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK = 1000122000, 304ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK = 1000123000, 30504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO, 306f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO, 307f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1), 30804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF 30904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStructureType; 31004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSystemAllocationScope { 3123e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0, 3133fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1, 3143fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2, 3153fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3, 3163fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4, 3173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND, 3183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE, 3193e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE = (VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND + 1), 3203fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM = 0x7FFFFFFF 3213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkSystemAllocationScope; 32203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 3233e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkInternalAllocationType { 3243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0, 3253fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE, 3263fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_END_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE, 3273fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE = (VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE + 1), 3283fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM = 0x7FFFFFFF 3293fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkInternalAllocationType; 33004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFormat { 33204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_UNDEFINED = 0, 333f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R4G4_UNORM_PACK8 = 1, 334f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2, 335f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3, 336f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R5G6B5_UNORM_PACK16 = 4, 337f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B5G6R5_UNORM_PACK16 = 5, 338f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6, 339f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7, 340f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8, 34104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_UNORM = 9, 34204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SNORM = 10, 34304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_USCALED = 11, 34404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SSCALED = 12, 34504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_UINT = 13, 34604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SINT = 14, 34704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SRGB = 15, 34804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_UNORM = 16, 34904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SNORM = 17, 35004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_USCALED = 18, 35104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SSCALED = 19, 35204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_UINT = 20, 35304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SINT = 21, 35404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SRGB = 22, 35504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_UNORM = 23, 35604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SNORM = 24, 35704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_USCALED = 25, 35804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SSCALED = 26, 35904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_UINT = 27, 36004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SINT = 28, 36104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SRGB = 29, 362f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_UNORM = 30, 363f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SNORM = 31, 364f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_USCALED = 32, 365f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SSCALED = 33, 366f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_UINT = 34, 367f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SINT = 35, 368f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SRGB = 36, 369f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_UNORM = 37, 370f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SNORM = 38, 371f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_USCALED = 39, 372f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SSCALED = 40, 373f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_UINT = 41, 374f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SINT = 42, 375f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SRGB = 43, 376f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_UNORM = 44, 377f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SNORM = 45, 378f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_USCALED = 46, 379f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SSCALED = 47, 380f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_UINT = 48, 381f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SINT = 49, 382f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SRGB = 50, 383f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51, 384f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52, 385f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53, 386f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54, 387f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55, 388f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56, 389f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57, 390f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58, 391f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59, 392f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60, 393f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61, 394f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62, 395f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63, 396f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64, 397f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65, 398f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66, 399f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67, 400f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68, 401f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69, 402f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_UNORM = 70, 403f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SNORM = 71, 404f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_USCALED = 72, 405f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SSCALED = 73, 406f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_UINT = 74, 407f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SINT = 75, 408f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SFLOAT = 76, 409f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_UNORM = 77, 410f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SNORM = 78, 411f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_USCALED = 79, 412f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SSCALED = 80, 413f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_UINT = 81, 414f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SINT = 82, 415f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SFLOAT = 83, 416f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_UNORM = 84, 417f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SNORM = 85, 418f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_USCALED = 86, 419f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SSCALED = 87, 420f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_UINT = 88, 421f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SINT = 89, 422f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SFLOAT = 90, 423f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_UNORM = 91, 424f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SNORM = 92, 425f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_USCALED = 93, 426f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SSCALED = 94, 427f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_UINT = 95, 428f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SINT = 96, 429f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SFLOAT = 97, 430f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_UINT = 98, 431f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_SINT = 99, 432f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_SFLOAT = 100, 433f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_UINT = 101, 434f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_SINT = 102, 435f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_SFLOAT = 103, 436f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_UINT = 104, 437f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_SINT = 105, 438f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_SFLOAT = 106, 439f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_UINT = 107, 440f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_SINT = 108, 441f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_SFLOAT = 109, 442f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_UINT = 110, 443f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_SINT = 111, 444f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_SFLOAT = 112, 445f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_UINT = 113, 446f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_SINT = 114, 447f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_SFLOAT = 115, 448f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_UINT = 116, 449f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_SINT = 117, 450f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_SFLOAT = 118, 451f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_UINT = 119, 452f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_SINT = 120, 453f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_SFLOAT = 121, 454f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122, 455f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123, 456f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D16_UNORM = 124, 457f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_X8_D24_UNORM_PACK32 = 125, 458f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D32_SFLOAT = 126, 459f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_S8_UINT = 127, 460f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D16_UNORM_S8_UINT = 128, 461f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D24_UNORM_S8_UINT = 129, 462f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D32_SFLOAT_S8_UINT = 130, 463f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131, 464f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132, 465f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133, 466f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134, 467f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC2_UNORM_BLOCK = 135, 468f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC2_SRGB_BLOCK = 136, 469f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC3_UNORM_BLOCK = 137, 470f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC3_SRGB_BLOCK = 138, 471f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC4_UNORM_BLOCK = 139, 472f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC4_SNORM_BLOCK = 140, 473f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC5_UNORM_BLOCK = 141, 474f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC5_SNORM_BLOCK = 142, 475f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC6H_UFLOAT_BLOCK = 143, 476f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC6H_SFLOAT_BLOCK = 144, 477f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC7_UNORM_BLOCK = 145, 478f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC7_SRGB_BLOCK = 146, 479f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147, 480f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148, 481f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149, 482f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150, 483f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151, 484f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152, 485f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11_UNORM_BLOCK = 153, 486f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11_SNORM_BLOCK = 154, 487f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155, 488f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156, 489f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157, 490f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158, 491f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159, 492f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160, 493f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161, 494f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162, 495f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163, 496f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164, 497f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165, 498f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166, 499f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167, 500f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168, 501f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169, 502f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170, 503f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171, 504f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172, 505f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173, 506f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174, 507f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175, 508f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176, 509f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177, 510f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178, 511f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179, 512f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180, 513f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181, 514f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182, 515f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183, 516f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184, 517289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000, 518289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001, 519289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002, 520289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003, 521289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004, 522289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005, 523289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006, 524289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007, 52504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_BEGIN_RANGE = VK_FORMAT_UNDEFINED, 526f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_END_RANGE = VK_FORMAT_ASTC_12x12_SRGB_BLOCK, 527f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_RANGE_SIZE = (VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1), 52804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_MAX_ENUM = 0x7FFFFFFF 52904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormat; 53004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageType { 53204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_1D = 0, 53304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_2D = 1, 53404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_3D = 2, 53504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_BEGIN_RANGE = VK_IMAGE_TYPE_1D, 53604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_END_RANGE = VK_IMAGE_TYPE_3D, 5373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_TYPE_RANGE_SIZE = (VK_IMAGE_TYPE_3D - VK_IMAGE_TYPE_1D + 1), 53804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_MAX_ENUM = 0x7FFFFFFF 53904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageType; 54004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5413e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageTiling { 542c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_OPTIMAL = 0, 543c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_LINEAR = 1, 544c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL, 545c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR, 5463fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_TILING_RANGE_SIZE = (VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1), 54704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF 54804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageTiling; 54904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5503e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPhysicalDeviceType { 55104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_OTHER = 0, 55204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1, 55304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2, 55404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3, 55504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_CPU = 4, 55604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE = VK_PHYSICAL_DEVICE_TYPE_OTHER, 55704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_END_RANGE = VK_PHYSICAL_DEVICE_TYPE_CPU, 5583fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE = (VK_PHYSICAL_DEVICE_TYPE_CPU - VK_PHYSICAL_DEVICE_TYPE_OTHER + 1), 55904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF 56004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceType; 56104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryType { 56304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_OCCLUSION = 0, 56404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_PIPELINE_STATISTICS = 1, 565a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VK_QUERY_TYPE_TIMESTAMP = 2, 56604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION, 567a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP, 5683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1), 56904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF 57004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryType; 57104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5723e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSharingMode { 57304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_EXCLUSIVE = 0, 57404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_CONCURRENT = 1, 57504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_BEGIN_RANGE = VK_SHARING_MODE_EXCLUSIVE, 57604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_END_RANGE = VK_SHARING_MODE_CONCURRENT, 5773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SHARING_MODE_RANGE_SIZE = (VK_SHARING_MODE_CONCURRENT - VK_SHARING_MODE_EXCLUSIVE + 1), 57804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_MAX_ENUM = 0x7FFFFFFF 57904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSharingMode; 58004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5813e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageLayout { 5825ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_UNDEFINED = 0, 5835ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_GENERAL = 1, 5845ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2, 5855ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3, 5865ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4, 5875ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5, 5883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6, 5893fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7, 5905ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_PREINITIALIZED = 8, 591bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002, 592af3a1117ffa206a6e3143edf32c494b64e39f303Chris Forbes VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR = 1000111000, 5935ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_BEGIN_RANGE = VK_IMAGE_LAYOUT_UNDEFINED, 5945ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_END_RANGE = VK_IMAGE_LAYOUT_PREINITIALIZED, 5953fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_RANGE_SIZE = (VK_IMAGE_LAYOUT_PREINITIALIZED - VK_IMAGE_LAYOUT_UNDEFINED + 1), 5965ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_MAX_ENUM = 0x7FFFFFFF 5975ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkImageLayout; 59804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5993e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageViewType { 60004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_1D = 0, 60104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_2D = 1, 60204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_3D = 2, 60304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_CUBE = 3, 60404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4, 60504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5, 60604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6, 60704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_BEGIN_RANGE = VK_IMAGE_VIEW_TYPE_1D, 60804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_END_RANGE = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, 6093fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_VIEW_TYPE_RANGE_SIZE = (VK_IMAGE_VIEW_TYPE_CUBE_ARRAY - VK_IMAGE_VIEW_TYPE_1D + 1), 61004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_MAX_ENUM = 0x7FFFFFFF 61104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageViewType; 61204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6133e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkComponentSwizzle { 61465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_IDENTITY = 0, 61565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_ZERO = 1, 61665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_ONE = 2, 61765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_R = 3, 61865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_G = 4, 61965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_B = 5, 62065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_A = 6, 62165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_BEGIN_RANGE = VK_COMPONENT_SWIZZLE_IDENTITY, 62265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_END_RANGE = VK_COMPONENT_SWIZZLE_A, 62365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_RANGE_SIZE = (VK_COMPONENT_SWIZZLE_A - VK_COMPONENT_SWIZZLE_IDENTITY + 1), 62465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_MAX_ENUM = 0x7FFFFFFF 62565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkComponentSwizzle; 62604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6273e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkVertexInputRate { 62865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_VERTEX = 0, 62965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_INSTANCE = 1, 63065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_BEGIN_RANGE = VK_VERTEX_INPUT_RATE_VERTEX, 63165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_END_RANGE = VK_VERTEX_INPUT_RATE_INSTANCE, 63265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_RANGE_SIZE = (VK_VERTEX_INPUT_RATE_INSTANCE - VK_VERTEX_INPUT_RATE_VERTEX + 1), 63365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_MAX_ENUM = 0x7FFFFFFF 63465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkVertexInputRate; 63504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6363e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPrimitiveTopology { 63704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0, 63804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1, 63904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2, 64004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3, 64104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4, 64204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5, 6433fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6, 6443fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7, 6453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8, 6463fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9, 647091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10, 64804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE = VK_PRIMITIVE_TOPOLOGY_POINT_LIST, 649091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_END_RANGE = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST, 650091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE = (VK_PRIMITIVE_TOPOLOGY_PATCH_LIST - VK_PRIMITIVE_TOPOLOGY_POINT_LIST + 1), 65104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_MAX_ENUM = 0x7FFFFFFF 65204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPrimitiveTopology; 65304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6543e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPolygonMode { 65565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_FILL = 0, 65665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_LINE = 1, 65765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_POINT = 2, 65865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_BEGIN_RANGE = VK_POLYGON_MODE_FILL, 65965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_END_RANGE = VK_POLYGON_MODE_POINT, 66065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_RANGE_SIZE = (VK_POLYGON_MODE_POINT - VK_POLYGON_MODE_FILL + 1), 66165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_MAX_ENUM = 0x7FFFFFFF 66265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkPolygonMode; 66304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6643e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFrontFace { 6653fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_COUNTER_CLOCKWISE = 0, 6663fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_CLOCKWISE = 1, 6673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_BEGIN_RANGE = VK_FRONT_FACE_COUNTER_CLOCKWISE, 6683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_END_RANGE = VK_FRONT_FACE_CLOCKWISE, 6693fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_RANGE_SIZE = (VK_FRONT_FACE_CLOCKWISE - VK_FRONT_FACE_COUNTER_CLOCKWISE + 1), 67004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FRONT_FACE_MAX_ENUM = 0x7FFFFFFF 67104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFrontFace; 67204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6733e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCompareOp { 67404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_NEVER = 0, 67504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_LESS = 1, 67604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_EQUAL = 2, 6773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_LESS_OR_EQUAL = 3, 67804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_GREATER = 4, 67904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_NOT_EQUAL = 5, 6803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_GREATER_OR_EQUAL = 6, 68104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_ALWAYS = 7, 68204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_BEGIN_RANGE = VK_COMPARE_OP_NEVER, 68304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_END_RANGE = VK_COMPARE_OP_ALWAYS, 6843fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_RANGE_SIZE = (VK_COMPARE_OP_ALWAYS - VK_COMPARE_OP_NEVER + 1), 68504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_MAX_ENUM = 0x7FFFFFFF 68604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkCompareOp; 68704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkStencilOp { 68904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_KEEP = 0, 69004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_ZERO = 1, 69104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_REPLACE = 2, 6923fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3, 6933fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4, 69404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_INVERT = 5, 6953fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_INCREMENT_AND_WRAP = 6, 6963fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_DECREMENT_AND_WRAP = 7, 69704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_BEGIN_RANGE = VK_STENCIL_OP_KEEP, 6983fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_END_RANGE = VK_STENCIL_OP_DECREMENT_AND_WRAP, 6993fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_RANGE_SIZE = (VK_STENCIL_OP_DECREMENT_AND_WRAP - VK_STENCIL_OP_KEEP + 1), 70004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_MAX_ENUM = 0x7FFFFFFF 70104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStencilOp; 70204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7033e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkLogicOp { 70404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_CLEAR = 0, 70504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND = 1, 70604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND_REVERSE = 2, 70704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_COPY = 3, 70804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND_INVERTED = 4, 7093fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_NO_OP = 5, 71004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_XOR = 6, 71104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR = 7, 71204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_NOR = 8, 7133fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_EQUIVALENT = 9, 71404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_INVERT = 10, 71504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR_REVERSE = 11, 71604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_COPY_INVERTED = 12, 71704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR_INVERTED = 13, 71804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_NAND = 14, 71904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_SET = 15, 72004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_BEGIN_RANGE = VK_LOGIC_OP_CLEAR, 72104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_END_RANGE = VK_LOGIC_OP_SET, 7223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_RANGE_SIZE = (VK_LOGIC_OP_SET - VK_LOGIC_OP_CLEAR + 1), 72304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_MAX_ENUM = 0x7FFFFFFF 72404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkLogicOp; 72504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBlendFactor { 72765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ZERO = 0, 72865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE = 1, 72965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_COLOR = 2, 73065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3, 73165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_DST_COLOR = 4, 73265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5, 73365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_ALPHA = 6, 73465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7, 73565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_DST_ALPHA = 8, 73665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9, 73765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_CONSTANT_COLOR = 10, 73865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11, 73965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_CONSTANT_ALPHA = 12, 74065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13, 74165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14, 74265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC1_COLOR = 15, 74365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16, 74465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC1_ALPHA = 17, 74565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18, 74665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_BEGIN_RANGE = VK_BLEND_FACTOR_ZERO, 74765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_END_RANGE = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA, 74865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_RANGE_SIZE = (VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - VK_BLEND_FACTOR_ZERO + 1), 74965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_MAX_ENUM = 0x7FFFFFFF 75065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkBlendFactor; 75104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7523e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBlendOp { 75304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_ADD = 0, 75404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_SUBTRACT = 1, 75504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_REVERSE_SUBTRACT = 2, 75604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MIN = 3, 75704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MAX = 4, 75804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_BEGIN_RANGE = VK_BLEND_OP_ADD, 75904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_END_RANGE = VK_BLEND_OP_MAX, 7603fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BLEND_OP_RANGE_SIZE = (VK_BLEND_OP_MAX - VK_BLEND_OP_ADD + 1), 76104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MAX_ENUM = 0x7FFFFFFF 76204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBlendOp; 76304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7643e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDynamicState { 7655ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_VIEWPORT = 0, 7665ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_SCISSOR = 1, 7675ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_LINE_WIDTH = 2, 7685ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_DEPTH_BIAS = 3, 7695ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4, 7705ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5, 7715ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6, 7725ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7, 7735ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8, 774ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000, 775ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000, 7765ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_BEGIN_RANGE = VK_DYNAMIC_STATE_VIEWPORT, 7775ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_END_RANGE = VK_DYNAMIC_STATE_STENCIL_REFERENCE, 7783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_DYNAMIC_STATE_RANGE_SIZE = (VK_DYNAMIC_STATE_STENCIL_REFERENCE - VK_DYNAMIC_STATE_VIEWPORT + 1), 7795ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF 7805ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkDynamicState; 7815ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 7823e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFilter { 78323ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_NEAREST = 0, 78423ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_LINEAR = 1, 7852676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_FILTER_CUBIC_IMG = 1000015000, 78623ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST, 78723ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_END_RANGE = VK_FILTER_LINEAR, 7883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1), 78923ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_MAX_ENUM = 0x7FFFFFFF 79023ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkFilter; 79104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSamplerMipmapMode { 7933dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_NEAREST = 0, 7943dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_LINEAR = 1, 7953dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE = VK_SAMPLER_MIPMAP_MODE_NEAREST, 79623ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_MIPMAP_MODE_END_RANGE = VK_SAMPLER_MIPMAP_MODE_LINEAR, 7973dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE = (VK_SAMPLER_MIPMAP_MODE_LINEAR - VK_SAMPLER_MIPMAP_MODE_NEAREST + 1), 79823ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_MIPMAP_MODE_MAX_ENUM = 0x7FFFFFFF 79923ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkSamplerMipmapMode; 80004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSamplerAddressMode { 802c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_REPEAT = 0, 803c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1, 804c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2, 805c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3, 806c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4, 807c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_REPEAT, 8082676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER, 8092676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE = (VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1), 81023ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF 81123ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkSamplerAddressMode; 81204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8133e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBorderColor { 81404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0, 81504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1, 81604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2, 81704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3, 81804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4, 81904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5, 82004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_BEGIN_RANGE = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK, 82104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_END_RANGE = VK_BORDER_COLOR_INT_OPAQUE_WHITE, 8223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BORDER_COLOR_RANGE_SIZE = (VK_BORDER_COLOR_INT_OPAQUE_WHITE - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK + 1), 82304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_MAX_ENUM = 0x7FFFFFFF 82404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBorderColor; 82504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDescriptorType { 82704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_SAMPLER = 0, 82804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1, 82904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2, 83004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3, 83104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4, 83204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5, 83304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6, 83404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7, 83504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8, 83604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9, 83704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10, 83804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER, 83904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, 8403fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1), 84104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF 84204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorType; 84304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8443e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentLoadOp { 84504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_LOAD = 0, 84604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_CLEAR = 1, 84704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2, 84804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE = VK_ATTACHMENT_LOAD_OP_LOAD, 84904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_END_RANGE = VK_ATTACHMENT_LOAD_OP_DONT_CARE, 8503fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_ATTACHMENT_LOAD_OP_RANGE_SIZE = (VK_ATTACHMENT_LOAD_OP_DONT_CARE - VK_ATTACHMENT_LOAD_OP_LOAD + 1), 85104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_MAX_ENUM = 0x7FFFFFFF 85204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentLoadOp; 85304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8543e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentStoreOp { 85504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_STORE = 0, 85604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_DONT_CARE = 1, 85704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_BEGIN_RANGE = VK_ATTACHMENT_STORE_OP_STORE, 85804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_END_RANGE = VK_ATTACHMENT_STORE_OP_DONT_CARE, 8593fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_ATTACHMENT_STORE_OP_RANGE_SIZE = (VK_ATTACHMENT_STORE_OP_DONT_CARE - VK_ATTACHMENT_STORE_OP_STORE + 1), 86004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF 86104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentStoreOp; 86204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8633e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPipelineBindPoint { 864c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_GRAPHICS = 0, 865c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_COMPUTE = 1, 866c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS, 867c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE, 8683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1), 86904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF 87004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineBindPoint; 87104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8723e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferLevel { 8733fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0, 8743fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1, 8753fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE = VK_COMMAND_BUFFER_LEVEL_PRIMARY, 8763fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_END_RANGE = VK_COMMAND_BUFFER_LEVEL_SECONDARY, 8773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE = (VK_COMMAND_BUFFER_LEVEL_SECONDARY - VK_COMMAND_BUFFER_LEVEL_PRIMARY + 1), 8783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_MAX_ENUM = 0x7FFFFFFF 8793fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferLevel; 88004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8813e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkIndexType { 88204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_UINT16 = 0, 88304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_UINT32 = 1, 88404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16, 88504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32, 8863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1), 88704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_MAX_ENUM = 0x7FFFFFFF 88804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkIndexType; 88904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSubpassContents { 89165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_INLINE = 0, 89265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1, 89365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_BEGIN_RANGE = VK_SUBPASS_CONTENTS_INLINE, 89465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_END_RANGE = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS, 89565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_RANGE_SIZE = (VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS - VK_SUBPASS_CONTENTS_INLINE + 1), 89665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF 89765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkSubpassContents; 89804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 899a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkInstanceCreateFlags; 90004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFormatFeatureFlagBits { 90204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 0x00000001, 90304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 0x00000002, 90404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004, 90504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008, 90604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 0x00000010, 90704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020, 90804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 0x00000040, 90904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 0x00000080, 91004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100, 91104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200, 9123fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400, 9133fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800, 91433faaad096afbd0b103bd1284ce5b78cce74aa01Jesse Hall VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000, 9152676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000, 91677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = 0x00004000, 91777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = 0x00008000, 9182676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 91904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormatFeatureFlagBits; 92004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkFormatFeatureFlags; 92104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageUsageFlagBits { 9233fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 0x00000001, 9243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_USAGE_TRANSFER_DST_BIT = 0x00000002, 92504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_SAMPLED_BIT = 0x00000004, 92604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_STORAGE_BIT = 0x00000008, 92704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 0x00000010, 9285ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020, 92904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040, 93004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080, 9312676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 93204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageUsageFlagBits; 93304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkImageUsageFlags; 93404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageCreateFlagBits { 9365ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 0x00000001, 9375ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002, 9385ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 0x00000004, 9395ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 0x00000008, 9405ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 0x00000010, 941ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_IMAGE_CREATE_BIND_SFR_BIT_KHX = 0x00000040, 94277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR = 0x00000020, 9432676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 9445ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkImageCreateFlagBits; 9455ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkImageCreateFlags; 9465ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 9473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSampleCountFlagBits { 9485ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_1_BIT = 0x00000001, 9495ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_2_BIT = 0x00000002, 9505ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_4_BIT = 0x00000004, 9515ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_8_BIT = 0x00000008, 9525ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_16_BIT = 0x00000010, 9535ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_32_BIT = 0x00000020, 9545ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_64_BIT = 0x00000040, 9552676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 9565ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkSampleCountFlagBits; 9575ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkSampleCountFlags; 9585ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 9593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueueFlagBits { 96004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUEUE_GRAPHICS_BIT = 0x00000001, 96104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUEUE_COMPUTE_BIT = 0x00000002, 96265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_QUEUE_TRANSFER_BIT = 0x00000004, 963b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008, 9642676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 96504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueueFlagBits; 96604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueueFlags; 96704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9683e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkMemoryPropertyFlagBits { 969d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001, 970d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002, 971d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004, 972d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008, 973d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010, 9742676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 97504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryPropertyFlagBits; 97604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryPropertyFlags; 97704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkMemoryHeapFlagBits { 979d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 0x00000001, 980ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX = 0x00000002, 9812676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 98204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryHeapFlagBits; 98304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryHeapFlags; 984a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDeviceCreateFlags; 985a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDeviceQueueCreateFlags; 986543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall 987543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Halltypedef enum VkPipelineStageFlagBits { 988543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 0x00000001, 989543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 0x00000002, 990543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 0x00000004, 991543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 0x00000008, 992543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010, 993543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020, 994543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 0x00000040, 995543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 0x00000080, 996543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 0x00000100, 997543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 0x00000200, 998543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400, 999543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 0x00000800, 1000543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TRANSFER_BIT = 0x00001000, 1001543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 0x00002000, 1002543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_HOST_BIT = 0x00004000, 1003543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000, 1004543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000, 1005289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000, 10062676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1007543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall} VkPipelineStageFlagBits; 1008543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Halltypedef VkFlags VkPipelineStageFlags; 100904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryMapFlags; 101004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageAspectFlagBits { 1012a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001, 1013a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002, 1014a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004, 1015a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008, 10162676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1017a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkImageAspectFlagBits; 10183e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkImageAspectFlags; 1019a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 10203e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSparseImageFormatFlagBits { 1021b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 0x00000001, 1022b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 0x00000002, 1023b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 0x00000004, 10242676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 102504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageFormatFlagBits; 102604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSparseImageFormatFlags; 1027091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall 1028091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Halltypedef enum VkSparseMemoryBindFlagBits { 1029091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_SPARSE_MEMORY_BIND_METADATA_BIT = 0x00000001, 10302676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1031091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall} VkSparseMemoryBindFlagBits; 103204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSparseMemoryBindFlags; 103304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFenceCreateFlagBits { 103504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FENCE_CREATE_SIGNALED_BIT = 0x00000001, 10362676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 103704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFenceCreateFlagBits; 103804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkFenceCreateFlags; 103904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSemaphoreCreateFlags; 104004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkEventCreateFlags; 1041a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkQueryPoolCreateFlags; 104204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10433e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryPipelineStatisticFlagBits { 1044ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 0x00000001, 1045ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 0x00000002, 1046ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 0x00000004, 1047ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 0x00000008, 1048ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 0x00000010, 1049ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 0x00000020, 1050ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 0x00000040, 1051ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 0x00000080, 1052ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 0x00000100, 1053ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 0x00000200, 1054ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400, 10552676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 105604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryPipelineStatisticFlagBits; 105704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueryPipelineStatisticFlags; 105804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryResultFlagBits { 106004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_64_BIT = 0x00000001, 106104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_WAIT_BIT = 0x00000002, 106204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004, 106304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008, 10642676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 106504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryResultFlagBits; 106604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueryResultFlags; 106704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10683e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBufferCreateFlagBits { 1069a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 0x00000001, 1070a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002, 1071a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004, 10722676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1073a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkBufferCreateFlagBits; 1074a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkBufferCreateFlags; 1075a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 10763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBufferUsageFlagBits { 10773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 0x00000001, 10783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BUFFER_USAGE_TRANSFER_DST_BIT = 0x00000002, 107904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000004, 108004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 0x00000008, 108104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 0x00000010, 108204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 0x00000020, 108304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040, 108404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080, 108504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100, 10862676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 108704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferUsageFlagBits; 108804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkBufferUsageFlags; 1089a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkBufferViewCreateFlags; 10905ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkImageViewCreateFlags; 109104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkShaderModuleCreateFlags; 10923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineCacheCreateFlags; 109304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPipelineCreateFlagBits { 10953e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001, 10963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002, 10973e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004, 1098ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX = 0x00000008, 1099ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PIPELINE_CREATE_DISPATCH_BASE_KHX = 0x00000010, 11002676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 11013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall} VkPipelineCreateFlagBits; 11023e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineCreateFlags; 11033e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineShaderStageCreateFlags; 11043e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall 11053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkShaderStageFlagBits { 1106a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_VERTEX_BIT = 0x00000001, 1107a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002, 1108a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004, 1109a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008, 1110a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010, 1111a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020, 11122676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F, 1113a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_ALL = 0x7FFFFFFF, 11142676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1115a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkShaderStageFlagBits; 1116a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineVertexInputStateCreateFlags; 1117a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineInputAssemblyStateCreateFlags; 11183dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef VkFlags VkPipelineTessellationStateCreateFlags; 1119a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineViewportStateCreateFlags; 11203fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkPipelineRasterizationStateCreateFlags; 1121c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall 11223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCullModeFlagBits { 1123c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_NONE = 0, 1124c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_FRONT_BIT = 0x00000001, 1125c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_BACK_BIT = 0x00000002, 11262676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_CULL_MODE_FRONT_AND_BACK = 0x00000003, 11272676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_CULL_MODE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1128c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall} VkCullModeFlagBits; 1129c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Halltypedef VkFlags VkCullModeFlags; 1130a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineMultisampleStateCreateFlags; 1131a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineDepthStencilStateCreateFlags; 1132a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineColorBlendStateCreateFlags; 1133a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 11343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkColorComponentFlagBits { 113565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_R_BIT = 0x00000001, 113665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_G_BIT = 0x00000002, 113765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_B_BIT = 0x00000004, 113865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_A_BIT = 0x00000008, 11392676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 114065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkColorComponentFlagBits; 114165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Halltypedef VkFlags VkColorComponentFlags; 1142a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineDynamicStateCreateFlags; 1143a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineLayoutCreateFlags; 114404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkShaderStageFlags; 1145a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkSamplerCreateFlags; 1146ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 1147ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkDescriptorSetLayoutCreateFlagBits { 1148ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001, 1149ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1150ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDescriptorSetLayoutCreateFlagBits; 1151a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDescriptorSetLayoutCreateFlags; 115204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 11533e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDescriptorPoolCreateFlagBits { 1154fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001, 11552676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1156fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall} VkDescriptorPoolCreateFlagBits; 1157fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Halltypedef VkFlags VkDescriptorPoolCreateFlags; 1158fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Halltypedef VkFlags VkDescriptorPoolResetFlags; 1159a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkFramebufferCreateFlags; 1160a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkRenderPassCreateFlags; 1161fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall 11623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentDescriptionFlagBits { 11635ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 0x00000001, 11642676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 11655ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkAttachmentDescriptionFlagBits; 11665ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkAttachmentDescriptionFlags; 1167ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 1168ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkSubpassDescriptionFlagBits { 1169ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX = 0x00000001, 1170ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX = 0x00000002, 1171ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1172ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkSubpassDescriptionFlagBits; 117304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSubpassDescriptionFlags; 117404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 11753e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAccessFlagBits { 11763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 0x00000001, 11773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INDEX_READ_BIT = 0x00000002, 11783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004, 11793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_UNIFORM_READ_BIT = 0x00000008, 11803e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 0x00000010, 11813e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_SHADER_READ_BIT = 0x00000020, 11823e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_SHADER_WRITE_BIT = 0x00000040, 11833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 0x00000080, 11843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100, 11853e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200, 11863e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400, 11873e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_TRANSFER_READ_BIT = 0x00000800, 11883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_TRANSFER_WRITE_BIT = 0x00001000, 11893e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_HOST_READ_BIT = 0x00002000, 11903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_HOST_WRITE_BIT = 0x00004000, 11913e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_MEMORY_READ_BIT = 0x00008000, 11923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000, 1193289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX = 0x00020000, 1194289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX = 0x00040000, 11952676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 11963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall} VkAccessFlagBits; 11973e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkAccessFlags; 11983e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall 11993e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDependencyFlagBits { 1200dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall VK_DEPENDENCY_BY_REGION_BIT = 0x00000001, 1201ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX = 0x00000002, 1202ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX = 0x00000004, 12032676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEPENDENCY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1204dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall} VkDependencyFlagBits; 1205dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Halltypedef VkFlags VkDependencyFlags; 1206dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall 12073e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandPoolCreateFlagBits { 12083fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 0x00000001, 12093fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 0x00000002, 12102676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12113fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolCreateFlagBits; 12123fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandPoolCreateFlags; 121304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12143e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandPoolResetFlagBits { 12153fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001, 12162676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12173fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolResetFlagBits; 12183fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandPoolResetFlags; 121904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12203e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferUsageFlagBits { 12213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001, 12223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002, 12233fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004, 12242676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12253fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferUsageFlagBits; 12263fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandBufferUsageFlags; 122704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1228f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef enum VkQueryControlFlagBits { 1229f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001, 12302676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 1231f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall} VkQueryControlFlagBits; 1232f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkQueryControlFlags; 1233f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall 12343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferResetFlagBits { 12353fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001, 12362676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferResetFlagBits; 12383fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandBufferResetFlags; 123904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12403e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkStencilFaceFlagBits { 12415ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_STENCIL_FACE_FRONT_BIT = 0x00000001, 12425ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_STENCIL_FACE_BACK_BIT = 0x00000002, 12432676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STENCIL_FRONT_AND_BACK = 0x00000003, 12442676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF 12455ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkStencilFaceFlagBits; 12465ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkStencilFaceFlags; 124704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1248e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void* (VKAPI_PTR *PFN_vkAllocationFunction)( 12493e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 12503e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 12513e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t alignment, 12523e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 125303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1254e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void* (VKAPI_PTR *PFN_vkReallocationFunction)( 12553e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 12563e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pOriginal, 12573e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 12583e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t alignment, 12593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 126004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1261e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeFunction)( 12623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 12633e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pMemory); 126404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1265e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)( 12663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 12673e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 12683e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkInternalAllocationType allocationType, 12693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 127003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1271e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)( 12723e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 12733e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 12743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkInternalAllocationType allocationType, 12753e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 127603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1277e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkVoidFunction)(void); 12785ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 12793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkApplicationInfo { 1280563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1281563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1282563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pApplicationName; 1283563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t applicationVersion; 1284563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pEngineName; 1285563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t engineVersion; 1286563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t apiVersion; 12875ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkApplicationInfo; 12885ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 12893e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkInstanceCreateInfo { 1290563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1291563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1292563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkInstanceCreateFlags flags; 1293563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkApplicationInfo* pApplicationInfo; 1294563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledLayerCount; 1295563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledLayerNames; 1296563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledExtensionCount; 1297563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledExtensionNames; 129804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkInstanceCreateInfo; 129904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13003e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAllocationCallbacks { 1301563380d389732337a84e7455caa01ec955ebee30Jesse Hall void* pUserData; 1302563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkAllocationFunction pfnAllocation; 1303563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkReallocationFunction pfnReallocation; 1304563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkFreeFunction pfnFree; 1305563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkInternalAllocationNotification pfnInternalAllocation; 1306563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkInternalFreeNotification pfnInternalFree; 13073fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkAllocationCallbacks; 130803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 13093e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceFeatures { 1310563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 robustBufferAccess; 1311563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fullDrawIndexUint32; 1312563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 imageCubeArray; 1313563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 independentBlend; 1314563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 geometryShader; 1315563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 tessellationShader; 1316563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sampleRateShading; 1317563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 dualSrcBlend; 1318563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 logicOp; 1319563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 multiDrawIndirect; 1320563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 drawIndirectFirstInstance; 1321563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthClamp; 1322563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBiasClamp; 1323563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fillModeNonSolid; 1324563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBounds; 1325563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 wideLines; 1326563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 largePoints; 1327563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToOne; 1328563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 multiViewport; 1329563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 samplerAnisotropy; 1330563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionETC2; 1331563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionASTC_LDR; 1332563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionBC; 1333563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 occlusionQueryPrecise; 1334563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 pipelineStatisticsQuery; 1335563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 vertexPipelineStoresAndAtomics; 1336563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fragmentStoresAndAtomics; 1337563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderTessellationAndGeometryPointSize; 1338563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderImageGatherExtended; 1339563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageExtendedFormats; 1340563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageMultisample; 1341563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageReadWithoutFormat; 1342563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageWriteWithoutFormat; 1343563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderUniformBufferArrayDynamicIndexing; 1344563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderSampledImageArrayDynamicIndexing; 1345563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageBufferArrayDynamicIndexing; 1346563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageArrayDynamicIndexing; 1347563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderClipDistance; 1348563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderCullDistance; 1349563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderFloat64; 1350563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderInt64; 1351563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderInt16; 1352563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderResourceResidency; 1353563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderResourceMinLod; 1354563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseBinding; 1355563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyBuffer; 1356563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyImage2D; 1357563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyImage3D; 1358563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency2Samples; 1359563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency4Samples; 1360563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency8Samples; 1361563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency16Samples; 1362563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyAliased; 1363563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 variableMultisampleRate; 1364563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 inheritedQueries; 136504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceFeatures; 136604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13673e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFormatProperties { 1368563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags linearTilingFeatures; 1369563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags optimalTilingFeatures; 1370563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags bufferFeatures; 137104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormatProperties; 137204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13733e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtent3D { 1374563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 1375563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 1376563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t depth; 13775ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkExtent3D; 13785ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 13793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageFormatProperties { 1380563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D maxExtent; 1381563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxMipLevels; 1382563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxArrayLayers; 1383563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampleCounts; 1384563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize maxResourceSize; 138504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageFormatProperties; 138604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13873e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceLimits { 1388563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension1D; 1389563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension2D; 1390563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension3D; 1391563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimensionCube; 1392563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageArrayLayers; 1393563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelBufferElements; 1394563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxUniformBufferRange; 1395563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxStorageBufferRange; 1396563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPushConstantsSize; 1397563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxMemoryAllocationCount; 1398563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSamplerAllocationCount; 1399563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize bufferImageGranularity; 1400563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize sparseAddressSpaceSize; 1401563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxBoundDescriptorSets; 1402563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorSamplers; 1403563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorUniformBuffers; 1404563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorStorageBuffers; 1405563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorSampledImages; 1406563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorStorageImages; 1407563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorInputAttachments; 1408563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageResources; 1409563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetSamplers; 1410563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetUniformBuffers; 1411563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetUniformBuffersDynamic; 1412563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageBuffers; 1413563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageBuffersDynamic; 1414563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetSampledImages; 1415563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageImages; 1416563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetInputAttachments; 1417563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputAttributes; 1418563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputBindings; 1419563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputAttributeOffset; 1420563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputBindingStride; 1421563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexOutputComponents; 1422563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationGenerationLevel; 1423563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationPatchSize; 1424563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerVertexInputComponents; 1425563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerVertexOutputComponents; 1426563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerPatchOutputComponents; 1427563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlTotalOutputComponents; 1428563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationEvaluationInputComponents; 1429563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationEvaluationOutputComponents; 1430563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryShaderInvocations; 1431563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryInputComponents; 1432563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryOutputComponents; 1433563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryOutputVertices; 1434563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryTotalOutputComponents; 1435563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentInputComponents; 1436563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentOutputAttachments; 1437563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentDualSrcAttachments; 1438563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentCombinedOutputResources; 1439563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeSharedMemorySize; 1440563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupCount[3]; 1441563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupInvocations; 1442563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupSize[3]; 1443563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subPixelPrecisionBits; 1444563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subTexelPrecisionBits; 1445563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipmapPrecisionBits; 1446563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDrawIndexedIndexValue; 1447563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDrawIndirectCount; 1448563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxSamplerLodBias; 1449563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxSamplerAnisotropy; 1450563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxViewports; 1451563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxViewportDimensions[2]; 1452563380d389732337a84e7455caa01ec955ebee30Jesse Hall float viewportBoundsRange[2]; 1453563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t viewportSubPixelBits; 1454563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t minMemoryMapAlignment; 1455563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minTexelBufferOffsetAlignment; 1456563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minUniformBufferOffsetAlignment; 1457563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minStorageBufferOffsetAlignment; 1458563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t minTexelOffset; 1459563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelOffset; 1460563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t minTexelGatherOffset; 1461563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelGatherOffset; 1462563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minInterpolationOffset; 1463563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxInterpolationOffset; 1464563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subPixelInterpolationOffsetBits; 1465563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferWidth; 1466563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferHeight; 1467563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferLayers; 1468563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferColorSampleCounts; 1469563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferDepthSampleCounts; 1470563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferStencilSampleCounts; 1471563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferNoAttachmentsSampleCounts; 1472563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxColorAttachments; 1473563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageColorSampleCounts; 1474563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageIntegerSampleCounts; 1475563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageDepthSampleCounts; 1476563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageStencilSampleCounts; 1477563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags storageImageSampleCounts; 1478563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSampleMaskWords; 1479563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 timestampComputeAndGraphics; 1480563380d389732337a84e7455caa01ec955ebee30Jesse Hall float timestampPeriod; 1481563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxClipDistances; 1482563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxCullDistances; 1483563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxCombinedClipAndCullDistances; 1484563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t discreteQueuePriorities; 1485563380d389732337a84e7455caa01ec955ebee30Jesse Hall float pointSizeRange[2]; 1486563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidthRange[2]; 1487563380d389732337a84e7455caa01ec955ebee30Jesse Hall float pointSizeGranularity; 1488563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidthGranularity; 1489563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 strictLines; 1490563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 standardSampleLocations; 1491563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize optimalBufferCopyOffsetAlignment; 1492563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize optimalBufferCopyRowPitchAlignment; 1493563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize nonCoherentAtomSize; 149404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceLimits; 149504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceSparseProperties { 1497563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard2DBlockShape; 1498563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard2DMultisampleBlockShape; 1499563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard3DBlockShape; 1500563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyAlignedMipSize; 1501563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyNonResidentStrict; 15025ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkPhysicalDeviceSparseProperties; 15035ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 15043e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceProperties { 1505563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t apiVersion; 1506563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t driverVersion; 1507563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t vendorID; 1508563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t deviceID; 1509563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceType deviceType; 1510563380d389732337a84e7455caa01ec955ebee30Jesse Hall char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE]; 1511563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint8_t pipelineCacheUUID[VK_UUID_SIZE]; 1512563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceLimits limits; 1513563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceSparseProperties sparseProperties; 151404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceProperties; 151504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15163e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkQueueFamilyProperties { 1517563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueueFlags queueFlags; 1518563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCount; 1519563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t timestampValidBits; 1520563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D minImageTransferGranularity; 15215ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkQueueFamilyProperties; 152204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15233e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryType { 1524563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryPropertyFlags propertyFlags; 1525563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t heapIndex; 152604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryType; 152704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryHeap { 1529563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1530563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryHeapFlags flags; 153104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryHeap; 153204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceMemoryProperties { 1534563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeCount; 1535563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES]; 1536563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryHeapCount; 1537563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS]; 153804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceMemoryProperties; 153904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15403e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDeviceQueueCreateInfo { 1541563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1542563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1543563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceQueueCreateFlags flags; 1544563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndex; 1545563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCount; 1546563380d389732337a84e7455caa01ec955ebee30Jesse Hall const float* pQueuePriorities; 154704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDeviceQueueCreateInfo; 154804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15493e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDeviceCreateInfo { 1550563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1551563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1552563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceCreateFlags flags; 1553563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCreateInfoCount; 1554563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDeviceQueueCreateInfo* pQueueCreateInfos; 1555563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledLayerCount; 1556563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledLayerNames; 1557563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledExtensionCount; 1558563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledExtensionNames; 1559563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPhysicalDeviceFeatures* pEnabledFeatures; 156004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDeviceCreateInfo; 156104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtensionProperties { 1563563380d389732337a84e7455caa01ec955ebee30Jesse Hall char extensionName[VK_MAX_EXTENSION_NAME_SIZE]; 1564563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t specVersion; 156504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkExtensionProperties; 156604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15673e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkLayerProperties { 1568563380d389732337a84e7455caa01ec955ebee30Jesse Hall char layerName[VK_MAX_EXTENSION_NAME_SIZE]; 1569563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t specVersion; 1570563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t implementationVersion; 1571563380d389732337a84e7455caa01ec955ebee30Jesse Hall char description[VK_MAX_DESCRIPTION_SIZE]; 157204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkLayerProperties; 157304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubmitInfo { 1575563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1576563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1577563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t waitSemaphoreCount; 1578563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pWaitSemaphores; 1579563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineStageFlags* pWaitDstStageMask; 1580563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t commandBufferCount; 1581563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkCommandBuffer* pCommandBuffers; 1582563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t signalSemaphoreCount; 1583563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pSignalSemaphores; 1584a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall} VkSubmitInfo; 1585a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall 15863e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryAllocateInfo { 1587563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1588563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1589563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize allocationSize; 1590563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeIndex; 15913fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkMemoryAllocateInfo; 159204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15933e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMappedMemoryRange { 1594563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1595563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1596563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1597563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1598563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 159904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMappedMemoryRange; 160004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryRequirements { 1602563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1603563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize alignment; 1604563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeBits; 160504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryRequirements; 160604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16073e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageFormatProperties { 1608563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1609563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D imageGranularity; 1610563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseImageFormatFlags flags; 161104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageFormatProperties; 161204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16133e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryRequirements { 1614563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseImageFormatProperties formatProperties; 1615563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t imageMipTailFirstLod; 1616563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailSize; 1617563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailOffset; 1618563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailStride; 161904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageMemoryRequirements; 162004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseMemoryBind { 1622563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize resourceOffset; 1623563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1624563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1625563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize memoryOffset; 1626563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseMemoryBindFlags flags; 1627a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseMemoryBind; 1628a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 16293e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseBufferMemoryBindInfo { 1630563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 1631563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1632563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseMemoryBind* pBinds; 1633a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseBufferMemoryBindInfo; 1634a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 16353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageOpaqueMemoryBindInfo { 1636563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1637563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1638563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseMemoryBind* pBinds; 1639a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseImageOpaqueMemoryBindInfo; 164004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16413e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresource { 1642563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1643563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevel; 1644563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t arrayLayer; 164504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageSubresource; 164604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkOffset3D { 1648563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t x; 1649563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t y; 1650563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t z; 165104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkOffset3D; 165204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16533e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryBind { 1654563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresource subresource; 1655563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D offset; 1656563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 1657563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1658563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize memoryOffset; 1659563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseMemoryBindFlags flags; 1660a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseImageMemoryBind; 1661a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 16623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryBindInfo { 1663563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1664563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1665563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseImageMemoryBind* pBinds; 166604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageMemoryBindInfo; 166704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16683e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBindSparseInfo { 166904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkStructureType sType; 167004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const void* pNext; 1671a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t waitSemaphoreCount; 1672a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSemaphore* pWaitSemaphores; 1673a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t bufferBindCount; 1674a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseBufferMemoryBindInfo* pBufferBinds; 1675a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t imageOpaqueBindCount; 1676a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds; 1677a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t imageBindCount; 1678a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseImageMemoryBindInfo* pImageBinds; 1679a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t signalSemaphoreCount; 1680a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSemaphore* pSignalSemaphores; 1681a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkBindSparseInfo; 1682a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 16833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFenceCreateInfo { 1684563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1685563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1686563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFenceCreateFlags flags; 168704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFenceCreateInfo; 168804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16893e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSemaphoreCreateInfo { 1690563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1691563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1692563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSemaphoreCreateFlags flags; 169304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSemaphoreCreateInfo; 169404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16953e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkEventCreateInfo { 1696563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1697563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1698563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkEventCreateFlags flags; 169904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkEventCreateInfo; 170004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkQueryPoolCreateInfo { 1702563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1703563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1704563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPoolCreateFlags flags; 1705563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryType queryType; 1706563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queryCount; 1707563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPipelineStatisticFlags pipelineStatistics; 170804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryPoolCreateInfo; 170904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferCreateInfo { 1711563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1712563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1713563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferCreateFlags flags; 1714563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1715563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferUsageFlags usage; 1716563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode sharingMode; 1717563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 1718563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 171904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferCreateInfo; 172004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferViewCreateInfo { 1722563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1723563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1724563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferViewCreateFlags flags; 1725563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 1726563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1727563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1728563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize range; 172904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferViewCreateInfo; 173004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageCreateInfo { 1732563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1733563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1734563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageCreateFlags flags; 1735563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageType imageType; 1736563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1737563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 1738563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevels; 1739563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t arrayLayers; 1740563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits samples; 1741563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageTiling tiling; 1742563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags usage; 1743563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode sharingMode; 1744563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 1745563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 1746563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout initialLayout; 174704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageCreateInfo; 174804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17493e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubresourceLayout { 1750563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1751563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1752563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize rowPitch; 1753563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize arrayPitch; 1754563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize depthPitch; 175504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubresourceLayout; 175604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17573e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkComponentMapping { 1758563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle r; 1759563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle g; 1760563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle b; 1761563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle a; 176265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkComponentMapping; 176304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17643e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresourceRange { 1765563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1766563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseMipLevel; 1767563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t levelCount; 1768563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 1769563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 177004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageSubresourceRange; 177104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17723e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageViewCreateInfo { 1773563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1774563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1775563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageViewCreateFlags flags; 1776563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1777563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageViewType viewType; 1778563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1779563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentMapping components; 1780563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceRange subresourceRange; 178104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageViewCreateInfo; 178204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkShaderModuleCreateInfo { 1784563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1785563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1786563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderModuleCreateFlags flags; 1787563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t codeSize; 1788563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pCode; 178904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkShaderModuleCreateInfo; 179004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17913e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineCacheCreateInfo { 1792563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1793563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1794563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCacheCreateFlags flags; 1795563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t initialDataSize; 1796563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pInitialData; 179704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineCacheCreateInfo; 179804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17993e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSpecializationMapEntry { 1800563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t constantID; 1801563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 1802563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t size; 180304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSpecializationMapEntry; 180404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSpecializationInfo { 1806563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mapEntryCount; 1807563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSpecializationMapEntry* pMapEntries; 1808563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t dataSize; 1809563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pData; 181004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSpecializationInfo; 181104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18123e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineShaderStageCreateInfo { 1813563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1814563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1815563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineShaderStageCreateFlags flags; 1816563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlagBits stage; 1817563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderModule module; 1818563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pName; 1819563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSpecializationInfo* pSpecializationInfo; 182004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineShaderStageCreateInfo; 182104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkVertexInputBindingDescription { 1823563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 1824563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stride; 1825563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkVertexInputRate inputRate; 182604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkVertexInputBindingDescription; 182704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkVertexInputAttributeDescription { 1829563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t location; 1830563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 1831563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1832563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 183304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkVertexInputAttributeDescription; 183404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineVertexInputStateCreateInfo { 183604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkStructureType sType; 183704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const void* pNext; 1838a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPipelineVertexInputStateCreateFlags flags; 183903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t vertexBindingDescriptionCount; 184004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkVertexInputBindingDescription* pVertexBindingDescriptions; 184103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t vertexAttributeDescriptionCount; 184204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkVertexInputAttributeDescription* pVertexAttributeDescriptions; 184304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineVertexInputStateCreateInfo; 184404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18453e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineInputAssemblyStateCreateInfo { 1846563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1847563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1848563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineInputAssemblyStateCreateFlags flags; 1849563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPrimitiveTopology topology; 1850563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 primitiveRestartEnable; 185104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineInputAssemblyStateCreateInfo; 185204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18533e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineTessellationStateCreateInfo { 1854563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1855563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1856563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineTessellationStateCreateFlags flags; 1857563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t patchControlPoints; 185804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineTessellationStateCreateInfo; 185904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18603e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkViewport { 1861563380d389732337a84e7455caa01ec955ebee30Jesse Hall float x; 1862563380d389732337a84e7455caa01ec955ebee30Jesse Hall float y; 1863563380d389732337a84e7455caa01ec955ebee30Jesse Hall float width; 1864563380d389732337a84e7455caa01ec955ebee30Jesse Hall float height; 1865563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minDepth; 1866563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxDepth; 18675ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkViewport; 18685ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 18693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkOffset2D { 1870563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t x; 1871563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t y; 18725ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkOffset2D; 18735ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 18743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtent2D { 1875563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 1876563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 18775ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkExtent2D; 18785ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 18793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkRect2D { 1880563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D offset; 1881563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D extent; 18825ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkRect2D; 18835ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 18843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineViewportStateCreateInfo { 1885563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1886563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1887563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineViewportStateCreateFlags flags; 1888563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t viewportCount; 1889563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkViewport* pViewports; 1890563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t scissorCount; 1891563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkRect2D* pScissors; 189204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineViewportStateCreateInfo; 189304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineRasterizationStateCreateInfo { 1895563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1896563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1897563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineRasterizationStateCreateFlags flags; 1898563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthClampEnable; 1899563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 rasterizerDiscardEnable; 1900563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPolygonMode polygonMode; 1901563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCullModeFlags cullMode; 1902563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFrontFace frontFace; 1903563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBiasEnable; 1904563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasConstantFactor; 1905563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasClamp; 1906563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasSlopeFactor; 1907563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidth; 19083fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkPipelineRasterizationStateCreateInfo; 190904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineMultisampleStateCreateInfo { 1911563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1912563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1913563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineMultisampleStateCreateFlags flags; 1914563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits rasterizationSamples; 1915563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sampleShadingEnable; 1916563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minSampleShading; 1917563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSampleMask* pSampleMask; 1918563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToCoverageEnable; 1919563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToOneEnable; 192004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineMultisampleStateCreateInfo; 192104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkStencilOpState { 1923563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp failOp; 1924563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp passOp; 1925563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp depthFailOp; 1926563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp compareOp; 1927563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t compareMask; 1928563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t writeMask; 1929563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t reference; 193004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStencilOpState; 193104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19323e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineDepthStencilStateCreateInfo { 1933563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1934563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1935563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineDepthStencilStateCreateFlags flags; 1936563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthTestEnable; 1937563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthWriteEnable; 1938563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp depthCompareOp; 1939563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBoundsTestEnable; 1940563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 stencilTestEnable; 1941563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOpState front; 1942563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOpState back; 1943563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minDepthBounds; 1944563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxDepthBounds; 194504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineDepthStencilStateCreateInfo; 194604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineColorBlendAttachmentState { 1948563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 blendEnable; 1949563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor srcColorBlendFactor; 1950563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor dstColorBlendFactor; 1951563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendOp colorBlendOp; 1952563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor srcAlphaBlendFactor; 1953563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor dstAlphaBlendFactor; 1954563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendOp alphaBlendOp; 1955563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorComponentFlags colorWriteMask; 195604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineColorBlendAttachmentState; 195704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19583e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineColorBlendStateCreateInfo { 1959563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1960563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1961563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineColorBlendStateCreateFlags flags; 1962563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 logicOpEnable; 1963563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkLogicOp logicOp; 1964563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 1965563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineColorBlendAttachmentState* pAttachments; 1966563380d389732337a84e7455caa01ec955ebee30Jesse Hall float blendConstants[4]; 196704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineColorBlendStateCreateInfo; 196804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineDynamicStateCreateInfo { 1970563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1971563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1972563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineDynamicStateCreateFlags flags; 1973563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dynamicStateCount; 1974563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDynamicState* pDynamicStates; 19755ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkPipelineDynamicStateCreateInfo; 19765ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 19773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkGraphicsPipelineCreateInfo { 1978563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1979563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1980563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCreateFlags flags; 1981563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stageCount; 1982563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineShaderStageCreateInfo* pStages; 1983563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineVertexInputStateCreateInfo* pVertexInputState; 1984563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState; 1985563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineTessellationStateCreateInfo* pTessellationState; 1986563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineViewportStateCreateInfo* pViewportState; 1987563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineRasterizationStateCreateInfo* pRasterizationState; 1988563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineMultisampleStateCreateInfo* pMultisampleState; 1989563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState; 1990563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineColorBlendStateCreateInfo* pColorBlendState; 1991563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineDynamicStateCreateInfo* pDynamicState; 1992563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayout layout; 1993563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 1994563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpass; 1995563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipeline basePipelineHandle; 1996563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t basePipelineIndex; 199704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkGraphicsPipelineCreateInfo; 199804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19993e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkComputePipelineCreateInfo { 2000563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2001563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2002563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCreateFlags flags; 2003563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineShaderStageCreateInfo stage; 2004563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayout layout; 2005563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipeline basePipelineHandle; 2006563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t basePipelineIndex; 200704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkComputePipelineCreateInfo; 200804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20093e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPushConstantRange { 2010563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlags stageFlags; 2011563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 2012563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t size; 201304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPushConstantRange; 201404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineLayoutCreateInfo { 2016563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2017563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2018563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayoutCreateFlags flags; 2019563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t setLayoutCount; 2020563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayout* pSetLayouts; 2021563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t pushConstantRangeCount; 2022563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPushConstantRange* pPushConstantRanges; 202304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineLayoutCreateInfo; 202404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20253e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSamplerCreateInfo { 2026563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2027563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2028563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerCreateFlags flags; 2029563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFilter magFilter; 2030563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFilter minFilter; 2031563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerMipmapMode mipmapMode; 2032563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeU; 2033563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeV; 2034563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeW; 2035563380d389732337a84e7455caa01ec955ebee30Jesse Hall float mipLodBias; 2036563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 anisotropyEnable; 2037563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxAnisotropy; 2038563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 compareEnable; 2039563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp compareOp; 2040563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minLod; 2041563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxLod; 2042563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBorderColor borderColor; 2043563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 unnormalizedCoordinates; 204404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSamplerCreateInfo; 204504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20463e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetLayoutBinding { 2047563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 2048563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType descriptorType; 2049563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 2050563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlags stageFlags; 2051563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSampler* pImmutableSamplers; 205204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorSetLayoutBinding; 205304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20543e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetLayoutCreateInfo { 2055563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2056563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2057563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSetLayoutCreateFlags flags; 2058563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindingCount; 2059563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayoutBinding* pBindings; 206004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorSetLayoutCreateInfo; 206104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorPoolSize { 2063563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType type; 2064563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 206565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkDescriptorPoolSize; 206604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20673e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorPoolCreateInfo { 2068563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2069563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2070563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorPoolCreateFlags flags; 2071563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSets; 2072563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t poolSizeCount; 2073563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorPoolSize* pPoolSizes; 207404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorPoolCreateInfo; 207504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetAllocateInfo { 2077563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2078563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2079563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorPool descriptorPool; 2080563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorSetCount; 2081563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayout* pSetLayouts; 20823fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDescriptorSetAllocateInfo; 2083fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall 20843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorImageInfo { 2085563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampler sampler; 2086563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageView imageView; 2087563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout imageLayout; 2088a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkDescriptorImageInfo; 2089a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 20903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorBufferInfo { 2091563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 2092563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 2093563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize range; 20945ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkDescriptorBufferInfo; 20955ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 20963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkWriteDescriptorSet { 2097563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2098563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2099563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet dstSet; 2100563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstBinding; 2101563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstArrayElement; 2102563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 2103563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType descriptorType; 2104563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorImageInfo* pImageInfo; 2105563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorBufferInfo* pBufferInfo; 2106563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkBufferView* pTexelBufferView; 210704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkWriteDescriptorSet; 210804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21093e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCopyDescriptorSet { 2110563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2111563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2112563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet srcSet; 2113563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcBinding; 2114563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcArrayElement; 2115563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet dstSet; 2116563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstBinding; 2117563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstArrayElement; 2118563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 211904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkCopyDescriptorSet; 212004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFramebufferCreateInfo { 2122563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2123563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2124563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebufferCreateFlags flags; 2125563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2126563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 2127563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkImageView* pAttachments; 2128563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 2129563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 2130563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layers; 213104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFramebufferCreateInfo; 213204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAttachmentDescription { 2134563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentDescriptionFlags flags; 2135563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 2136563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits samples; 2137563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentLoadOp loadOp; 2138563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentStoreOp storeOp; 2139563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentLoadOp stencilLoadOp; 2140563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentStoreOp stencilStoreOp; 2141563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout initialLayout; 2142563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout finalLayout; 214304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentDescription; 214404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21453e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAttachmentReference { 2146563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachment; 2147563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout layout; 214804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentReference; 214904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21503e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubpassDescription { 2151563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSubpassDescriptionFlags flags; 2152563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineBindPoint pipelineBindPoint; 2153563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t inputAttachmentCount; 2154563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pInputAttachments; 2155563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t colorAttachmentCount; 2156563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pColorAttachments; 2157563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pResolveAttachments; 2158563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pDepthStencilAttachment; 2159563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t preserveAttachmentCount; 2160563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pPreserveAttachments; 216104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubpassDescription; 216204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21633e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubpassDependency { 2164563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcSubpass; 2165563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstSubpass; 2166563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineStageFlags srcStageMask; 2167563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineStageFlags dstStageMask; 2168563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2169563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2170563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDependencyFlags dependencyFlags; 217104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubpassDependency; 217204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21733e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkRenderPassCreateInfo { 2174563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2175563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2176563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPassCreateFlags flags; 2177563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 2178563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentDescription* pAttachments; 2179563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpassCount; 2180563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSubpassDescription* pSubpasses; 2181563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dependencyCount; 2182563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSubpassDependency* pDependencies; 218304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkRenderPassCreateInfo; 218404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21853e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCommandPoolCreateInfo { 2186563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2187563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2188563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandPoolCreateFlags flags; 2189563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndex; 21903fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolCreateInfo; 219104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCommandBufferAllocateInfo { 2193563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2194563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2195563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandPool commandPool; 2196563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandBufferLevel level; 2197563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t commandBufferCount; 21983fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferAllocateInfo; 219904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22003dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkCommandBufferInheritanceInfo { 2201563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2202563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2203563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2204563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpass; 2205563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebuffer framebuffer; 2206563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 occlusionQueryEnable; 2207563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryControlFlags queryFlags; 2208563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPipelineStatisticFlags pipelineStatistics; 22093dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkCommandBufferInheritanceInfo; 22103dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 22113dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkCommandBufferBeginInfo { 2212563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2213563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2214563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandBufferUsageFlags flags; 2215563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkCommandBufferInheritanceInfo* pInheritanceInfo; 22163fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferBeginInfo; 221704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22183e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferCopy { 2219563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize srcOffset; 2220563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize dstOffset; 2221563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 222204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferCopy; 222304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22243e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresourceLayers { 2225563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 2226563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevel; 2227563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 2228563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 222965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkImageSubresourceLayers; 22305ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 22313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageCopy { 2232563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2233563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffset; 2234563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2235563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffset; 2236563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 223704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageCopy; 223804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageBlit { 2240563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2241563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffsets[2]; 2242563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2243563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffsets[2]; 224404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageBlit; 224504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22463e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferImageCopy { 2247563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize bufferOffset; 2248563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bufferRowLength; 2249563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bufferImageHeight; 2250563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers imageSubresource; 2251563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D imageOffset; 2252563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D imageExtent; 225304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferImageCopy; 225404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22553e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef union VkClearColorValue { 2256563380d389732337a84e7455caa01ec955ebee30Jesse Hall float float32[4]; 2257563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t int32[4]; 2258563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t uint32[4]; 225904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkClearColorValue; 226004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22613e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearDepthStencilValue { 2262563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depth; 2263563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stencil; 22645ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkClearDepthStencilValue; 22655ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 22663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef union VkClearValue { 2267563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearColorValue color; 2268563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearDepthStencilValue depthStencil; 2269ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall} VkClearValue; 2270ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall 22713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearAttachment { 2272563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 2273563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t colorAttachment; 2274563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearValue clearValue; 2275ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall} VkClearAttachment; 2276ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall 22773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearRect { 2278563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D rect; 2279563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 2280563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 2281a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkClearRect; 228204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageResolve { 2284563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2285563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffset; 2286563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2287563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffset; 2288563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 228904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageResolve; 229004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22913dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkMemoryBarrier { 2292563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2293563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2294563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2295563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 22963dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkMemoryBarrier; 229704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 22983e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferMemoryBarrier { 2299563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2300563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2301563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2302563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2303563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcQueueFamilyIndex; 2304563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstQueueFamilyIndex; 2305563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 2306563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 2307563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 230804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferMemoryBarrier; 230904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23103dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkImageMemoryBarrier { 2311563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2312563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2313563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2314563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2315563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout oldLayout; 2316563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout newLayout; 2317563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcQueueFamilyIndex; 2318563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstQueueFamilyIndex; 2319563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 2320563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceRange subresourceRange; 23213dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkImageMemoryBarrier; 23223dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 23233dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkRenderPassBeginInfo { 2324563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2325563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2326563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2327563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebuffer framebuffer; 2328563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D renderArea; 2329563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t clearValueCount; 2330563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkClearValue* pClearValues; 23313dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkRenderPassBeginInfo; 23323dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 23333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDispatchIndirectCommand { 2334563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t x; 2335563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t y; 2336563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t z; 23373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDispatchIndirectCommand; 233804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDrawIndexedIndirectCommand { 2340563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t indexCount; 2341563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t instanceCount; 2342563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstIndex; 2343563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t vertexOffset; 2344563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstInstance; 23453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDrawIndexedIndirectCommand; 234604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 23473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDrawIndirectCommand { 2348563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t vertexCount; 2349563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t instanceCount; 2350563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstVertex; 2351563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstInstance; 23523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDrawIndirectCommand; 235304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 235404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2355e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance); 2356e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyInstance)(VkInstance instance, const VkAllocationCallbacks* pAllocator); 2357e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices); 2358e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures); 2359e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties); 2360e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties); 2361e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties); 2362e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties); 2363e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties); 2364e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName); 2365e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetDeviceProcAddr)(VkDevice device, const char* pName); 2366e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice); 2367e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDevice)(VkDevice device, const VkAllocationCallbacks* pAllocator); 2368e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceExtensionProperties)(const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties); 2369e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties); 2370e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceLayerProperties)(uint32_t* pPropertyCount, VkLayerProperties* pProperties); 2371e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties); 2372e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetDeviceQueue)(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue); 2373e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence); 2374e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueWaitIdle)(VkQueue queue); 2375e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDeviceWaitIdle)(VkDevice device); 2376e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateMemory)(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory); 2377e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeMemory)(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator); 2378e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData); 2379e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory memory); 2380e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges); 2381e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges); 2382e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetDeviceMemoryCommitment)(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes); 2383e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory)(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset); 2384e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory)(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset); 2385e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements)(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements); 2386e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements)(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements); 2387e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements)(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements); 2388e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties); 2389e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueBindSparse)(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence); 2390e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateFence)(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence); 2391e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyFence)(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator); 2392e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences); 2393e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetFenceStatus)(VkDevice device, VkFence fence); 2394e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkWaitForFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout); 2395e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore); 2396e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator); 2397e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateEvent)(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent); 2398e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyEvent)(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator); 2399e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetEventStatus)(VkDevice device, VkEvent event); 2400e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkSetEvent)(VkDevice device, VkEvent event); 2401e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetEvent)(VkDevice device, VkEvent event); 2402e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateQueryPool)(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool); 2403e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyQueryPool)(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator); 2404f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse 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); 2405e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateBuffer)(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer); 2406e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyBuffer)(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator); 2407e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateBufferView)(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView); 2408e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyBufferView)(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator); 2409e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateImage)(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage); 2410e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyImage)(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator); 2411e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout); 2412e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateImageView)(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView); 2413e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyImageView)(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator); 2414e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule); 2415e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator); 2416e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineCache)(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache); 2417e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipelineCache)(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator); 2418e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData); 2419e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkMergePipelineCaches)(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches); 2420e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateGraphicsPipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); 2421e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateComputePipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); 2422e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipeline)(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator); 2423e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineLayout)(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout); 2424e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipelineLayout)(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator); 2425e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSampler)(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler); 2426e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator); 2427e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorSetLayout)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout); 2428e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDescriptorSetLayout)(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator); 2429e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorPool)(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool); 2430e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator); 2431e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags); 2432e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateDescriptorSets)(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets); 2433e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkFreeDescriptorSets)(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets); 2434e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSets)(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies); 2435e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateFramebuffer)(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer); 2436e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyFramebuffer)(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator); 2437e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass)(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass); 2438e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyRenderPass)(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator); 2439e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity); 2440e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateCommandPool)(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool); 2441e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyCommandPool)(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator); 2442e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags); 2443e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateCommandBuffers)(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers); 2444e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeCommandBuffers)(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers); 2445e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBeginCommandBuffer)(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo); 2446e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEndCommandBuffer)(VkCommandBuffer commandBuffer); 2447e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetCommandBuffer)(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags); 2448e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline); 2449f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetViewport)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports); 2450f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetScissor)(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors); 2451e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetLineWidth)(VkCommandBuffer commandBuffer, float lineWidth); 2452e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDepthBias)(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor); 2453e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetBlendConstants)(VkCommandBuffer commandBuffer, const float blendConstants[4]); 2454e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDepthBounds)(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds); 2455e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilCompareMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask); 2456e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilWriteMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask); 2457e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilReference)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference); 2458e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse 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); 2459e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType); 2460f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets); 2461e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance); 2462e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance); 2463e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride); 2464e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride); 2465ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ); 2466e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset); 2467e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions); 2468e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions); 2469e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBlitImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter); 2470e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions); 2471e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions); 247256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdUpdateBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData); 2473e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdFillBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data); 2474e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearColorImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges); 2475e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearDepthStencilImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges); 2476e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearAttachments)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects); 2477e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResolveImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions); 2478e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask); 2479e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask); 24803dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse 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); 24813dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse 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); 24823dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBeginQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags); 24833dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdEndQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query); 2484f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResetQueryPool)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount); 24853dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query); 2486f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyQueryPoolResults)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags); 2487f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdPushConstants)(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues); 2488e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents); 2489e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdNextSubpass)(VkCommandBuffer commandBuffer, VkSubpassContents contents); 2490e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass)(VkCommandBuffer commandBuffer); 24913dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdExecuteCommands)(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers); 249204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2493563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 2494e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance( 249504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkInstanceCreateInfo* pCreateInfo, 24963fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 249704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance* pInstance); 249804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2499e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyInstance( 250003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkInstance instance, 25013fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 250204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2503e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices( 250404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance instance, 250504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t* pPhysicalDeviceCount, 250604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice* pPhysicalDevices); 250704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2508e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures( 250904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 251004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceFeatures* pFeatures); 251104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2512e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties( 251304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 251404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 251504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormatProperties* pFormatProperties); 251604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2517e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties( 251804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 251904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 252004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageType type, 252104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageTiling tiling, 252204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageUsageFlags usage, 25235ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkImageCreateFlags flags, 252404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageFormatProperties* pImageFormatProperties); 252504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2526e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties( 252704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 252804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceProperties* pProperties); 252904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2530e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties( 253104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 253203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pQueueFamilyPropertyCount, 25335ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkQueueFamilyProperties* pQueueFamilyProperties); 253404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2535e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties( 253604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 253704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceMemoryProperties* pMemoryProperties); 253804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2539e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr( 254004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance instance, 254104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pName); 254204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2543e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr( 254404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 254504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pName); 254604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2547e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice( 254804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 254904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDeviceCreateInfo* pCreateInfo, 25503fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 255104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice* pDevice); 255204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2553e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDevice( 255403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDevice device, 25553fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 255604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2557e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties( 255804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pLayerName, 255903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 256004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtensionProperties* pProperties); 256104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2562e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties( 256304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 256404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pLayerName, 256503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 256604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtensionProperties* pProperties); 256704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2568e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties( 256903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 257004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkLayerProperties* pProperties); 257104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2572e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties( 257304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 257403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 257504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkLayerProperties* pProperties); 257604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2577e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue( 257804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 257904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queueFamilyIndex, 258004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queueIndex, 258104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue* pQueue); 258204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2583e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit( 258404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue, 2585a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall uint32_t submitCount, 2586b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall const VkSubmitInfo* pSubmits, 258704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence fence); 258804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2589e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle( 259004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue); 259104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2592e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle( 259304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device); 259404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2595e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory( 259604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 25973fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMemoryAllocateInfo* pAllocateInfo, 25983fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 25993fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory* pMemory); 260004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2601e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkFreeMemory( 260204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26033fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 26043fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 260504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2606e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkMapMemory( 260704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26083fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 260904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 261004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize size, 261104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryMapFlags flags, 261204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void** ppData); 261304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2614e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkUnmapMemory( 261504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26163fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory); 261704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2618e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges( 261904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26203fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryRangeCount, 26213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMappedMemoryRange* pMemoryRanges); 262204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2623e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges( 262404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26253fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryRangeCount, 26263fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMappedMemoryRange* pMemoryRanges); 262704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2628e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment( 262904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 263004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceMemory memory, 263104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize* pCommittedMemoryInBytes); 263204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2633e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory( 263404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 263504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 26363fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 26373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize memoryOffset); 263804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2639e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory( 264004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 264104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 26423fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 26433fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize memoryOffset); 264404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2645e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements( 264604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 264704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 264804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryRequirements* pMemoryRequirements); 264904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2650e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements( 265104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 265204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 265304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryRequirements* pMemoryRequirements); 265404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2655e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements( 265604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 265704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 265803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pSparseMemoryRequirementCount, 265904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSparseImageMemoryRequirements* pSparseMemoryRequirements); 266004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2661e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties( 266204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 266304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 266404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageType type, 2665091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VkSampleCountFlagBits samples, 266604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageUsageFlags usage, 266704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageTiling tiling, 266803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 266904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSparseImageFormatProperties* pProperties); 267004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2671e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse( 267204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue, 267303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t bindInfoCount, 2674a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkBindSparseInfo* pBindInfo, 2675a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkFence fence); 267604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2677e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateFence( 267804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 267904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFenceCreateInfo* pCreateInfo, 26803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 268104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence* pFence); 268204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2683e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyFence( 268404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 268503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkFence fence, 26863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 268704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2688e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetFences( 268904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 269004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t fenceCount, 269104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFence* pFences); 269204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2693e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus( 269404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 269504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence fence); 269604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2697e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences( 269804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 269904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t fenceCount, 270004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFence* pFences, 270104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBool32 waitAll, 270204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint64_t timeout); 270304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2704e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore( 270504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 270604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkSemaphoreCreateInfo* pCreateInfo, 27073fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 270804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSemaphore* pSemaphore); 270904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2710e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySemaphore( 271104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 271203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkSemaphore semaphore, 27133fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 271404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2715e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent( 271604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 271704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkEventCreateInfo* pCreateInfo, 27183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 271904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent* pEvent); 272004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2721e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyEvent( 272204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 272303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkEvent event, 27243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 272504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2726e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus( 272704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 272804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 272904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2730e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkSetEvent( 273104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 273204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 273304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2734e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetEvent( 273504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 273604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 273704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2738e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool( 273904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 274004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkQueryPoolCreateInfo* pCreateInfo, 27413fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 274204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool* pQueryPool); 274304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2744e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool( 274504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 274603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkQueryPool queryPool, 27473fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 274804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2749e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults( 275004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 275104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 2752f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 275304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount, 2754a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall size_t dataSize, 275504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void* pData, 2756a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall VkDeviceSize stride, 275704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryResultFlags flags); 275804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2759e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer( 276004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 276104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferCreateInfo* pCreateInfo, 27623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 276304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer* pBuffer); 276404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2765e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyBuffer( 276604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 276703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkBuffer buffer, 27683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 276904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2770e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView( 277104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 277204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferViewCreateInfo* pCreateInfo, 27733fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 277404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBufferView* pView); 277504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2776e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyBufferView( 277704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 277803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkBufferView bufferView, 27793fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 278004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2781e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateImage( 278204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 278304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageCreateInfo* pCreateInfo, 27843fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 278504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage* pImage); 278604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2787e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyImage( 278804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 278903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkImage image, 27903fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 279104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2792e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout( 279304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 279404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 279504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresource* pSubresource, 279604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSubresourceLayout* pLayout); 279704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2798e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView( 279904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 280004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageViewCreateInfo* pCreateInfo, 28013fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 280204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageView* pView); 280304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2804e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyImageView( 280504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 280603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkImageView imageView, 28073fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 280804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2809e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule( 281004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 281104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkShaderModuleCreateInfo* pCreateInfo, 28123fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 281304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkShaderModule* pShaderModule); 281404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2815e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule( 281604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 281703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkShaderModule shaderModule, 28183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 281904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2820e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache( 282104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 282204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineCacheCreateInfo* pCreateInfo, 28233fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 282404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache* pPipelineCache); 282504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2826e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache( 282704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 282803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipelineCache pipelineCache, 28293fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 283004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2831e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData( 283204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 283304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 2834a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall size_t* pDataSize, 283504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void* pData); 283604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2837e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches( 283804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 28393fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineCache dstCache, 284004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t srcCacheCount, 284104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineCache* pSrcCaches); 284204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2843e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines( 284404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 284504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 284603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t createInfoCount, 284704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkGraphicsPipelineCreateInfo* pCreateInfos, 28483fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 284904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline* pPipelines); 285004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2851e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines( 285204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 285304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 285403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t createInfoCount, 285504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkComputePipelineCreateInfo* pCreateInfos, 28563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 285704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline* pPipelines); 285804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2859e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipeline( 286004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 286103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipeline pipeline, 28623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 286304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2864e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout( 286504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 286604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineLayoutCreateInfo* pCreateInfo, 28673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 286804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout* pPipelineLayout); 286904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2870e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout( 287104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 287203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipelineLayout pipelineLayout, 28733fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 287404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2875e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler( 287604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 287704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkSamplerCreateInfo* pCreateInfo, 28783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 287904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSampler* pSampler); 288004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2881e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySampler( 288204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 288303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkSampler sampler, 28843fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 288504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2886e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout( 288704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 288804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSetLayoutCreateInfo* pCreateInfo, 28893fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 289004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorSetLayout* pSetLayout); 289104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2892e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout( 289304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 289403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDescriptorSetLayout descriptorSetLayout, 28953fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 289604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2897e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool( 289804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 289904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorPoolCreateInfo* pCreateInfo, 29003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 290104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorPool* pDescriptorPool); 290204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2903e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool( 290404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 290503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDescriptorPool descriptorPool, 29063fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 290704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2908e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool( 290904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 2910fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VkDescriptorPool descriptorPool, 2911fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VkDescriptorPoolResetFlags flags); 291204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2913e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets( 291404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 29153fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkDescriptorSetAllocateInfo* pAllocateInfo, 29165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkDescriptorSet* pDescriptorSets); 291704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2918e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets( 291904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 292004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorPool descriptorPool, 292103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t descriptorSetCount, 292204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSet* pDescriptorSets); 292304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2924e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets( 292504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 2926b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t descriptorWriteCount, 292704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkWriteDescriptorSet* pDescriptorWrites, 2928b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t descriptorCopyCount, 292904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkCopyDescriptorSet* pDescriptorCopies); 293004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2931e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer( 293204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 293304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFramebufferCreateInfo* pCreateInfo, 29343fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 293504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFramebuffer* pFramebuffer); 293604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2937e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer( 293804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 293903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkFramebuffer framebuffer, 29403fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 294104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2942e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass( 294304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 294404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkRenderPassCreateInfo* pCreateInfo, 29453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 294604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkRenderPass* pRenderPass); 294704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2948e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass( 294904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 295003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkRenderPass renderPass, 29513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 295204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2953e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity( 295404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 295504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkRenderPass renderPass, 295604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtent2D* pGranularity); 295704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2958e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool( 295904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 29603fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandPoolCreateInfo* pCreateInfo, 29613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 29623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandPool* pCommandPool); 296304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2964e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool( 296504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 296665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 29673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 296804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2969e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool( 297004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 297165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 29723fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandPoolResetFlags flags); 297304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2974e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers( 297504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 29763fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBufferAllocateInfo* pAllocateInfo, 29773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer* pCommandBuffers); 297804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2979e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers( 298004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 298165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 298203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t commandBufferCount, 29833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBuffer* pCommandBuffers); 298404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2985e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer( 29863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 29873fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBufferBeginInfo* pBeginInfo); 298804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2989e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer( 29903fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer); 299104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2992e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer( 29933fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 29943fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBufferResetFlags flags); 299504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2996e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline( 29973fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 299804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineBindPoint pipelineBindPoint, 299904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline pipeline); 300004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3001e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetViewport( 30023fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3003f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstViewport, 30045ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t viewportCount, 30055ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkViewport* pViewports); 30065ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3007e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetScissor( 30083fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3009f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstScissor, 30105ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t scissorCount, 30115ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkRect2D* pScissors); 30125ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3013e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth( 30143fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30155ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float lineWidth); 30165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3017e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias( 30183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3019a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall float depthBiasConstantFactor, 30205ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float depthBiasClamp, 3021a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall float depthBiasSlopeFactor); 302204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3023e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants( 30243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3025b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall const float blendConstants[4]); 302604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3027e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds( 30283fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30295ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float minDepthBounds, 30305ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float maxDepthBounds); 303104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3032e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask( 30333fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30345ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 303565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t compareMask); 30365ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3037e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask( 30383fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30395ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 304065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t writeMask); 30415ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 3042e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference( 30433fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30445ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 304565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t reference); 304604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3047e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets( 30483fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 304904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineBindPoint pipelineBindPoint, 305004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout layout, 305104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t firstSet, 305203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t descriptorSetCount, 305304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSet* pDescriptorSets, 305404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t dynamicOffsetCount, 305504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const uint32_t* pDynamicOffsets); 305604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3057e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer( 30583fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 305904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 306004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 306104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkIndexType indexType); 306204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3063e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers( 30643fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3065f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstBinding, 306604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t bindingCount, 306704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBuffer* pBuffers, 306804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDeviceSize* pOffsets); 306904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3070e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDraw( 30713fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 307204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t vertexCount, 30735ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t instanceCount, 30745ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstVertex, 30755ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstInstance); 307604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3077e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed( 30783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 307904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t indexCount, 30805ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t instanceCount, 30815ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstIndex, 308204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall int32_t vertexOffset, 30835ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstInstance); 308404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3085e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect( 30863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 308704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 308804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 308903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t drawCount, 309004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t stride); 309104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3092e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect( 30933fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 309404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 309504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 309603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t drawCount, 309704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t stride); 309804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3099e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDispatch( 31003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3101ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountX, 3102ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountY, 3103ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountZ); 310404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3105e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect( 31063fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 310704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 310804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset); 310904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3110e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer( 31113fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 311204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer srcBuffer, 31133fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 311404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 311504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferCopy* pRegions); 311604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3117e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyImage( 31183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 311904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 312004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 31213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 31223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 312304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 312404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageCopy* pRegions); 312504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3126e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBlitImage( 31273fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 312804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 312904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 31303fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 31313fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 313204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 313304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageBlit* pRegions, 313423ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VkFilter filter); 313504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3136e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage( 31373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 313804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer srcBuffer, 31393fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 31403fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 314104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 314204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferImageCopy* pRegions); 314304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3144e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer( 31453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 314604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 314704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 31483fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 314904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 315004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferImageCopy* pRegions); 315104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3152e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer( 31533fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 31543fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 31553fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 315604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize dataSize, 315756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall const void* pData); 315804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3159e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer( 31603fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 31613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 31623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 3163b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkDeviceSize size, 316404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t data); 316504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3166e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage( 31673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 316804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 316904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout imageLayout, 317004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkClearColorValue* pColor, 317104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rangeCount, 317204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresourceRange* pRanges); 317304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3174e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage( 31753fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 317604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 317704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout imageLayout, 31785ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkClearDepthStencilValue* pDepthStencil, 317904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rangeCount, 318004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresourceRange* pRanges); 318104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3182e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments( 31833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3184ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall uint32_t attachmentCount, 3185ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall const VkClearAttachment* pAttachments, 318604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rectCount, 3187a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall const VkClearRect* pRects); 318804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3189e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResolveImage( 31903fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 319104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 319204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 31933fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 31943fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 319504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 319604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageResolve* pRegions); 319704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3198e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetEvent( 31993fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 320004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event, 320104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags stageMask); 320204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3203e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResetEvent( 32043fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 320504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event, 320604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags stageMask); 320704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3208e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents( 32093fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 321004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t eventCount, 321104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkEvent* pEvents, 321204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags srcStageMask, 32133fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineStageFlags dstStageMask, 32143fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryBarrierCount, 32153dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkMemoryBarrier* pMemoryBarriers, 32163dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t bufferMemoryBarrierCount, 32173dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkBufferMemoryBarrier* pBufferMemoryBarriers, 32183dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t imageMemoryBarrierCount, 32193dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkImageMemoryBarrier* pImageMemoryBarriers); 322004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3221e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier( 32223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 322304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags srcStageMask, 32243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineStageFlags dstStageMask, 3225dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall VkDependencyFlags dependencyFlags, 32263fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryBarrierCount, 32273dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkMemoryBarrier* pMemoryBarriers, 32283dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t bufferMemoryBarrierCount, 32293dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkBufferMemoryBarrier* pBufferMemoryBarriers, 32303dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t imageMemoryBarrierCount, 32313dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkImageMemoryBarrier* pImageMemoryBarriers); 323204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3233e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery( 32343fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 323504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 32363dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query, 323704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryControlFlags flags); 323804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3239e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdEndQuery( 32403fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 324104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 32423dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query); 324304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3244e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool( 32453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 324604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 3247f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 324804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount); 324904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3250e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp( 32513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 32526f39a6d1c6202b5d1bb0aa0dc9b2e130e5b73666Jesse Hall VkPipelineStageFlagBits pipelineStage, 3253a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VkQueryPool queryPool, 32543dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query); 325504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3256e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults( 32573fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 325804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 3259f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 326004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount, 32613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 32623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 3263a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall VkDeviceSize stride, 326404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryResultFlags flags); 326504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3266e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPushConstants( 32673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 326804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout layout, 326904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkShaderStageFlags stageFlags, 327003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t offset, 327103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t size, 3272f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall const void* pValues); 327304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3274e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass( 32753fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 327604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkRenderPassBeginInfo* pRenderPassBegin, 327765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkSubpassContents contents); 327804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3279e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass( 32803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 328165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkSubpassContents contents); 328204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3283e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass( 32843fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer); 328504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3286e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands( 32873fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 32883dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t commandBufferCount, 32893fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBuffer* pCommandBuffers); 329004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 329104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3292091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_surface 1 32933fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR) 32941356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 329533faaad096afbd0b103bd1284ce5b78cce74aa01Jesse Hall#define VK_KHR_SURFACE_SPEC_VERSION 25 32963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface" 32972676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_COLORSPACE_SRGB_NONLINEAR_KHR VK_COLOR_SPACE_SRGB_NONLINEAR_KHR 32981356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 32991356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33003e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkColorSpaceKHR { 33012676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0, 3302bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT = 1000104001, 3303bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT = 1000104002, 3304bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT = 1000104003, 3305bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_DCI_P3_LINEAR_EXT = 1000104004, 3306bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT = 1000104005, 3307bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_BT709_LINEAR_EXT = 1000104006, 3308bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_BT709_NONLINEAR_EXT = 1000104007, 3309bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_BT2020_LINEAR_EXT = 1000104008, 3310bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_BT2020_170M_EXT = 1000104009, 3311bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_BT2020_ST2084_EXT = 1000104010, 33127f558ede108cdb5579e89ca7137013279fa9b1b7Courtney Goeltzenleuchter VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT = 1000104011, 33137f558ede108cdb5579e89ca7137013279fa9b1b7Courtney Goeltzenleuchter VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT = 1000104012, 3314bca34c90fdef4e8132ca34a3f9493ab93c603ae7Courtney Goeltzenleuchter VK_COLOR_SPACE_PASS_THROUGH_EXT = 1000104013, 33152676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_BEGIN_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR, 33162676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_END_RANGE_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR, 33172676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_RANGE_SIZE_KHR = (VK_COLOR_SPACE_SRGB_NONLINEAR_KHR - VK_COLOR_SPACE_SRGB_NONLINEAR_KHR + 1), 33182676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COLOR_SPACE_MAX_ENUM_KHR = 0x7FFFFFFF 33191356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkColorSpaceKHR; 33201356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPresentModeKHR { 33221356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_IMMEDIATE_KHR = 0, 33231356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_MAILBOX_KHR = 1, 33241356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_FIFO_KHR = 2, 332503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3, 33261d5f68c10560a82fd3278e17e934ee3bff328374Chris Forbes VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR = 1000111000, 33271d5f68c10560a82fd3278e17e934ee3bff328374Chris Forbes VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR = 1000111001, 33282676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PRESENT_MODE_BEGIN_RANGE_KHR = VK_PRESENT_MODE_IMMEDIATE_KHR, 33292676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PRESENT_MODE_END_RANGE_KHR = VK_PRESENT_MODE_FIFO_RELAXED_KHR, 33302676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PRESENT_MODE_RANGE_SIZE_KHR = (VK_PRESENT_MODE_FIFO_RELAXED_KHR - VK_PRESENT_MODE_IMMEDIATE_KHR + 1), 33312676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_PRESENT_MODE_MAX_ENUM_KHR = 0x7FFFFFFF 33321356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkPresentModeKHR; 33331356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33341356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSurfaceTransformFlagBitsKHR { 3336f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 0x00000001, 33379ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002, 33389ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004, 33399ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008, 33409ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010, 33419ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020, 33429ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040, 33439ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080, 33441356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100, 33452676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF 33461356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSurfaceTransformFlagBitsKHR; 33471356b0d3179254a7a27e88abb2d2500385469f14Jesse Halltypedef VkFlags VkSurfaceTransformFlagsKHR; 33481356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33493e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCompositeAlphaFlagBitsKHR { 3350a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 0x00000001, 3351a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 0x00000002, 3352a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 0x00000004, 3353a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 0x00000008, 33542676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF 3355a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkCompositeAlphaFlagBitsKHR; 3356a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkCompositeAlphaFlagsKHR; 3357a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 33583e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSurfaceCapabilitiesKHR { 3359563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t minImageCount; 3360563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageCount; 3361563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D currentExtent; 3362563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minImageExtent; 3363563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxImageExtent; 3364563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageArrayLayers; 3365563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagsKHR supportedTransforms; 3366563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR currentTransform; 3367563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompositeAlphaFlagsKHR supportedCompositeAlpha; 3368563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags supportedUsageFlags; 3369b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall} VkSurfaceCapabilitiesKHR; 33701356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSurfaceFormatKHR { 3372563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 3373563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorSpaceKHR colorSpace; 33741356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSurfaceFormatKHR; 33751356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3376b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3377f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator); 3378e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported); 3379e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities); 3380e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats); 3381e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes); 3382b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3383563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3384e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR( 3385f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkInstance instance, 3386f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSurfaceKHR surface, 33870e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator); 3388b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3389e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR( 3390b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3391b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t queueFamilyIndex, 3392b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3393b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkBool32* pSupported); 3394b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3395e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR( 3396b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3397b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3398b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceCapabilitiesKHR* pSurfaceCapabilities); 3399b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3400e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR( 3401b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3402b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3403b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t* pSurfaceFormatCount, 3404b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceFormatKHR* pSurfaceFormats); 3405b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3406e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR( 3407b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3408b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3409b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t* pPresentModeCount, 3410b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPresentModeKHR* pPresentModes); 3411b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall#endif 3412b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3413091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_swapchain 1 34143fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR) 3415b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 34162676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_KHR_SWAPCHAIN_SPEC_VERSION 68 34173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain" 3418b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3419ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 3420ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkSwapchainCreateFlagBitsKHR { 3421ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX = 0x00000001, 3422ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF 3423ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkSwapchainCreateFlagBitsKHR; 3424f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkSwapchainCreateFlagsKHR; 3425f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall 34263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSwapchainCreateInfoKHR { 3427563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3428563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3429563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSwapchainCreateFlagsKHR flags; 3430563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceKHR surface; 3431563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t minImageCount; 3432563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat imageFormat; 3433563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorSpaceKHR imageColorSpace; 3434563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D imageExtent; 3435563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t imageArrayLayers; 3436563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags imageUsage; 3437563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode imageSharingMode; 3438563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 3439563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 3440563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR preTransform; 3441563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompositeAlphaFlagBitsKHR compositeAlpha; 3442563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPresentModeKHR presentMode; 3443563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 clipped; 3444563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSwapchainKHR oldSwapchain; 34451356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSwapchainCreateInfoKHR; 34461356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 34473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPresentInfoKHR { 3448563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3449563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3450563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t waitSemaphoreCount; 3451563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pWaitSemaphores; 3452563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t swapchainCount; 3453563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSwapchainKHR* pSwapchains; 3454563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pImageIndices; 3455563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkResult* pResults; 34561356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkPresentInfoKHR; 34571356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 34581356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3459f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain); 3460f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator); 3461f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainImagesKHR)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages); 3462f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex); 3463f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueuePresentKHR)(VkQueue queue, const VkPresentInfoKHR* pPresentInfo); 34641356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3465563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3466e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR( 3467f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3468f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkSwapchainCreateInfoKHR* pCreateInfo, 34690e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 3470f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR* pSwapchain); 34711356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3472e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR( 3473f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3474f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 34750e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator); 34761356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3477e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR( 3478f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3479f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 3480f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t* pSwapchainImageCount, 3481f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkImage* pSwapchainImages); 34821356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3483e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR( 3484f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3485f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 3486f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint64_t timeout, 3487f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSemaphore semaphore, 3488f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkFence fence, 3489f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t* pImageIndex); 34901356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3491e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR( 3492f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkQueue queue, 3493f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkPresentInfoKHR* pPresentInfo); 34941356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 34951356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3496091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_display 1 34973fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR) 34983fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayModeKHR) 34991356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3500543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_DISPLAY_SPEC_VERSION 21 35013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_DISPLAY_EXTENSION_NAME "VK_KHR_display" 35021356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35031356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35043e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDisplayPlaneAlphaFlagBitsKHR { 3505f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 0x00000001, 3506f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 0x00000002, 3507f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004, 3508f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008, 35092676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF 35101356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPlaneAlphaFlagBitsKHR; 35111356b0d3179254a7a27e88abb2d2500385469f14Jesse Halltypedef VkFlags VkDisplayPlaneAlphaFlagsKHR; 35122676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef VkFlags VkDisplayModeCreateFlagsKHR; 3513f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkDisplaySurfaceCreateFlagsKHR; 35141356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPropertiesKHR { 3516563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayKHR display; 3517563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* displayName; 3518563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D physicalDimensions; 3519563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D physicalResolution; 3520563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagsKHR supportedTransforms; 3521563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 planeReorderPossible; 3522563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 persistentContent; 35231356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPropertiesKHR; 35241356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35253e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModeParametersKHR { 3526563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D visibleRegion; 3527563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t refreshRate; 3528a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplayModeParametersKHR; 35291356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35303e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModePropertiesKHR { 3531563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeKHR displayMode; 3532563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeParametersKHR parameters; 35331356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayModePropertiesKHR; 35341356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModeCreateInfoKHR { 3536563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3537563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3538563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeCreateFlagsKHR flags; 3539563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeParametersKHR parameters; 35401356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayModeCreateInfoKHR; 35411356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35423e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPlaneCapabilitiesKHR { 3543563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayPlaneAlphaFlagsKHR supportedAlpha; 3544563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D minSrcPosition; 3545563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D maxSrcPosition; 3546563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minSrcExtent; 3547563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxSrcExtent; 3548563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D minDstPosition; 3549563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D maxDstPosition; 3550563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minDstExtent; 3551563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxDstExtent; 3552a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplayPlaneCapabilitiesKHR; 35531356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35543e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPlanePropertiesKHR { 3555563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayKHR currentDisplay; 3556563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t currentStackIndex; 3557b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall} VkDisplayPlanePropertiesKHR; 3558b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 35593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplaySurfaceCreateInfoKHR { 3560563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3561563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3562563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplaySurfaceCreateFlagsKHR flags; 3563563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeKHR displayMode; 3564563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t planeIndex; 3565563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t planeStackIndex; 3566563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR transform; 3567563380d389732337a84e7455caa01ec955ebee30Jesse Hall float globalAlpha; 3568563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayPlaneAlphaFlagBitsKHR alphaMode; 3569563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D imageExtent; 3570a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplaySurfaceCreateInfoKHR; 35711356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35721356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3573e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties); 3574e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties); 35753dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays); 3576e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties); 35772676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode); 35789ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities); 35790e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 35801356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3581563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3582e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR( 35831356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 358403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 35851356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayPropertiesKHR* pProperties); 35861356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3587e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR( 3588a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3589a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t* pPropertyCount, 3590a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkDisplayPlanePropertiesKHR* pProperties); 3591a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3592e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR( 3593a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 35943dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t planeIndex, 3595f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall uint32_t* pDisplayCount, 3596f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VkDisplayKHR* pDisplays); 3597a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3598e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR( 35991356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 36001356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayKHR display, 360103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 360203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDisplayModePropertiesKHR* pProperties); 36031356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3604e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR( 36051356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 36061356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayKHR display, 36071356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall const VkDisplayModeCreateInfoKHR* pCreateInfo, 36080e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 36091356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayModeKHR* pMode); 36101356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3611e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR( 36121356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 36139ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkDisplayModeKHR mode, 36141356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall uint32_t planeIndex, 3615a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkDisplayPlaneCapabilitiesKHR* pCapabilities); 3616a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3617e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR( 3618a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkInstance instance, 3619a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, 36200e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 3621a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkSurfaceKHR* pSurface); 36221356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 36231356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3624091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_display_swapchain 1 3625543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION 9 36263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain" 36271356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPresentInfoKHR { 3629563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3630563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3631563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D srcRect; 3632563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D dstRect; 3633563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 persistent; 36341356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPresentInfoKHR; 36351356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36361356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36379ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains); 36389ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall 3639563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 36409ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR( 36419ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkDevice device, 36429ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall uint32_t swapchainCount, 36439ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall const VkSwapchainCreateInfoKHR* pCreateInfos, 36449ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall const VkAllocationCallbacks* pAllocator, 36459ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkSwapchainKHR* pSwapchains); 36469ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall#endif 36471356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3648a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall#ifdef VK_USE_PLATFORM_XLIB_KHR 3649091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_xlib_surface 1 36501356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <X11/Xlib.h> 36511356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3652543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_XLIB_SURFACE_SPEC_VERSION 6 3653091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_XLIB_SURFACE_EXTENSION_NAME "VK_KHR_xlib_surface" 36541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3655f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkXlibSurfaceCreateFlagsKHR; 3656f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3657f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkXlibSurfaceCreateInfoKHR { 3658563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3659563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3660563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkXlibSurfaceCreateFlagsKHR flags; 3661563380d389732337a84e7455caa01ec955ebee30Jesse Hall Display* dpy; 3662563380d389732337a84e7455caa01ec955ebee30Jesse Hall Window window; 3663f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkXlibSurfaceCreateInfoKHR; 3664f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3665f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3666f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateXlibSurfaceKHR)(VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3667e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID); 36681356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3669563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3670e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR( 36711356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3672f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkXlibSurfaceCreateInfoKHR* pCreateInfo, 36730e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 36741356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3675a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3676e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR( 3677a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3678a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3679a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall Display* dpy, 368065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VisualID visualID); 36811356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 3682a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall#endif /* VK_USE_PLATFORM_XLIB_KHR */ 36831356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36841356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_XCB_KHR 3685091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_xcb_surface 1 36861356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <xcb/xcb.h> 36871356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3688543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_XCB_SURFACE_SPEC_VERSION 6 36893e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_XCB_SURFACE_EXTENSION_NAME "VK_KHR_xcb_surface" 36901356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3691f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkXcbSurfaceCreateFlagsKHR; 3692f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3693f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkXcbSurfaceCreateInfoKHR { 3694563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3695563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3696563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkXcbSurfaceCreateFlagsKHR flags; 3697563380d389732337a84e7455caa01ec955ebee30Jesse Hall xcb_connection_t* connection; 3698563380d389732337a84e7455caa01ec955ebee30Jesse Hall xcb_window_t window; 3699f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkXcbSurfaceCreateInfoKHR; 3700f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3701f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3702f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateXcbSurfaceKHR)(VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3703e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id); 37041356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3705563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3706e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateXcbSurfaceKHR( 37071356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3708f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkXcbSurfaceCreateInfoKHR* pCreateInfo, 37090e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 37101356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3711a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3712e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR( 3713a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3714a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3715a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall xcb_connection_t* connection, 3716a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall xcb_visualid_t visual_id); 37171356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 37181356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_XCB_KHR */ 37191356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 37201356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_WAYLAND_KHR 3721091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_wayland_surface 1 37221356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <wayland-client.h> 37231356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3724543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 5 37253e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface" 37261356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3727f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkWaylandSurfaceCreateFlagsKHR; 3728f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3729f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkWaylandSurfaceCreateInfoKHR { 3730563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3731563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3732563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkWaylandSurfaceCreateFlagsKHR flags; 3733563380d389732337a84e7455caa01ec955ebee30Jesse Hall struct wl_display* display; 3734563380d389732337a84e7455caa01ec955ebee30Jesse Hall struct wl_surface* surface; 3735f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkWaylandSurfaceCreateInfoKHR; 3736f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3737f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3738f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3739e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display); 37401356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3741563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3742e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR( 37431356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3744f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, 37450e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 37461356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3747a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3748e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR( 3749a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3750a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3751a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall struct wl_display* display); 37521356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 37531356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_WAYLAND_KHR */ 37541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 37551356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_MIR_KHR 3756091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_mir_surface 1 37571356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <mir_toolkit/client_types.h> 37581356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3759543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_MIR_SURFACE_SPEC_VERSION 4 37603e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_MIR_SURFACE_EXTENSION_NAME "VK_KHR_mir_surface" 37611356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3762f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkMirSurfaceCreateFlagsKHR; 3763f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3764f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkMirSurfaceCreateInfoKHR { 3765563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3766563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3767563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMirSurfaceCreateFlagsKHR flags; 3768563380d389732337a84e7455caa01ec955ebee30Jesse Hall MirConnection* connection; 3769563380d389732337a84e7455caa01ec955ebee30Jesse Hall MirSurface* mirSurface; 3770f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkMirSurfaceCreateInfoKHR; 3771f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3772f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3773f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateMirSurfaceKHR)(VkInstance instance, const VkMirSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3774e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceMirPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, MirConnection* connection); 37751356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3776563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3777e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateMirSurfaceKHR( 37781356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3779f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkMirSurfaceCreateInfoKHR* pCreateInfo, 37800e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 37811356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3782a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3783e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceMirPresentationSupportKHR( 3784a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3785a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3786a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall MirConnection* connection); 37871356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 37881356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_MIR_KHR */ 37891356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 37901356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_ANDROID_KHR 3791091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_android_surface 1 37921356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 379333faaad096afbd0b103bd1284ce5b78cce74aa01Jesse Hall#define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6 37943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface" 37951356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3796f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkAndroidSurfaceCreateFlagsKHR; 3797f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3798f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkAndroidSurfaceCreateInfoKHR { 3799563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3800563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3801563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAndroidSurfaceCreateFlagsKHR flags; 380282afc95f7ed4e896a15d8b2a20d4f4521ed100c2Alistair Strachan struct ANativeWindow* window; 3803f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkAndroidSurfaceCreateInfoKHR; 3804f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3805f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3806f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 38071356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3808563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3809e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR( 38101356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3811f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, 38120e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 38131356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 38141356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 38151356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_ANDROID_KHR */ 38161356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 38171356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHR 3818091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_win32_surface 1 38191356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <windows.h> 38201356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3821543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_WIN32_SURFACE_SPEC_VERSION 5 38223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_WIN32_SURFACE_EXTENSION_NAME "VK_KHR_win32_surface" 38231356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3824f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkWin32SurfaceCreateFlagsKHR; 3825f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3826f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkWin32SurfaceCreateInfoKHR { 3827563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3828563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3829563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkWin32SurfaceCreateFlagsKHR flags; 3830563380d389732337a84e7455caa01ec955ebee30Jesse Hall HINSTANCE hinstance; 3831563380d389732337a84e7455caa01ec955ebee30Jesse Hall HWND hwnd; 3832f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkWin32SurfaceCreateInfoKHR; 3833f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3834f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3835f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3836e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex); 38371356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3838563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3839e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateWin32SurfaceKHR( 38401356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3841f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkWin32SurfaceCreateInfoKHR* pCreateInfo, 38420e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 38431356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3844a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3845e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR( 3846a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3847a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex); 38481356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 38491356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHR */ 38501356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 38512676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_KHR_sampler_mirror_clamp_to_edge 1 38522676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION 1 38532676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge" 38542676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 38551194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 38561194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#define VK_KHR_get_physical_device_properties2 1 38571194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION 1 38581194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME "VK_KHR_get_physical_device_properties2" 38591194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 38601194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceFeatures2KHR { 38611194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 38621194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 38631194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceFeatures features; 38641194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceFeatures2KHR; 38651194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 38661194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceProperties2KHR { 38671194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 38681194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 38691194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceProperties properties; 38701194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceProperties2KHR; 38711194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 38721194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkFormatProperties2KHR { 38731194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 38741194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 38751194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormatProperties formatProperties; 38761194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkFormatProperties2KHR; 38771194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 38781194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkImageFormatProperties2KHR { 38791194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 38801194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 38811194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageFormatProperties imageFormatProperties; 38821194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkImageFormatProperties2KHR; 38831194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 38841194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceImageFormatInfo2KHR { 38851194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 38861194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes const void* pNext; 38871194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormat format; 38881194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageType type; 38891194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageTiling tiling; 38901194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageUsageFlags usage; 38911194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageCreateFlags flags; 38921194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceImageFormatInfo2KHR; 38931194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 38941194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkQueueFamilyProperties2KHR { 38951194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 38961194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 38971194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkQueueFamilyProperties queueFamilyProperties; 38981194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkQueueFamilyProperties2KHR; 38991194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39001194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceMemoryProperties2KHR { 39011194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39021194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39031194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceMemoryProperties memoryProperties; 39041194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceMemoryProperties2KHR; 39051194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39061194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkSparseImageFormatProperties2KHR { 39071194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39081194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes void* pNext; 39091194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkSparseImageFormatProperties properties; 39101194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkSparseImageFormatProperties2KHR; 39111194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39121194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef struct VkPhysicalDeviceSparseImageFormatInfo2KHR { 39131194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkStructureType sType; 39141194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes const void* pNext; 39151194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormat format; 39161194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageType type; 39171194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkSampleCountFlagBits samples; 39181194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageUsageFlags usage; 39191194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageTiling tiling; 39201194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes} VkPhysicalDeviceSparseImageFormatInfo2KHR; 39211194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39221194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39231194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2KHR* pFeatures); 39241194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2KHR* pProperties); 39251194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2KHR)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2KHR* pFormatProperties); 39261194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2KHR* pImageFormatInfo, VkImageFormatProperties2KHR* pImageFormatProperties); 39271194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2KHR* pQueueFamilyProperties); 39281194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2KHR* pMemoryProperties); 39291194edeee85370eeb1794d9016759ad58454d2f9Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2KHR* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2KHR* pProperties); 39301194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39311194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#ifndef VK_NO_PROTOTYPES 39321194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2KHR( 39331194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39341194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceFeatures2KHR* pFeatures); 39351194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39361194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2KHR( 39371194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39381194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceProperties2KHR* pProperties); 39391194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39401194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2KHR( 39411194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39421194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormat format, 39431194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkFormatProperties2KHR* pFormatProperties); 39441194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39451194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2KHR( 39461194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39471194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes const VkPhysicalDeviceImageFormatInfo2KHR* pImageFormatInfo, 39481194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkImageFormatProperties2KHR* pImageFormatProperties); 39491194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39501194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2KHR( 39511194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39521194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes uint32_t* pQueueFamilyPropertyCount, 39531194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkQueueFamilyProperties2KHR* pQueueFamilyProperties); 39541194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39551194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2KHR( 39561194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39571194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDeviceMemoryProperties2KHR* pMemoryProperties); 39581194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 39591194edeee85370eeb1794d9016759ad58454d2f9Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2KHR( 39601194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkPhysicalDevice physicalDevice, 39611194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes const VkPhysicalDeviceSparseImageFormatInfo2KHR* pFormatInfo, 39621194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes uint32_t* pPropertyCount, 39631194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes VkSparseImageFormatProperties2KHR* pProperties); 39641194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes#endif 39651194edeee85370eeb1794d9016759ad58454d2f9Chris Forbes 396677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_shader_draw_parameters 1 396777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION 1 396877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME "VK_KHR_shader_draw_parameters" 3969cb35113761ae7afc26c7bffc529b590575a9f4d7Ian Elliott 3970cb35113761ae7afc26c7bffc529b590575a9f4d7Ian Elliott 397177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_maintenance1 1 397277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_MAINTENANCE1_SPEC_VERSION 1 397377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_MAINTENANCE1_EXTENSION_NAME "VK_KHR_maintenance1" 39742676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 397577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkFlags VkCommandPoolTrimFlagsKHR; 39762e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes 397777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef void (VKAPI_PTR *PFN_vkTrimCommandPoolKHR)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags); 39782e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes 39792e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes#ifndef VK_NO_PROTOTYPES 398077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR void VKAPI_CALL vkTrimCommandPoolKHR( 39812e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes VkDevice device, 398277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkCommandPool commandPool, 398377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkCommandPoolTrimFlagsKHR flags); 39842e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes#endif 39852e12cb80a8a1e23fef253911febf1797c835d02fChris Forbes 3986ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_push_descriptor 1 3987ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 1 3988ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor" 3989ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 3990ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDevicePushDescriptorPropertiesKHR { 3991ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 3992ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 3993ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t maxPushDescriptors; 3994ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDevicePushDescriptorPropertiesKHR; 3995ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 3996ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 3997ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetKHR)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites); 3998ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 3999ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4000ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetKHR( 4001ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 4002ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineBindPoint pipelineBindPoint, 4003ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineLayout layout, 4004ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t set, 4005ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t descriptorWriteCount, 4006ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkWriteDescriptorSet* pDescriptorWrites); 4007ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4008ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4009ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_descriptor_update_template 1 4010ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplateKHR) 4011ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4012ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 1 4013ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template" 4014ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4015ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4016ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkDescriptorUpdateTemplateTypeKHR { 4017ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = 0, 4018ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1, 4019ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR, 4020ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR, 4021ad250840766ea76def08c0d9f0b04a09c32dab79Jesse 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), 4022ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF 4023ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDescriptorUpdateTemplateTypeKHR; 4024ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4025ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkDescriptorUpdateTemplateCreateFlagsKHR; 4026ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4027ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDescriptorUpdateTemplateEntryKHR { 4028ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t dstBinding; 4029ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t dstArrayElement; 4030ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t descriptorCount; 4031ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorType descriptorType; 4032ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall size_t offset; 4033ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall size_t stride; 4034ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDescriptorUpdateTemplateEntryKHR; 4035ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4036ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDescriptorUpdateTemplateCreateInfoKHR { 4037ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4038ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4039ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateCreateFlagsKHR flags; 4040ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t descriptorUpdateEntryCount; 4041ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkDescriptorUpdateTemplateEntryKHR* pDescriptorUpdateEntries; 4042ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateTypeKHR templateType; 4043ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorSetLayout descriptorSetLayout; 4044ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineBindPoint pipelineBindPoint; 4045ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineLayout pipelineLayout; 4046ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t set; 4047ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDescriptorUpdateTemplateCreateInfoKHR; 4048ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4049ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4050ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplateKHR)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate); 4051ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator); 4052ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData); 4053ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData); 4054ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4055ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4056ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR( 4057ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4058ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, 4059ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAllocationCallbacks* pAllocator, 4060ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate); 4061ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4062ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR( 4063ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4064ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, 4065ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAllocationCallbacks* pAllocator); 4066ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4067ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR( 4068ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4069ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorSet descriptorSet, 4070ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, 4071ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pData); 4072ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4073ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetWithTemplateKHR( 4074ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 4075ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, 4076ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineLayout layout, 4077ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t set, 4078ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pData); 4079ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4080ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4081e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#define VK_EXT_debug_report 1 4082e2948d83f352b9a093252a06757f76a88f5355d3Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT) 4083e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 40848f49fcb42d560de4fcc9224226495b942a94bff4Jesse Hall#define VK_EXT_DEBUG_REPORT_SPEC_VERSION 5 4085e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report" 40862676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT 4087e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4088e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4089e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef enum VkDebugReportObjectTypeEXT { 4090e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0, 4091e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1, 4092e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2, 4093e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT = 3, 4094e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT = 4, 4095e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT = 5, 4096e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT = 6, 4097e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT = 7, 4098e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT = 8, 4099e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT = 9, 4100e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT = 10, 4101e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT = 11, 4102e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT = 12, 4103e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT = 13, 4104e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT = 14, 4105e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT = 15, 4106e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT = 16, 4107e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT = 17, 4108e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT = 18, 4109e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT = 19, 4110e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT = 20, 4111e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT = 21, 4112e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT = 22, 4113e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT = 23, 4114e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT = 24, 4115e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT = 25, 4116e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26, 4117e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27, 4118e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = 28, 4119289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29, 4120289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30, 4121289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT = 31, 4122289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT = 32, 41232676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 4124289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT, 4125289cb79d444c385185e4f357d3b2fe67a958e932Chris 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), 41262676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF 4127e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall} VkDebugReportObjectTypeEXT; 4128e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4129e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef enum VkDebugReportErrorEXT { 4130e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_ERROR_NONE_EXT = 0, 4131e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT = 1, 41322676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_ERROR_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_ERROR_NONE_EXT, 41332676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_ERROR_END_RANGE_EXT = VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT, 41342676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_ERROR_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT - VK_DEBUG_REPORT_ERROR_NONE_EXT + 1), 41352676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_ERROR_MAX_ENUM_EXT = 0x7FFFFFFF 4136e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall} VkDebugReportErrorEXT; 4137e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4138e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4139e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef enum VkDebugReportFlagBitsEXT { 4140e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 0x00000001, 4141e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_WARNING_BIT_EXT = 0x00000002, 4142e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 0x00000004, 4143e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_ERROR_BIT_EXT = 0x00000008, 4144e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VK_DEBUG_REPORT_DEBUG_BIT_EXT = 0x00000010, 41452676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF 4146e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall} VkDebugReportFlagBitsEXT; 4147e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef VkFlags VkDebugReportFlagsEXT; 4148e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4149e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkDebugReportCallbackEXT)( 4150e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportFlagsEXT flags, 4151e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportObjectTypeEXT objectType, 4152e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall uint64_t object, 4153e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall size_t location, 4154e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall int32_t messageCode, 4155e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const char* pLayerPrefix, 4156e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const char* pMessage, 4157e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall void* pUserData); 4158e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4159e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4160e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef struct VkDebugReportCallbackCreateInfoEXT { 4161e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkStructureType sType; 4162e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const void* pNext; 4163e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportFlagsEXT flags; 4164e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall PFN_vkDebugReportCallbackEXT pfnCallback; 4165e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall void* pUserData; 4166e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall} VkDebugReportCallbackCreateInfoEXT; 4167e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4168e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4169e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDebugReportCallbackEXT)(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback); 4170e2948d83f352b9a093252a06757f76a88f5355d3Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDebugReportCallbackEXT)(VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator); 4171e2948d83f352b9a093252a06757f76a88f5355d3Jesse 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); 4172e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4173e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#ifndef VK_NO_PROTOTYPES 4174e2948d83f352b9a093252a06757f76a88f5355d3Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugReportCallbackEXT( 4175e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkInstance instance, 4176e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, 4177e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const VkAllocationCallbacks* pAllocator, 4178e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportCallbackEXT* pCallback); 4179e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4180e2948d83f352b9a093252a06757f76a88f5355d3Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDebugReportCallbackEXT( 4181e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkInstance instance, 4182e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportCallbackEXT callback, 4183e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const VkAllocationCallbacks* pAllocator); 4184e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 4185e2948d83f352b9a093252a06757f76a88f5355d3Jesse HallVKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT( 4186e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkInstance instance, 4187e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportFlagsEXT flags, 4188e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall VkDebugReportObjectTypeEXT objectType, 4189e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall uint64_t object, 4190e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall size_t location, 4191e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall int32_t messageCode, 4192e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const char* pLayerPrefix, 4193e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall const char* pMessage); 4194e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall#endif 4195e2948d83f352b9a093252a06757f76a88f5355d3Jesse Hall 41962676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_NV_glsl_shader 1 41972676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_NV_GLSL_SHADER_SPEC_VERSION 1 41982676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_NV_GLSL_SHADER_EXTENSION_NAME "VK_NV_glsl_shader" 41992676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42002676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42012676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_IMG_filter_cubic 1 42022676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_IMG_FILTER_CUBIC_SPEC_VERSION 1 42032676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic" 42042676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42052676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42062676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_AMD_rasterization_order 1 42072676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION 1 42082676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME "VK_AMD_rasterization_order" 42092676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42102676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42112676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef enum VkRasterizationOrderAMD { 42122676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_STRICT_AMD = 0, 42132676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_RELAXED_AMD = 1, 42142676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD = VK_RASTERIZATION_ORDER_STRICT_AMD, 42152676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_END_RANGE_AMD = VK_RASTERIZATION_ORDER_RELAXED_AMD, 42162676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD = (VK_RASTERIZATION_ORDER_RELAXED_AMD - VK_RASTERIZATION_ORDER_STRICT_AMD + 1), 42172676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VK_RASTERIZATION_ORDER_MAX_ENUM_AMD = 0x7FFFFFFF 42182676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkRasterizationOrderAMD; 42192676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42202676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef struct VkPipelineRasterizationStateRasterizationOrderAMD { 42212676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkStructureType sType; 42222676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pNext; 42232676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkRasterizationOrderAMD rasterizationOrder; 42242676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkPipelineRasterizationStateRasterizationOrderAMD; 42252676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42262676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42272676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 422856d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_shader_trinary_minmax 1 422956d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION 1 423056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME "VK_AMD_shader_trinary_minmax" 423156d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 423256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 423356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_shader_explicit_vertex_parameter 1 423456d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION 1 423556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME "VK_AMD_shader_explicit_vertex_parameter" 423656d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 423756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 42382676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_EXT_debug_marker 1 42398f49fcb42d560de4fcc9224226495b942a94bff4Jesse Hall#define VK_EXT_DEBUG_MARKER_SPEC_VERSION 4 42402676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#define VK_EXT_DEBUG_MARKER_EXTENSION_NAME "VK_EXT_debug_marker" 42412676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42422676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef struct VkDebugMarkerObjectNameInfoEXT { 42432676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkStructureType sType; 42442676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pNext; 42452676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugReportObjectTypeEXT objectType; 42462676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall uint64_t object; 42472676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const char* pObjectName; 42482676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkDebugMarkerObjectNameInfoEXT; 42492676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42502676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef struct VkDebugMarkerObjectTagInfoEXT { 42512676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkStructureType sType; 42522676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pNext; 42532676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugReportObjectTypeEXT objectType; 42542676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall uint64_t object; 42552676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall uint64_t tagName; 42562676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall size_t tagSize; 42572676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pTag; 42582676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkDebugMarkerObjectTagInfoEXT; 42592676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42602676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef struct VkDebugMarkerMarkerInfoEXT { 42612676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkStructureType sType; 42622676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const void* pNext; 42632676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall const char* pMarkerName; 42642676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall float color[4]; 42652676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall} VkDebugMarkerMarkerInfoEXT; 42662676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42672676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42682676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectTagEXT)(VkDevice device, VkDebugMarkerObjectTagInfoEXT* pTagInfo); 42692676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectNameEXT)(VkDevice device, VkDebugMarkerObjectNameInfoEXT* pNameInfo); 42702676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerBeginEXT)(VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo); 42712676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerEndEXT)(VkCommandBuffer commandBuffer); 42722676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerInsertEXT)(VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo); 42732676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42742676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#ifndef VK_NO_PROTOTYPES 42752676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectTagEXT( 42762676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDevice device, 42772676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugMarkerObjectTagInfoEXT* pTagInfo); 42782676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42792676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectNameEXT( 42802676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDevice device, 42812676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugMarkerObjectNameInfoEXT* pNameInfo); 42822676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42832676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerBeginEXT( 42842676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkCommandBuffer commandBuffer, 42852676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugMarkerMarkerInfoEXT* pMarkerInfo); 42862676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42872676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerEndEXT( 42882676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkCommandBuffer commandBuffer); 42892676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 42902676338dd692b7d1e1c276d82e6b0492db53ab2eJesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerInsertEXT( 42912676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkCommandBuffer commandBuffer, 42922676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall VkDebugMarkerMarkerInfoEXT* pMarkerInfo); 42932676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall#endif 42942676338dd692b7d1e1c276d82e6b0492db53ab2eJesse Hall 429556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_gcn_shader 1 429656d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_GCN_SHADER_SPEC_VERSION 1 429756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_AMD_GCN_SHADER_EXTENSION_NAME "VK_AMD_gcn_shader" 429856d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 429956d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 430056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_NV_dedicated_allocation 1 430156d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION 1 430256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall#define VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_NV_dedicated_allocation" 430356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 430456d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Halltypedef struct VkDedicatedAllocationImageCreateInfoNV { 430556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkStructureType sType; 430656d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall const void* pNext; 430756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkBool32 dedicatedAllocation; 430856d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall} VkDedicatedAllocationImageCreateInfoNV; 430956d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 431056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Halltypedef struct VkDedicatedAllocationBufferCreateInfoNV { 431156d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkStructureType sType; 431256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall const void* pNext; 431356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkBool32 dedicatedAllocation; 431456d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall} VkDedicatedAllocationBufferCreateInfoNV; 431556d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 431656d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Halltypedef struct VkDedicatedAllocationMemoryAllocateInfoNV { 431756d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkStructureType sType; 431856d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall const void* pNext; 431956d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkImage image; 432056d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall VkBuffer buffer; 432156d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall} VkDedicatedAllocationMemoryAllocateInfoNV; 432256d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 432356d386a7a46c8ac36df8820c3ccf3da048ef1970Jesse Hall 432477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 4325289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_draw_indirect_count 1 4326289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION 1 4327289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_AMD_draw_indirect_count" 4328289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4329289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride); 4330289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride); 4331289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4332289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifndef VK_NO_PROTOTYPES 4333289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountAMD( 4334289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer commandBuffer, 4335289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer, 4336289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize offset, 4337289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer countBuffer, 4338289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize countBufferOffset, 4339289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxDrawCount, 4340289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t stride); 4341289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4342289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountAMD( 4343289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer commandBuffer, 4344289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer, 4345289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize offset, 4346289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer countBuffer, 4347289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize countBufferOffset, 4348289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxDrawCount, 4349289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t stride); 4350289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 4351289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4352289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_negative_viewport_height 1 4353289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION 1 4354289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME "VK_AMD_negative_viewport_height" 4355289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4356289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4357289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_gpu_shader_half_float 1 4358289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION 1 4359289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME "VK_AMD_gpu_shader_half_float" 4360289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4361289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4362289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_shader_ballot 1 4363289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_SHADER_BALLOT_SPEC_VERSION 1 4364289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_AMD_SHADER_BALLOT_EXTENSION_NAME "VK_AMD_shader_ballot" 4365289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4366289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4367ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_multiview 1 4368ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_MULTIVIEW_SPEC_VERSION 1 4369ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_MULTIVIEW_EXTENSION_NAME "VK_KHX_multiview" 4370ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4371ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkRenderPassMultiviewCreateInfoKHX { 4372ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4373ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4374ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t subpassCount; 4375ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pViewMasks; 4376ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t dependencyCount; 4377ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const int32_t* pViewOffsets; 4378ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t correlationMaskCount; 4379ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pCorrelationMasks; 4380ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkRenderPassMultiviewCreateInfoKHX; 4381ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4382ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceMultiviewFeaturesKHX { 4383ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4384ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4385ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 multiview; 4386ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 multiviewGeometryShader; 4387ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 multiviewTessellationShader; 4388ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceMultiviewFeaturesKHX; 4389ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4390ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceMultiviewPropertiesKHX { 4391ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4392ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4393ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t maxMultiviewViewCount; 4394ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t maxMultiviewInstanceIndex; 4395ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceMultiviewPropertiesKHX; 4396ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4397ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4398ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4399289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_IMG_format_pvrtc 1 4400289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_IMG_FORMAT_PVRTC_SPEC_VERSION 1 4401289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_IMG_FORMAT_PVRTC_EXTENSION_NAME "VK_IMG_format_pvrtc" 4402289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4403289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4404289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_external_memory_capabilities 1 4405289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1 4406289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_NV_external_memory_capabilities" 4407289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4408289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4409289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkExternalMemoryHandleTypeFlagBitsNV { 4410289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 0x00000001, 4411289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 0x00000002, 4412289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 0x00000004, 4413289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 0x00000008, 4414289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF 4415289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExternalMemoryHandleTypeFlagBitsNV; 4416289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkFlags VkExternalMemoryHandleTypeFlagsNV; 4417289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4418289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkExternalMemoryFeatureFlagBitsNV { 4419289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 0x00000001, 4420289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 0x00000002, 4421289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 0x00000004, 4422289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF 4423289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExternalMemoryFeatureFlagBitsNV; 4424289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkFlags VkExternalMemoryFeatureFlagsNV; 4425289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4426289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkExternalImageFormatPropertiesNV { 4427289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageFormatProperties imageFormatProperties; 4428289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryFeatureFlagsNV externalMemoryFeatures; 4429289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes; 4430289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes; 4431289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExternalImageFormatPropertiesNV; 4432289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4433289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4434289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties); 4435289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4436289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifndef VK_NO_PROTOTYPES 4437289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceExternalImageFormatPropertiesNV( 4438289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPhysicalDevice physicalDevice, 4439289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkFormat format, 4440289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageType type, 4441289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageTiling tiling, 4442289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageUsageFlags usage, 4443289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkImageCreateFlags flags, 4444289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV externalHandleType, 4445289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties); 4446289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 4447289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4448289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_external_memory 1 4449289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_SPEC_VERSION 1 4450289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME "VK_NV_external_memory" 4451289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4452289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkExternalMemoryImageCreateInfoNV { 4453289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4454289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4455289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV handleTypes; 4456289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExternalMemoryImageCreateInfoNV; 4457289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4458289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkExportMemoryAllocateInfoNV { 4459289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4460289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4461289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV handleTypes; 4462289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExportMemoryAllocateInfoNV; 4463289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4464289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4465289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4466289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifdef VK_USE_PLATFORM_WIN32_KHR 4467289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_external_memory_win32 1 4468289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1 4469289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_NV_external_memory_win32" 4470289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4471289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkImportMemoryWin32HandleInfoNV { 4472289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4473289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4474289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV handleType; 4475289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes HANDLE handle; 4476289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkImportMemoryWin32HandleInfoNV; 4477289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4478289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkExportMemoryWin32HandleInfoNV { 4479289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4480289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4481289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const SECURITY_ATTRIBUTES* pAttributes; 4482289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes DWORD dwAccess; 4483289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkExportMemoryWin32HandleInfoNV; 4484289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4485289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4486289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleNV)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle); 4487289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4488289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifndef VK_NO_PROTOTYPES 4489289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleNV( 4490289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 4491289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceMemory memory, 4492289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkExternalMemoryHandleTypeFlagsNV handleType, 4493289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes HANDLE* pHandle); 4494289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 4495289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif /* VK_USE_PLATFORM_WIN32_KHR */ 4496289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4497289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifdef VK_USE_PLATFORM_WIN32_KHR 4498289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_win32_keyed_mutex 1 4499289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION 1 4500289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_NV_win32_keyed_mutex" 4501289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4502289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkWin32KeyedMutexAcquireReleaseInfoNV { 4503289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4504289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4505289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t acquireCount; 4506289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkDeviceMemory* pAcquireSyncs; 4507289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint64_t* pAcquireKeys; 4508289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint32_t* pAcquireTimeoutMilliseconds; 4509289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t releaseCount; 4510289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkDeviceMemory* pReleaseSyncs; 4511289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint64_t* pReleaseKeys; 4512289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkWin32KeyedMutexAcquireReleaseInfoNV; 4513289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4514289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4515289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif /* VK_USE_PLATFORM_WIN32_KHR */ 4516289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4517ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_device_group 1 4518ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MAX_DEVICE_GROUP_SIZE_KHX 32 4519ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_DEVICE_GROUP_SPEC_VERSION 1 4520ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_DEVICE_GROUP_EXTENSION_NAME "VK_KHX_device_group" 4521ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4522ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4523ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkPeerMemoryFeatureFlagBitsKHX { 4524ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHX = 0x00000001, 4525ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHX = 0x00000002, 4526ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHX = 0x00000004, 4527ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHX = 0x00000008, 4528ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4529ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPeerMemoryFeatureFlagBitsKHX; 4530ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkPeerMemoryFeatureFlagsKHX; 4531ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4532ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkMemoryAllocateFlagBitsKHX { 4533ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHX = 0x00000001, 4534ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4535ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMemoryAllocateFlagBitsKHX; 4536ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkMemoryAllocateFlagsKHX; 4537ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4538ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkDeviceGroupPresentModeFlagBitsKHX { 4539ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHX = 0x00000001, 4540ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHX = 0x00000002, 4541ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHX = 0x00000004, 4542ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHX = 0x00000008, 4543ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4544ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupPresentModeFlagBitsKHX; 4545ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkDeviceGroupPresentModeFlagsKHX; 4546ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4547ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkMemoryAllocateFlagsInfoKHX { 4548ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4549ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4550ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkMemoryAllocateFlagsKHX flags; 4551ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask; 4552ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMemoryAllocateFlagsInfoKHX; 4553ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4554ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkBindBufferMemoryInfoKHX { 4555ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4556ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4557ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBuffer buffer; 4558ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceMemory memory; 4559ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceSize memoryOffset; 4560ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceIndexCount; 4561ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pDeviceIndices; 4562ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkBindBufferMemoryInfoKHX; 4563ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4564ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkBindImageMemoryInfoKHX { 4565ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4566ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4567ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkImage image; 4568ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceMemory memory; 4569ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceSize memoryOffset; 4570ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceIndexCount; 4571ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pDeviceIndices; 4572ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t SFRRectCount; 4573ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkRect2D* pSFRRects; 4574ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkBindImageMemoryInfoKHX; 4575ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4576ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupRenderPassBeginInfoKHX { 4577ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4578ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4579ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask; 4580ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceRenderAreaCount; 4581ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkRect2D* pDeviceRenderAreas; 4582ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupRenderPassBeginInfoKHX; 4583ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4584ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupCommandBufferBeginInfoKHX { 4585ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4586ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4587ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask; 4588ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupCommandBufferBeginInfoKHX; 4589ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4590ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupSubmitInfoKHX { 4591ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4592ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4593ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t waitSemaphoreCount; 4594ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pWaitSemaphoreDeviceIndices; 4595ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t commandBufferCount; 4596ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pCommandBufferDeviceMasks; 4597ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t signalSemaphoreCount; 4598ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pSignalSemaphoreDeviceIndices; 4599ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupSubmitInfoKHX; 4600ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4601ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupBindSparseInfoKHX { 4602ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4603ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4604ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t resourceDeviceIndex; 4605ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t memoryDeviceIndex; 4606ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupBindSparseInfoKHX; 4607ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4608ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupPresentCapabilitiesKHX { 4609ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4610ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4611ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE_KHX]; 4612ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentModeFlagsKHX modes; 4613ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupPresentCapabilitiesKHX; 4614ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4615ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImageSwapchainCreateInfoKHX { 4616ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4617ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4618ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSwapchainKHR swapchain; 4619ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImageSwapchainCreateInfoKHX; 4620ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4621ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkBindImageMemorySwapchainInfoKHX { 4622ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4623ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4624ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSwapchainKHR swapchain; 4625ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t imageIndex; 4626ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkBindImageMemorySwapchainInfoKHX; 4627ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4628ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkAcquireNextImageInfoKHX { 4629ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4630ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4631ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSwapchainKHR swapchain; 4632ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint64_t timeout; 4633ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore; 4634ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkFence fence; 4635ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask; 4636ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkAcquireNextImageInfoKHX; 4637ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4638ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupPresentInfoKHX { 4639ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4640ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4641ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t swapchainCount; 4642ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pDeviceMasks; 4643ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentModeFlagBitsKHX mode; 4644ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupPresentInfoKHX; 4645ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4646ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupSwapchainCreateInfoKHX { 4647ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4648ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4649ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentModeFlagsKHX modes; 4650ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupSwapchainCreateInfoKHX; 4651ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4652ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4653ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeaturesKHX)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlagsKHX* pPeerMemoryFeatures); 4654ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2KHX)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfoKHX* pBindInfos); 4655ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2KHX)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfoKHX* pBindInfos); 4656ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMaskKHX)(VkCommandBuffer commandBuffer, uint32_t deviceMask); 4657ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupPresentCapabilitiesKHX)(VkDevice device, VkDeviceGroupPresentCapabilitiesKHX* pDeviceGroupPresentCapabilities); 4658ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupSurfacePresentModesKHX)(VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHX* pModes); 4659ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImage2KHX)(VkDevice device, const VkAcquireNextImageInfoKHX* pAcquireInfo, uint32_t* pImageIndex); 4660ad250840766ea76def08c0d9f0b04a09c32dab79Jesse 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); 4661ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDevicePresentRectanglesKHX)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects); 4662ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4663ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4664ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeaturesKHX( 4665ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4666ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t heapIndex, 4667ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t localDeviceIndex, 4668ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t remoteDeviceIndex, 4669ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPeerMemoryFeatureFlagsKHX* pPeerMemoryFeatures); 4670ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4671ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2KHX( 4672ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4673ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t bindInfoCount, 4674ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkBindBufferMemoryInfoKHX* pBindInfos); 4675ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4676ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2KHX( 4677ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4678ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t bindInfoCount, 4679ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkBindImageMemoryInfoKHX* pBindInfos); 4680ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4681ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMaskKHX( 4682ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 4683ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t deviceMask); 4684ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4685ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupPresentCapabilitiesKHX( 4686ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4687ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentCapabilitiesKHX* pDeviceGroupPresentCapabilities); 4688ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4689ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupSurfacePresentModesKHX( 4690ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4691ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSurfaceKHR surface, 4692ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceGroupPresentModeFlagsKHX* pModes); 4693ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4694ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImage2KHX( 4695ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4696ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAcquireNextImageInfoKHX* pAcquireInfo, 4697ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t* pImageIndex); 4698ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4699ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDispatchBaseKHX( 4700ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 4701ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t baseGroupX, 4702ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t baseGroupY, 4703ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t baseGroupZ, 4704ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountX, 4705ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountY, 4706ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t groupCountZ); 4707ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4708ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDevicePresentRectanglesKHX( 4709ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevice, 4710ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSurfaceKHR surface, 4711ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t* pRectCount, 4712ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkRect2D* pRects); 4713ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4714ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4715289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_EXT_validation_flags 1 4716289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_EXT_VALIDATION_FLAGS_SPEC_VERSION 1 4717289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME "VK_EXT_validation_flags" 4718289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4719289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4720289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkValidationCheckEXT { 4721289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_ALL_EXT = 0, 4722289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_BEGIN_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT, 4723289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_END_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT, 4724289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_RANGE_SIZE_EXT = (VK_VALIDATION_CHECK_ALL_EXT - VK_VALIDATION_CHECK_ALL_EXT + 1), 4725289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_VALIDATION_CHECK_MAX_ENUM_EXT = 0x7FFFFFFF 4726289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkValidationCheckEXT; 4727289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4728289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkValidationFlagsEXT { 4729289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 4730289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 4731289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t disabledValidationCheckCount; 4732289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkValidationCheckEXT* pDisabledValidationChecks; 4733289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkValidationFlagsEXT; 4734289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4735289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 4736289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 473777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifdef VK_USE_PLATFORM_VI_NN 473877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_NN_vi_surface 1 473977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_NN_VI_SURFACE_SPEC_VERSION 1 474077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_NN_VI_SURFACE_EXTENSION_NAME "VK_NN_vi_surface" 474177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 474277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkFlags VkViSurfaceCreateFlagsNN; 474377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 474477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkViSurfaceCreateInfoNN { 474577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 474677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 474777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkViSurfaceCreateFlagsNN flags; 474877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall void* window; 474977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkViSurfaceCreateInfoNN; 475077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 475177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 475277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateViSurfaceNN)(VkInstance instance, const VkViSurfaceCreateInfoNN* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 475377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 475477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 475577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateViSurfaceNN( 475677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkInstance instance, 475777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkViSurfaceCreateInfoNN* pCreateInfo, 475877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkAllocationCallbacks* pAllocator, 475977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceKHR* pSurface); 476077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 476177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif /* VK_USE_PLATFORM_VI_NN */ 476277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 476377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_shader_subgroup_ballot 1 476477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION 1 476577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME "VK_EXT_shader_subgroup_ballot" 476677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 476777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 476877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_shader_subgroup_vote 1 476977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION 1 477077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME "VK_EXT_shader_subgroup_vote" 477177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 477277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 4773ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_device_group_creation 1 4774ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_DEVICE_GROUP_CREATION_SPEC_VERSION 1 4775ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_DEVICE_GROUP_CREATION_EXTENSION_NAME "VK_KHX_device_group_creation" 4776ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4777ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceGroupPropertiesKHX { 4778ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4779ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4780ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t physicalDeviceCount; 4781ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE_KHX]; 4782ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 subsetAllocation; 4783ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceGroupPropertiesKHX; 4784ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4785ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkDeviceGroupDeviceCreateInfoKHX { 4786ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4787ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4788ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t physicalDeviceCount; 4789ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkPhysicalDevice* pPhysicalDevices; 4790ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDeviceGroupDeviceCreateInfoKHX; 4791ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4792ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4793ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroupsKHX)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupPropertiesKHX* pPhysicalDeviceGroupProperties); 4794ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4795ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4796ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroupsKHX( 4797ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkInstance instance, 4798ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t* pPhysicalDeviceGroupCount, 4799ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDeviceGroupPropertiesKHX* pPhysicalDeviceGroupProperties); 4800ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4801ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4802ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_memory_capabilities 1 4803ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_LUID_SIZE_KHX 8 4804ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1 4805ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_KHX_external_memory_capabilities" 4806ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4807ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4808ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkExternalMemoryHandleTypeFlagBitsKHX { 4809ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHX = 0x00000001, 4810ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHX = 0x00000002, 4811ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHX = 0x00000004, 4812ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHX = 0x00000008, 4813ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHX = 0x00000010, 4814ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHX = 0x00000020, 4815ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHX = 0x00000040, 4816ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4817ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryHandleTypeFlagBitsKHX; 4818ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkExternalMemoryHandleTypeFlagsKHX; 4819ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4820ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkExternalMemoryFeatureFlagBitsKHX { 4821ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHX = 0x00000001, 4822ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHX = 0x00000002, 4823ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHX = 0x00000004, 4824ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 4825ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryFeatureFlagBitsKHX; 4826ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkExternalMemoryFeatureFlagsKHX; 4827ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4828ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalMemoryPropertiesKHX { 4829ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryFeatureFlagsKHX externalMemoryFeatures; 4830ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX exportFromImportedHandleTypes; 4831ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX compatibleHandleTypes; 4832ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryPropertiesKHX; 4833ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4834ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceExternalImageFormatInfoKHX { 4835ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4836ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4837ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType; 4838ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceExternalImageFormatInfoKHX; 4839ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4840ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalImageFormatPropertiesKHX { 4841ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4842ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4843ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryPropertiesKHX externalMemoryProperties; 4844ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalImageFormatPropertiesKHX; 4845ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4846ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceExternalBufferInfoKHX { 4847ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4848ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4849ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBufferCreateFlags flags; 4850ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBufferUsageFlags usage; 4851ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType; 4852ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceExternalBufferInfoKHX; 4853ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4854ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalBufferPropertiesKHX { 4855ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4856ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4857ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryPropertiesKHX externalMemoryProperties; 4858ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalBufferPropertiesKHX; 4859ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4860ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceIDPropertiesKHX { 4861ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4862ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4863ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint8_t deviceUUID[VK_UUID_SIZE]; 4864ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint8_t driverUUID[VK_UUID_SIZE]; 4865ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint8_t deviceLUID[VK_LUID_SIZE_KHX]; 4866ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 deviceLUIDValid; 4867ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceIDPropertiesKHX; 4868ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4869ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceProperties2KHX { 4870ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4871ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4872ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDeviceProperties properties; 4873ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceProperties2KHX; 4874ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4875ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImageFormatProperties2KHX { 4876ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4877ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4878ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkImageFormatProperties imageFormatProperties; 4879ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImageFormatProperties2KHX; 4880ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4881ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceImageFormatInfo2KHX { 4882ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4883ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4884ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkFormat format; 4885ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkImageType type; 4886ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkImageTiling tiling; 4887ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkImageUsageFlags usage; 4888ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkImageCreateFlags flags; 4889ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceImageFormatInfo2KHX; 4890ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4891ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4892ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHX)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfoKHX* pExternalBufferInfo, VkExternalBufferPropertiesKHX* pExternalBufferProperties); 4893ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2KHX)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2KHX* pProperties); 4894ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2KHX)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2KHX* pImageFormatInfo, VkImageFormatProperties2KHX* pImageFormatProperties); 4895ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4896ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4897ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferPropertiesKHX( 4898ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevice, 4899ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkPhysicalDeviceExternalBufferInfoKHX* pExternalBufferInfo, 4900ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalBufferPropertiesKHX* pExternalBufferProperties); 4901ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4902ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2KHX( 4903ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevice, 4904ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDeviceProperties2KHX* pProperties); 4905ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4906ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2KHX( 4907ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevice, 4908ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkPhysicalDeviceImageFormatInfo2KHX* pImageFormatInfo, 4909ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkImageFormatProperties2KHX* pImageFormatProperties); 4910ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4911ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4912ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_memory 1 4913ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_SPEC_VERSION 1 4914ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_EXTENSION_NAME "VK_KHX_external_memory" 4915ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_QUEUE_FAMILY_EXTERNAL_KHX (~0U-1) 4916ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4917ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalMemoryImageCreateInfoKHX { 4918ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4919ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4920ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX handleTypes; 4921ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryImageCreateInfoKHX; 4922ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4923ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalMemoryBufferCreateInfoKHX { 4924ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4925ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4926ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX handleTypes; 4927ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalMemoryBufferCreateInfoKHX; 4928ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4929ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExportMemoryAllocateInfoKHX { 4930ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4931ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4932ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagsKHX handleTypes; 4933ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExportMemoryAllocateInfoKHX; 4934ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4935ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4936ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4937ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHR 4938ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_memory_win32 1 4939ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1 4940ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_KHX_external_memory_win32" 4941ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4942ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImportMemoryWin32HandleInfoKHX { 4943ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4944ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4945ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType; 4946ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE handle; 4947ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImportMemoryWin32HandleInfoKHX; 4948ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4949ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExportMemoryWin32HandleInfoKHX { 4950ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4951ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4952ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const SECURITY_ATTRIBUTES* pAttributes; 4953ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall DWORD dwAccess; 4954ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall LPCWSTR name; 4955ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExportMemoryWin32HandleInfoKHX; 4956ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4957ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkMemoryWin32HandlePropertiesKHX { 4958ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4959ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4960ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t memoryTypeBits; 4961ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMemoryWin32HandlePropertiesKHX; 4962ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4963ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4964ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleKHX)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagBitsKHX handleType, HANDLE* pHandle); 4965ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandlePropertiesKHX)(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHX handleType, HANDLE handle, VkMemoryWin32HandlePropertiesKHX* pMemoryWin32HandleProperties); 4966ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4967ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 4968ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleKHX( 4969ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4970ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceMemory memory, 4971ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType, 4972ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE* pHandle); 4973ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4974ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandlePropertiesKHX( 4975ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 4976ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType, 4977ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE handle, 4978ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkMemoryWin32HandlePropertiesKHX* pMemoryWin32HandleProperties); 4979ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 4980ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHR */ 4981ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4982ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_memory_fd 1 4983ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_FD_SPEC_VERSION 1 4984ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_MEMORY_FD_EXTENSION_NAME "VK_KHX_external_memory_fd" 4985ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4986ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImportMemoryFdInfoKHX { 4987ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4988ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 4989ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType; 4990ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int fd; 4991ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImportMemoryFdInfoKHX; 4992ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4993ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkMemoryFdPropertiesKHX { 4994ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 4995ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 4996ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t memoryTypeBits; 4997ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMemoryFdPropertiesKHX; 4998ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 4999ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5000ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdKHX)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagBitsKHX handleType, int* pFd); 5001ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdPropertiesKHX)(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHX handleType, int fd, VkMemoryFdPropertiesKHX* pMemoryFdProperties); 5002ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5003ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5004ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdKHX( 5005ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5006ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDeviceMemory memory, 5007ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType, 5008ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int* pFd); 5009ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5010ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdPropertiesKHX( 5011ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5012ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalMemoryHandleTypeFlagBitsKHX handleType, 5013ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int fd, 5014ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkMemoryFdPropertiesKHX* pMemoryFdProperties); 5015ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5016ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5017ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHR 5018ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_win32_keyed_mutex 1 5019ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_WIN32_KEYED_MUTEX_SPEC_VERSION 1 5020ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_KHX_win32_keyed_mutex" 5021ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5022ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkWin32KeyedMutexAcquireReleaseInfoKHX { 5023ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5024ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5025ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t acquireCount; 5026ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkDeviceMemory* pAcquireSyncs; 5027ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint64_t* pAcquireKeys; 5028ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint32_t* pAcquireTimeouts; 5029ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t releaseCount; 5030ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkDeviceMemory* pReleaseSyncs; 5031ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint64_t* pReleaseKeys; 5032ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkWin32KeyedMutexAcquireReleaseInfoKHX; 5033ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5034ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5035ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHR */ 5036ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5037ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_semaphore_capabilities 1 5038ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION 1 5039ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME "VK_KHX_external_semaphore_capabilities" 5040ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5041ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5042ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkExternalSemaphoreHandleTypeFlagBitsKHX { 5043ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHX = 0x00000001, 5044ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHX = 0x00000002, 5045ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHX = 0x00000004, 5046ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHX = 0x00000008, 5047ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FENCE_FD_BIT_KHX = 0x00000010, 5048ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 5049ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalSemaphoreHandleTypeFlagBitsKHX; 5050ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkExternalSemaphoreHandleTypeFlagsKHX; 5051ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5052ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkExternalSemaphoreFeatureFlagBitsKHX { 5053ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHX = 0x00000001, 5054ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHX = 0x00000002, 5055ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM_KHX = 0x7FFFFFFF 5056ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalSemaphoreFeatureFlagBitsKHX; 5057ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkExternalSemaphoreFeatureFlagsKHX; 5058ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5059ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceExternalSemaphoreInfoKHX { 5060ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5061ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5062ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagBitsKHX handleType; 5063ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceExternalSemaphoreInfoKHX; 5064ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5065ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExternalSemaphorePropertiesKHX { 5066ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5067ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 5068ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagsKHX exportFromImportedHandleTypes; 5069ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagsKHX compatibleHandleTypes; 5070ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreFeatureFlagsKHX externalSemaphoreFeatures; 5071ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExternalSemaphorePropertiesKHX; 5072ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5073ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5074ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHX)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfoKHX* pExternalSemaphoreInfo, VkExternalSemaphorePropertiesKHX* pExternalSemaphoreProperties); 5075ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5076ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5077ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphorePropertiesKHX( 5078ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPhysicalDevice physicalDevice, 5079ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkPhysicalDeviceExternalSemaphoreInfoKHX* pExternalSemaphoreInfo, 5080ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphorePropertiesKHX* pExternalSemaphoreProperties); 5081ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5082ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5083ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_semaphore 1 5084ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_SPEC_VERSION 1 5085ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_EXTENSION_NAME "VK_KHX_external_semaphore" 5086ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5087ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExportSemaphoreCreateInfoKHX { 5088ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5089ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5090ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagsKHX handleTypes; 5091ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExportSemaphoreCreateInfoKHX; 5092ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5093ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5094ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5095ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHX 5096ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_semaphore_win32 1 5097ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION 1 5098ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME "VK_KHX_external_semaphore_win32" 5099ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5100ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImportSemaphoreWin32HandleInfoKHX { 5101ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5102ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5103ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore; 5104ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagsKHX handleType; 5105ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE handle; 5106ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImportSemaphoreWin32HandleInfoKHX; 5107ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5108ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkExportSemaphoreWin32HandleInfoKHX { 5109ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5110ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5111ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const SECURITY_ATTRIBUTES* pAttributes; 5112ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall DWORD dwAccess; 5113ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall LPCWSTR name; 5114ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkExportSemaphoreWin32HandleInfoKHX; 5115ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5116ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkD3D12FenceSubmitInfoKHX { 5117ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5118ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5119ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t waitSemaphoreValuesCount; 5120ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint64_t* pWaitSemaphoreValues; 5121ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t signalSemaphoreValuesCount; 5122ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const uint64_t* pSignalSemaphoreValues; 5123ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkD3D12FenceSubmitInfoKHX; 5124ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5125ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5126ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreWin32HandleKHX)(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHX* pImportSemaphoreWin32HandleInfo); 5127ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreWin32HandleKHX)(VkDevice device, VkSemaphore semaphore, VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, HANDLE* pHandle); 5128ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5129ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5130ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreWin32HandleKHX( 5131ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5132ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkImportSemaphoreWin32HandleInfoKHX* pImportSemaphoreWin32HandleInfo); 5133ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5134ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreWin32HandleKHX( 5135ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5136ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore, 5137ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, 5138ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall HANDLE* pHandle); 5139ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5140ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHX */ 5141ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5142ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_external_semaphore_fd 1 5143ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION 1 5144ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_KHX_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME "VK_KHX_external_semaphore_fd" 5145ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5146ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkImportSemaphoreFdInfoKHX { 5147ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5148ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5149ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore; 5150ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagBitsKHX handleType; 5151ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int fd; 5152ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkImportSemaphoreFdInfoKHX; 5153ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5154ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5155ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreFdKHX)(VkDevice device, const VkImportSemaphoreFdInfoKHX* pImportSemaphoreFdInfo); 5156ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreFdKHX)(VkDevice device, VkSemaphore semaphore, VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, int* pFd); 5157ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5158ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5159ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreFdKHX( 5160ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5161ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkImportSemaphoreFdInfoKHX* pImportSemaphoreFdInfo); 5162ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5163ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreFdKHX( 5164ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDevice device, 5165ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSemaphore semaphore, 5166ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, 5167ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall int* pFd); 5168ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5169ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 517077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_incremental_present 1 517177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 1 517277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present" 517377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 517477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkRectLayerKHR { 517577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkOffset2D offset; 517677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkExtent2D extent; 517777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t layer; 517877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkRectLayerKHR; 517977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 518077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkPresentRegionKHR { 518177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t rectangleCount; 518277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkRectLayerKHR* pRectangles; 518377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkPresentRegionKHR; 518477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 518577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkPresentRegionsKHR { 518677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 518777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 518877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t swapchainCount; 518977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkPresentRegionKHR* pRegions; 519077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkPresentRegionsKHR; 519177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 5192289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NVX_device_generated_commands 1 5193289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkObjectTableNVX) 5194289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNVX) 5195289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5196289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 1 5197289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#define VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NVX_device_generated_commands" 5198289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5199289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5200289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkIndirectCommandsTokenTypeNVX { 5201289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX = 0, 5202289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_DESCRIPTOR_SET_NVX = 1, 5203289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_INDEX_BUFFER_NVX = 2, 5204289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_VERTEX_BUFFER_NVX = 3, 5205289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_PUSH_CONSTANT_NVX = 4, 5206289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_DRAW_INDEXED_NVX = 5, 5207289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_DRAW_NVX = 6, 5208289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX = 7, 5209289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX, 5210289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX, 5211289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NVX = (VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX - VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX + 1), 5212289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF 5213289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsTokenTypeNVX; 5214289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5215289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkObjectEntryTypeNVX { 5216289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX = 0, 5217289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_PIPELINE_NVX = 1, 5218289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_INDEX_BUFFER_NVX = 2, 5219289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_VERTEX_BUFFER_NVX = 3, 5220289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX = 4, 5221289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_TYPE_BEGIN_RANGE_NVX = VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX, 5222289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_TYPE_END_RANGE_NVX = VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX, 5223289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_TYPE_RANGE_SIZE_NVX = (VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX - VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX + 1), 5224289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF 5225289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectEntryTypeNVX; 5226289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5227289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5228289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkIndirectCommandsLayoutUsageFlagBitsNVX { 5229289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX = 0x00000001, 5230289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX = 0x00000002, 5231289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX = 0x00000004, 5232289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX = 0x00000008, 5233289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF 5234289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsLayoutUsageFlagBitsNVX; 5235289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkFlags VkIndirectCommandsLayoutUsageFlagsNVX; 5236289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5237289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef enum VkObjectEntryUsageFlagBitsNVX { 5238289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX = 0x00000001, 5239289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX = 0x00000002, 5240289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VK_OBJECT_ENTRY_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF 5241289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectEntryUsageFlagBitsNVX; 5242289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkFlags VkObjectEntryUsageFlagsNVX; 5243289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5244289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkDeviceGeneratedCommandsFeaturesNVX { 5245289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5246289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5247289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBool32 computeBindingPointSupport; 5248289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkDeviceGeneratedCommandsFeaturesNVX; 5249289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5250289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkDeviceGeneratedCommandsLimitsNVX { 5251289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5252289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5253289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxIndirectCommandsLayoutTokenCount; 5254289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxObjectEntryCounts; 5255289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t minSequenceCountBufferOffsetAlignment; 5256289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t minSequenceIndexBufferOffsetAlignment; 5257289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t minCommandsTokenBufferOffsetAlignment; 5258289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkDeviceGeneratedCommandsLimitsNVX; 5259289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5260289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkIndirectCommandsTokenNVX { 5261289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsTokenTypeNVX tokenType; 5262289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer; 5263289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize offset; 5264289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsTokenNVX; 5265289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5266289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkIndirectCommandsLayoutTokenNVX { 5267289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsTokenTypeNVX tokenType; 5268289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t bindingUnit; 5269289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t dynamicCount; 5270289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t divisor; 5271289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsLayoutTokenNVX; 5272289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5273289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkIndirectCommandsLayoutCreateInfoNVX { 5274289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5275289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5276289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPipelineBindPoint pipelineBindPoint; 5277289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutUsageFlagsNVX flags; 5278289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t tokenCount; 5279289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkIndirectCommandsLayoutTokenNVX* pTokens; 5280289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkIndirectCommandsLayoutCreateInfoNVX; 5281289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5282289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkCmdProcessCommandsInfoNVX { 5283289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5284289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5285289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable; 5286289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutNVX indirectCommandsLayout; 5287289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t indirectCommandsTokenCount; 5288289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkIndirectCommandsTokenNVX* pIndirectCommandsTokens; 5289289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxSequencesCount; 5290289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer targetCommandBuffer; 5291289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer sequencesCountBuffer; 5292289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize sequencesCountOffset; 5293289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer sequencesIndexBuffer; 5294289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceSize sequencesIndexOffset; 5295289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkCmdProcessCommandsInfoNVX; 5296289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5297289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkCmdReserveSpaceForCommandsInfoNVX { 5298289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5299289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5300289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable; 5301289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutNVX indirectCommandsLayout; 5302289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxSequencesCount; 5303289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkCmdReserveSpaceForCommandsInfoNVX; 5304289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5305289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableCreateInfoNVX { 5306289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkStructureType sType; 5307289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const void* pNext; 5308289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t objectCount; 5309289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectEntryTypeNVX* pObjectEntryTypes; 5310289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint32_t* pObjectEntryCounts; 5311289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectEntryUsageFlagsNVX* pObjectEntryUsageFlags; 5312289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxUniformBuffersPerDescriptor; 5313289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxStorageBuffersPerDescriptor; 5314289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxStorageImagesPerDescriptor; 5315289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxSampledImagesPerDescriptor; 5316289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t maxPipelineLayouts; 5317289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableCreateInfoNVX; 5318289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5319289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableEntryNVX { 5320289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5321289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5322289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableEntryNVX; 5323289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5324289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTablePipelineEntryNVX { 5325289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5326289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5327289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPipeline pipeline; 5328289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTablePipelineEntryNVX; 5329289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5330289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableDescriptorSetEntryNVX { 5331289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5332289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5333289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPipelineLayout pipelineLayout; 5334289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDescriptorSet descriptorSet; 5335289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableDescriptorSetEntryNVX; 5336289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5337289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableVertexBufferEntryNVX { 5338289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5339289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5340289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer; 5341289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableVertexBufferEntryNVX; 5342289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5343289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTableIndexBufferEntryNVX { 5344289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5345289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5346289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkBuffer buffer; 534777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkIndexType indexType; 5348289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTableIndexBufferEntryNVX; 5349289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5350289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef struct VkObjectTablePushConstantEntryNVX { 5351289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryTypeNVX type; 5352289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectEntryUsageFlagsNVX flags; 5353289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPipelineLayout pipelineLayout; 5354289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkShaderStageFlags stageFlags; 5355289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes} VkObjectTablePushConstantEntryNVX; 5356289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5357289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5358289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkCmdProcessCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo); 5359289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkCmdReserveSpaceForCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo); 5360289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNVX)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout); 5361289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNVX)(VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator); 5362289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkCreateObjectTableNVX)(VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable); 5363289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkDestroyObjectTableNVX)(VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator); 5364289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkRegisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const uint32_t* pObjectIndices); 5365289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef VkResult (VKAPI_PTR *PFN_vkUnregisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const uint32_t* pObjectIndices); 5366289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbestypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX)(VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits); 5367289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5368289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#ifndef VK_NO_PROTOTYPES 5369289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkCmdProcessCommandsNVX( 5370289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer commandBuffer, 5371289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo); 5372289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5373289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkCmdReserveSpaceForCommandsNVX( 5374289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkCommandBuffer commandBuffer, 5375289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo); 5376289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5377289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNVX( 5378289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5379289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, 5380289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkAllocationCallbacks* pAllocator, 5381289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout); 5382289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5383289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNVX( 5384289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5385289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkIndirectCommandsLayoutNVX indirectCommandsLayout, 5386289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkAllocationCallbacks* pAllocator); 5387289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5388289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkCreateObjectTableNVX( 5389289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5390289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectTableCreateInfoNVX* pCreateInfo, 5391289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkAllocationCallbacks* pAllocator, 5392289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX* pObjectTable); 5393289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5394289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkDestroyObjectTableNVX( 5395289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5396289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable, 5397289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkAllocationCallbacks* pAllocator); 5398289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5399289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkRegisterObjectsNVX( 5400289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5401289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable, 5402289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t objectCount, 5403289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectTableEntryNVX* const* ppObjectTableEntries, 5404289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint32_t* pObjectIndices); 5405289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5406289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR VkResult VKAPI_CALL vkUnregisterObjectsNVX( 5407289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDevice device, 5408289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkObjectTableNVX objectTable, 5409289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes uint32_t objectCount, 5410289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const VkObjectEntryTypeNVX* pObjectEntryTypes, 5411289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes const uint32_t* pObjectIndices); 5412289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5413289cb79d444c385185e4f357d3b2fe67a958e932Chris ForbesVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX( 5414289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkPhysicalDevice physicalDevice, 5415289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, 5416289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes VkDeviceGeneratedCommandsLimitsNVX* pLimits); 5417289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes#endif 5418289cb79d444c385185e4f357d3b2fe67a958e932Chris Forbes 5419ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_clip_space_w_scaling 1 5420ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1 5421ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling" 5422ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5423ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkViewportWScalingNV { 5424ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall float xcoeff; 5425ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall float ycoeff; 5426ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkViewportWScalingNV; 5427ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5428ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPipelineViewportWScalingStateCreateInfoNV { 5429ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5430ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5431ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 viewportWScalingEnable; 5432ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t viewportCount; 5433ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkViewportWScalingNV* pViewportWScalings; 5434ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPipelineViewportWScalingStateCreateInfoNV; 5435ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5436ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5437ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetViewportWScalingNV)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings); 5438ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5439ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5440ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWScalingNV( 5441ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 5442ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t firstViewport, 5443ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t viewportCount, 5444ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkViewportWScalingNV* pViewportWScalings); 5445ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5446ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 544777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_direct_mode_display 1 544877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION 1 544977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME "VK_EXT_direct_mode_display" 545077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 545177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkReleaseDisplayEXT)(VkPhysicalDevice physicalDevice, VkDisplayKHR display); 545277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 545377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 545477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkReleaseDisplayEXT( 545577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkPhysicalDevice physicalDevice, 545677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR display); 545777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 545877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 545977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT 546077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_acquire_xlib_display 1 546177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#include <X11/extensions/Xrandr.h> 546277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 546377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION 1 546477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME "VK_EXT_acquire_xlib_display" 546577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 546677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAcquireXlibDisplayEXT)(VkPhysicalDevice physicalDevice, Display* dpy, VkDisplayKHR display); 546777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetRandROutputDisplayEXT)(VkPhysicalDevice physicalDevice, Display* dpy, RROutput rrOutput, VkDisplayKHR* pDisplay); 546877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 546977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 547077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAcquireXlibDisplayEXT( 547177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkPhysicalDevice physicalDevice, 547277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall Display* dpy, 547377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR display); 547477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 547577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetRandROutputDisplayEXT( 547677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkPhysicalDevice physicalDevice, 547777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall Display* dpy, 547877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall RROutput rrOutput, 547977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR* pDisplay); 548077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 548177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif /* VK_USE_PLATFORM_XLIB_XRANDR_EXT */ 548277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 548377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_display_surface_counter 1 548477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION 1 548577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME "VK_EXT_display_surface_counter" 548677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 548777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 548877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef enum VkSurfaceCounterFlagBitsEXT { 548977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_SURFACE_COUNTER_VBLANK_EXT = 0x00000001, 549077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF 549177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkSurfaceCounterFlagBitsEXT; 549277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkFlags VkSurfaceCounterFlagsEXT; 549377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 549477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkSurfaceCapabilities2EXT { 549577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 549677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall void* pNext; 549777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t minImageCount; 549877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t maxImageCount; 549977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkExtent2D currentExtent; 550077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkExtent2D minImageExtent; 550177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkExtent2D maxImageExtent; 550277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint32_t maxImageArrayLayers; 550377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceTransformFlagsKHR supportedTransforms; 550477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceTransformFlagBitsKHR currentTransform; 550577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkCompositeAlphaFlagsKHR supportedCompositeAlpha; 550677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkImageUsageFlags supportedUsageFlags; 550777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceCounterFlagsEXT supportedSurfaceCounters; 550877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkSurfaceCapabilities2EXT; 550977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 551077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 551177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities); 551277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 551377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 551477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2EXT( 551577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkPhysicalDevice physicalDevice, 551677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceKHR surface, 551777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceCapabilities2EXT* pSurfaceCapabilities); 551877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 551977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 552077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_display_control 1 552177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DISPLAY_CONTROL_SPEC_VERSION 1 552277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME "VK_EXT_display_control" 552377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 552477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 552577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef enum VkDisplayPowerStateEXT { 552677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_OFF_EXT = 0, 552777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1, 552877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_ON_EXT = 2, 552977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_BEGIN_RANGE_EXT = VK_DISPLAY_POWER_STATE_OFF_EXT, 553077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_END_RANGE_EXT = VK_DISPLAY_POWER_STATE_ON_EXT, 553177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_RANGE_SIZE_EXT = (VK_DISPLAY_POWER_STATE_ON_EXT - VK_DISPLAY_POWER_STATE_OFF_EXT + 1), 553277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT = 0x7FFFFFFF 553377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDisplayPowerStateEXT; 553477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 553577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef enum VkDeviceEventTypeEXT { 553677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT = 0, 553777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT, 553877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_END_RANGE_EXT = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT, 553977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_RANGE_SIZE_EXT = (VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT - VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT + 1), 554077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF 554177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDeviceEventTypeEXT; 554277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 554377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef enum VkDisplayEventTypeEXT { 554477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT = 0, 554577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_BEGIN_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT, 554677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_END_RANGE_EXT = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT, 554777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse 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), 554877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF 554977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDisplayEventTypeEXT; 555077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 555177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkDisplayPowerInfoEXT { 555277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 555377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 555477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayPowerStateEXT powerState; 555577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDisplayPowerInfoEXT; 555677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 555777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkDeviceEventInfoEXT { 555877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 555977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 556077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDeviceEventTypeEXT deviceEvent; 556177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDeviceEventInfoEXT; 556277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 556377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkDisplayEventInfoEXT { 556477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 556577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 556677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayEventTypeEXT displayEvent; 556777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkDisplayEventInfoEXT; 556877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 556977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef struct VkSwapchainCounterCreateInfoEXT { 557077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkStructureType sType; 557177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const void* pNext; 557277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceCounterFlagsEXT surfaceCounters; 557377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall} VkSwapchainCounterCreateInfoEXT; 557477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 557577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 557677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDisplayPowerControlEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo); 557777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkRegisterDeviceEventEXT)(VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence); 557877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkRegisterDisplayEventEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence); 557977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainCounterEXT)(VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue); 558077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 558177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 558277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDisplayPowerControlEXT( 558377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 558477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR display, 558577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkDisplayPowerInfoEXT* pDisplayPowerInfo); 558677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 558777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkRegisterDeviceEventEXT( 558877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 558977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkDeviceEventInfoEXT* pDeviceEventInfo, 559077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkAllocationCallbacks* pAllocator, 559177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkFence* pFence); 559277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 559377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkRegisterDisplayEventEXT( 559477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 559577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDisplayKHR display, 559677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkDisplayEventInfoEXT* pDisplayEventInfo, 559777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall const VkAllocationCallbacks* pAllocator, 559877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkFence* pFence); 559977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 560077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainCounterEXT( 560177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 560277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSwapchainKHR swapchain, 560377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSurfaceCounterFlagBitsEXT counter, 560477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall uint64_t* pCounterValue); 560577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 560677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 5607889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#define VK_GOOGLE_display_timing 1 5608889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#define VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION 1 5609889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#define VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME "VK_GOOGLE_display_timing" 5610889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5611889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef struct VkRefreshCycleDurationGOOGLE { 5612889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t refreshDuration; 5613889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall} VkRefreshCycleDurationGOOGLE; 5614889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5615889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef struct VkPastPresentationTimingGOOGLE { 5616889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint32_t presentID; 5617889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t desiredPresentTime; 5618889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t actualPresentTime; 5619889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t earliestPresentTime; 5620889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t presentMargin; 5621889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall} VkPastPresentationTimingGOOGLE; 5622889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5623889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef struct VkPresentTimeGOOGLE { 5624889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint32_t presentID; 5625889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint64_t desiredPresentTime; 5626889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall} VkPresentTimeGOOGLE; 5627889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5628889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef struct VkPresentTimesInfoGOOGLE { 5629889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkStructureType sType; 5630889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall const void* pNext; 5631889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint32_t swapchainCount; 5632889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall const VkPresentTimeGOOGLE* pTimes; 5633889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall} VkPresentTimesInfoGOOGLE; 5634889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5635889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5636889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetRefreshCycleDurationGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties); 5637889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings); 5638889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5639889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#ifndef VK_NO_PROTOTYPES 5640889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetRefreshCycleDurationGOOGLE( 5641889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkDevice device, 5642889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkSwapchainKHR swapchain, 5643889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties); 5644889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5645889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPastPresentationTimingGOOGLE( 5646889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkDevice device, 5647889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkSwapchainKHR swapchain, 5648889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall uint32_t* pPresentationTimingCount, 5649889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall VkPastPresentationTimingGOOGLE* pPresentationTimings); 5650889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall#endif 5651889cd9aa94a6b0a8b90116ad7b9c6d70ceeaa5e9Jesse Hall 5652ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_sample_mask_override_coverage 1 5653ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION 1 5654ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME "VK_NV_sample_mask_override_coverage" 5655ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5656ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5657ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_geometry_shader_passthrough 1 5658ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION 1 5659ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME "VK_NV_geometry_shader_passthrough" 5660ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5661ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5662ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_viewport_array2 1 5663ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION 1 5664ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME "VK_NV_viewport_array2" 5665ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5666ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5667ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NVX_multiview_per_view_attributes 1 5668ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION 1 5669ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME "VK_NVX_multiview_per_view_attributes" 5670ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5671ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX { 5672ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5673ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall void* pNext; 5674ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkBool32 perViewPositionAllComponents; 5675ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX; 5676ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5677ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5678ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5679ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_viewport_swizzle 1 5680ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION 1 5681ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME "VK_NV_viewport_swizzle" 5682ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5683ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5684ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkViewportCoordinateSwizzleNV { 5685ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV = 0, 5686ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV = 1, 5687ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV = 2, 5688ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV = 3, 5689ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV = 4, 5690ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV = 5, 5691ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV = 6, 5692ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV = 7, 5693ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_BEGIN_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV, 5694ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_END_RANGE_NV = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV, 5695ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_RANGE_SIZE_NV = (VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV + 1), 5696ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV = 0x7FFFFFFF 5697ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkViewportCoordinateSwizzleNV; 5698ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5699ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkPipelineViewportSwizzleStateCreateFlagsNV; 5700ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5701ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkViewportSwizzleNV { 5702ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkViewportCoordinateSwizzleNV x; 5703ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkViewportCoordinateSwizzleNV y; 5704ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkViewportCoordinateSwizzleNV z; 5705ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkViewportCoordinateSwizzleNV w; 5706ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkViewportSwizzleNV; 5707ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5708ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPipelineViewportSwizzleStateCreateInfoNV { 5709ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5710ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5711ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineViewportSwizzleStateCreateFlagsNV flags; 5712ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t viewportCount; 5713ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkViewportSwizzleNV* pViewportSwizzles; 5714ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPipelineViewportSwizzleStateCreateInfoNV; 5715ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5716ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5717ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5718ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_EXT_discard_rectangles 1 5719ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION 1 5720ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME "VK_EXT_discard_rectangles" 5721ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5722ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5723ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef enum VkDiscardRectangleModeEXT { 5724ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT = 0, 5725ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT = 1, 5726ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_BEGIN_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT, 5727ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_END_RANGE_EXT = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT, 5728ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_RANGE_SIZE_EXT = (VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT - VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT + 1), 5729ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT = 0x7FFFFFFF 5730ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkDiscardRectangleModeEXT; 5731ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5732ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkPipelineDiscardRectangleStateCreateFlagsEXT; 5733ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5734ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT { 5735ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5736ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5737ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t maxDiscardRectangles; 5738ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPhysicalDeviceDiscardRectanglePropertiesEXT; 5739ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5740ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkPipelineDiscardRectangleStateCreateInfoEXT { 5741ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5742ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5743ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkPipelineDiscardRectangleStateCreateFlagsEXT flags; 5744ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkDiscardRectangleModeEXT discardRectangleMode; 5745ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t discardRectangleCount; 5746ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkRect2D* pDiscardRectangles; 5747ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkPipelineDiscardRectangleStateCreateInfoEXT; 5748ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5749ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5750ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDiscardRectangleEXT)(VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles); 5751ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5752ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5753ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDiscardRectangleEXT( 5754ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkCommandBuffer commandBuffer, 5755ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t firstDiscardRectangle, 5756ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall uint32_t discardRectangleCount, 5757ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkRect2D* pDiscardRectangles); 5758ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5759ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5760e278daf850a664a1f15c760c64a74d3649b6f812Courtney Goeltzenleuchter#define VK_EXT_swapchain_colorspace 1 5761e278daf850a664a1f15c760c64a74d3649b6f812Courtney Goeltzenleuchter#define VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION 1 5762e278daf850a664a1f15c760c64a74d3649b6f812Courtney Goeltzenleuchter#define VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME "VK_EXT_swapchain_colorspace" 5763e278daf850a664a1f15c760c64a74d3649b6f812Courtney Goeltzenleuchter 5764d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#define VK_EXT_hdr_metadata 1 5765d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#define VK_EXT_HDR_METADATA_SPEC_VERSION 0 5766d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#define VK_EXT_HDR_METADATA_EXTENSION_NAME "VK_EXT_hdr_metadata" 5767d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5768d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchtertypedef struct VkXYColorEXT { 5769d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float x; 5770d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float y; 5771d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter} VkXYColorEXT; 5772d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5773d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchtertypedef struct VkHdrMetadataEXT { 5774d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkStructureType sType; 5775d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter const void* pNext; 5776d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkXYColorEXT displayPrimaryRed; 5777d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkXYColorEXT displayPrimaryGreen; 5778d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkXYColorEXT displayPrimaryBlue; 5779d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkXYColorEXT whitePoint; 5780d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float maxLuminance; 5781d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float minLuminance; 5782d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float maxContentLightLevel; 5783d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter float maxFrameAverageLightLevel; 5784d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter} VkHdrMetadataEXT; 5785d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5786d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5787d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchtertypedef void (VKAPI_PTR *PFN_vkSetHdrMetadataEXT)(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata); 5788d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 5789d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#ifndef VK_NO_PROTOTYPES 5790d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney GoeltzenleuchterVKAPI_ATTR void VKAPI_CALL vkSetHdrMetadataEXT( 5791d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter VkDevice device, 5792d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter uint32_t swapchainCount, 5793d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter const VkSwapchainKHR* pSwapchains, 5794d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter const VkHdrMetadataEXT* pMetadata); 5795d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter#endif 5796d634c483bcbd564acd81dcf5d15fc5fa8ab410f4Courtney Goeltzenleuchter 579777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_shared_presentable_image 1 579877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1 579977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image" 580077ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 580177ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain); 580277ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 580377ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#ifndef VK_NO_PROTOTYPES 580477ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR( 580577ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkDevice device, 580677ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall VkSwapchainKHR swapchain); 580777ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall#endif 580877ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 580977ad05be8fa7f4d63b384cc134a55e25731cdaf6Jesse Hall 5810ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_IOS_MVK 5811ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_ios_surface 1 5812ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_IOS_SURFACE_SPEC_VERSION 2 5813ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_IOS_SURFACE_EXTENSION_NAME "VK_MVK_ios_surface" 5814ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5815ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkIOSSurfaceCreateFlagsMVK; 5816ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5817ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkIOSSurfaceCreateInfoMVK { 5818ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5819ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5820ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkIOSSurfaceCreateFlagsMVK flags; 5821ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pView; 5822ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkIOSSurfaceCreateInfoMVK; 5823ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5824ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5825ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateIOSSurfaceMVK)(VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 5826ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5827ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5828ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateIOSSurfaceMVK( 5829ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkInstance instance, 5830ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkIOSSurfaceCreateInfoMVK* pCreateInfo, 5831ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAllocationCallbacks* pAllocator, 5832ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSurfaceKHR* pSurface); 5833ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5834ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_IOS_MVK */ 5835ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5836ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifdef VK_USE_PLATFORM_MACOS_MVK 5837ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_macos_surface 1 5838ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_MACOS_SURFACE_SPEC_VERSION 2 5839ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#define VK_MVK_MACOS_SURFACE_EXTENSION_NAME "VK_MVK_macos_surface" 5840ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5841ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkFlags VkMacOSSurfaceCreateFlagsMVK; 5842ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5843ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef struct VkMacOSSurfaceCreateInfoMVK { 5844ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkStructureType sType; 5845ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pNext; 5846ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkMacOSSurfaceCreateFlagsMVK flags; 5847ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const void* pView; 5848ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall} VkMacOSSurfaceCreateInfoMVK; 5849ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5850ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5851ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateMacOSSurfaceMVK)(VkInstance instance, const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 5852ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 5853ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#ifndef VK_NO_PROTOTYPES 5854ad250840766ea76def08c0d9f0b04a09c32dab79Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateMacOSSurfaceMVK( 5855ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkInstance instance, 5856ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, 5857ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall const VkAllocationCallbacks* pAllocator, 5858ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall VkSurfaceKHR* pSurface); 5859ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif 5860ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall#endif /* VK_USE_PLATFORM_MACOS_MVK */ 5861ad250840766ea76def08c0d9f0b04a09c32dab79Jesse Hall 586204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#ifdef __cplusplus 586304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} 586404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 586504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 586604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 5867