2
#define VULKAN_CORE_H_ 1
5
** Copyright 2015-2022 The Khronos Group Inc.
7
** SPDX-License-Identifier: Apache-2.0
11
** This header is generated from the Khronos Vulkan XML API Registry.
22
#define VK_VERSION_1_0 1
23
#include "vk_platform.h"
25
#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;
28
#ifndef VK_USE_64_BIT_PTR_DEFINES
29
#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)
30
#define VK_USE_64_BIT_PTR_DEFINES 1
32
#define VK_USE_64_BIT_PTR_DEFINES 0
37
#ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE
38
#if (VK_USE_64_BIT_PTR_DEFINES==1)
39
#if (defined(__cplusplus) && (__cplusplus >= 201103L)) || (defined(_MSVC_LANG) && (_MSVC_LANG >= 201103L))
40
#define VK_NULL_HANDLE nullptr
42
#define VK_NULL_HANDLE ((void*)0)
45
#define VK_NULL_HANDLE 0ULL
48
#ifndef VK_NULL_HANDLE
49
#define VK_NULL_HANDLE 0
53
#ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE
54
#if (VK_USE_64_BIT_PTR_DEFINES==1)
55
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object;
57
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;
61
// DEPRECATED: This define is deprecated. VK_MAKE_API_VERSION should be used instead.
62
#define VK_MAKE_VERSION(major, minor, patch) \
63
((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))
65
// 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.
66
//#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) // Patch version should always be set to 0
68
#define VK_MAKE_API_VERSION(variant, major, minor, patch) \
69
((((uint32_t)(variant)) << 29) | (((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))
71
// Vulkan 1.0 version number
72
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
74
// Version of this file
75
#define VK_HEADER_VERSION 211
77
// Complete version of this file
78
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
80
// DEPRECATED: This define is deprecated. VK_API_VERSION_MAJOR should be used instead.
81
#define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22)
83
// DEPRECATED: This define is deprecated. VK_API_VERSION_MINOR should be used instead.
84
#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3FFU)
86
// DEPRECATED: This define is deprecated. VK_API_VERSION_PATCH should be used instead.
87
#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU)
89
#define VK_API_VERSION_VARIANT(version) ((uint32_t)(version) >> 29)
90
#define VK_API_VERSION_MAJOR(version) (((uint32_t)(version) >> 22) & 0x7FU)
91
#define VK_API_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3FFU)
92
#define VK_API_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU)
93
typedef uint32_t VkBool32;
94
typedef uint64_t VkDeviceAddress;
95
typedef uint64_t VkDeviceSize;
96
typedef uint32_t VkFlags;
97
typedef uint32_t VkSampleMask;
98
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBuffer)
99
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage)
100
VK_DEFINE_HANDLE(VkInstance)
101
VK_DEFINE_HANDLE(VkPhysicalDevice)
102
VK_DEFINE_HANDLE(VkDevice)
103
VK_DEFINE_HANDLE(VkQueue)
104
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore)
105
VK_DEFINE_HANDLE(VkCommandBuffer)
106
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFence)
107
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory)
108
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkEvent)
109
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkQueryPool)
110
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferView)
111
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImageView)
112
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule)
113
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache)
114
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineLayout)
115
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipeline)
116
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass)
117
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSetLayout)
118
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler)
119
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet)
120
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool)
121
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer)
122
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool)
123
#define VK_UUID_SIZE 16U
124
#define VK_ATTACHMENT_UNUSED (~0U)
126
#define VK_LOD_CLAMP_NONE 1000.0F
127
#define VK_QUEUE_FAMILY_IGNORED (~0U)
128
#define VK_REMAINING_ARRAY_LAYERS (~0U)
129
#define VK_REMAINING_MIP_LEVELS (~0U)
130
#define VK_SUBPASS_EXTERNAL (~0U)
132
#define VK_WHOLE_SIZE (~0ULL)
133
#define VK_MAX_MEMORY_TYPES 32U
134
#define VK_MAX_MEMORY_HEAPS 16U
135
#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256U
136
#define VK_MAX_EXTENSION_NAME_SIZE 256U
137
#define VK_MAX_DESCRIPTION_SIZE 256U
139
typedef enum VkResult {
146
VK_ERROR_OUT_OF_HOST_MEMORY = -1,
147
VK_ERROR_OUT_OF_DEVICE_MEMORY = -2,
148
VK_ERROR_INITIALIZATION_FAILED = -3,
149
VK_ERROR_DEVICE_LOST = -4,
150
VK_ERROR_MEMORY_MAP_FAILED = -5,
151
VK_ERROR_LAYER_NOT_PRESENT = -6,
152
VK_ERROR_EXTENSION_NOT_PRESENT = -7,
153
VK_ERROR_FEATURE_NOT_PRESENT = -8,
154
VK_ERROR_INCOMPATIBLE_DRIVER = -9,
155
VK_ERROR_TOO_MANY_OBJECTS = -10,
156
VK_ERROR_FORMAT_NOT_SUPPORTED = -11,
157
VK_ERROR_FRAGMENTED_POOL = -12,
158
VK_ERROR_UNKNOWN = -13,
159
VK_ERROR_OUT_OF_POOL_MEMORY = -1000069000,
160
VK_ERROR_INVALID_EXTERNAL_HANDLE = -1000072003,
161
VK_ERROR_FRAGMENTATION = -1000161000,
162
VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS = -1000257000,
163
VK_PIPELINE_COMPILE_REQUIRED = 1000297000,
164
VK_ERROR_SURFACE_LOST_KHR = -1000000000,
165
VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = -1000000001,
166
VK_SUBOPTIMAL_KHR = 1000001003,
167
VK_ERROR_OUT_OF_DATE_KHR = -1000001004,
168
VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,
169
VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,
170
VK_ERROR_INVALID_SHADER_NV = -1000012000,
171
VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT = -1000158000,
172
VK_ERROR_NOT_PERMITTED_KHR = -1000174001,
173
VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT = -1000255000,
174
VK_THREAD_IDLE_KHR = 1000268000,
175
VK_THREAD_DONE_KHR = 1000268001,
176
VK_OPERATION_DEFERRED_KHR = 1000268002,
177
VK_OPERATION_NOT_DEFERRED_KHR = 1000268003,
178
VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY,
179
VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = VK_ERROR_INVALID_EXTERNAL_HANDLE,
180
VK_ERROR_FRAGMENTATION_EXT = VK_ERROR_FRAGMENTATION,
181
VK_ERROR_NOT_PERMITTED_EXT = VK_ERROR_NOT_PERMITTED_KHR,
182
VK_ERROR_INVALID_DEVICE_ADDRESS_EXT = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS,
183
VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS,
184
VK_PIPELINE_COMPILE_REQUIRED_EXT = VK_PIPELINE_COMPILE_REQUIRED,
185
VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT = VK_PIPELINE_COMPILE_REQUIRED,
186
VK_RESULT_MAX_ENUM = 0x7FFFFFFF
189
typedef enum VkStructureType {
190
VK_STRUCTURE_TYPE_APPLICATION_INFO = 0,
191
VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1,
192
VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2,
193
VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3,
194
VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,
195
VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5,
196
VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,
197
VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,
198
VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,
199
VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,
200
VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,
201
VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11,
202
VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12,
203
VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,
204
VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,
205
VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,
206
VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,
207
VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17,
208
VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18,
209
VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19,
210
VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 20,
211
VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 21,
212
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 22,
213
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO = 23,
214
VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 24,
215
VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 25,
216
VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 26,
217
VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 27,
218
VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 28,
219
VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 29,
220
VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 30,
221
VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 31,
222
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 32,
223
VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33,
224
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO = 34,
225
VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 35,
226
VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 36,
227
VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 37,
228
VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 38,
229
VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO = 39,
230
VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO = 40,
231
VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO = 41,
232
VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO = 42,
233
VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43,
234
VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44,
235
VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45,
236
VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46,
237
VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = 47,
238
VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = 48,
239
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES = 1000094000,
240
VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO = 1000157000,
241
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO = 1000157001,
242
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES = 1000083000,
243
VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS = 1000127000,
244
VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO = 1000127001,
245
VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO = 1000060000,
246
VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO = 1000060003,
247
VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO = 1000060004,
248
VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO = 1000060005,
249
VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO = 1000060006,
250
VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO = 1000060013,
251
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO = 1000060014,
252
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES = 1000070000,
253
VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO = 1000070001,
254
VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 = 1000146000,
255
VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 = 1000146001,
256
VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 = 1000146002,
257
VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 = 1000146003,
258
VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 = 1000146004,
259
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 = 1000059000,
260
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 = 1000059001,
261
VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 = 1000059002,
262
VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 = 1000059003,
263
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 = 1000059004,
264
VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 = 1000059005,
265
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 = 1000059006,
266
VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 = 1000059007,
267
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 = 1000059008,
268
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES = 1000117000,
269
VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO = 1000117001,
270
VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO = 1000117002,
271
VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO = 1000117003,
272
VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO = 1000053000,
273
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES = 1000053001,
274
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES = 1000053002,
275
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES = 1000120000,
276
VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO = 1000145000,
277
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES = 1000145001,
278
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES = 1000145002,
279
VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 = 1000145003,
280
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO = 1000156000,
281
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO = 1000156001,
282
VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO = 1000156002,
283
VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO = 1000156003,
284
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES = 1000156004,
285
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES = 1000156005,
286
VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO = 1000085000,
287
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO = 1000071000,
288
VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES = 1000071001,
289
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO = 1000071002,
290
VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES = 1000071003,
291
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES = 1000071004,
292
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO = 1000072000,
293
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO = 1000072001,
294
VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO = 1000072002,
295
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO = 1000112000,
296
VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES = 1000112001,
297
VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO = 1000113000,
298
VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO = 1000077000,
299
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO = 1000076000,
300
VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES = 1000076001,
301
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES = 1000168000,
302
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT = 1000168001,
303
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES = 1000063000,
304
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES = 49,
305
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES = 50,
306
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES = 51,
307
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES = 52,
308
VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO = 1000147000,
309
VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 = 1000109000,
310
VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 = 1000109001,
311
VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 = 1000109002,
312
VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 = 1000109003,
313
VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 = 1000109004,
314
VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO = 1000109005,
315
VK_STRUCTURE_TYPE_SUBPASS_END_INFO = 1000109006,
316
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES = 1000177000,
317
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES = 1000196000,
318
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES = 1000180000,
319
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES = 1000082000,
320
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES = 1000197000,
321
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO = 1000161000,
322
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES = 1000161001,
323
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES = 1000161002,
324
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO = 1000161003,
325
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT = 1000161004,
326
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES = 1000199000,
327
VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE = 1000199001,
328
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES = 1000221000,
329
VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO = 1000246000,
330
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES = 1000130000,
331
VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO = 1000130001,
332
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES = 1000211000,
333
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES = 1000108000,
334
VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO = 1000108001,
335
VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO = 1000108002,
336
VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO = 1000108003,
337
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES = 1000253000,
338
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES = 1000175000,
339
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES = 1000241000,
340
VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT = 1000241001,
341
VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT = 1000241002,
342
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES = 1000261000,
343
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES = 1000207000,
344
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES = 1000207001,
345
VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO = 1000207002,
346
VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO = 1000207003,
347
VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO = 1000207004,
348
VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO = 1000207005,
349
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES = 1000257000,
350
VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO = 1000244001,
351
VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO = 1000257002,
352
VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO = 1000257003,
353
VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO = 1000257004,
354
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES = 53,
355
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES = 54,
356
VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO = 1000192000,
357
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES = 1000215000,
358
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES = 1000245000,
359
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES = 1000276000,
360
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES = 1000295000,
361
VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO = 1000295001,
362
VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO = 1000295002,
363
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES = 1000297000,
364
VK_STRUCTURE_TYPE_MEMORY_BARRIER_2 = 1000314000,
365
VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2 = 1000314001,
366
VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2 = 1000314002,
367
VK_STRUCTURE_TYPE_DEPENDENCY_INFO = 1000314003,
368
VK_STRUCTURE_TYPE_SUBMIT_INFO_2 = 1000314004,
369
VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO = 1000314005,
370
VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO = 1000314006,
371
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES = 1000314007,
372
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES = 1000325000,
373
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES = 1000335000,
374
VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2 = 1000337000,
375
VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2 = 1000337001,
376
VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2 = 1000337002,
377
VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2 = 1000337003,
378
VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2 = 1000337004,
379
VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2 = 1000337005,
380
VK_STRUCTURE_TYPE_BUFFER_COPY_2 = 1000337006,
381
VK_STRUCTURE_TYPE_IMAGE_COPY_2 = 1000337007,
382
VK_STRUCTURE_TYPE_IMAGE_BLIT_2 = 1000337008,
383
VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2 = 1000337009,
384
VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2 = 1000337010,
385
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES = 1000225000,
386
VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO = 1000225001,
387
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES = 1000225002,
388
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES = 1000138000,
389
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES = 1000138001,
390
VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK = 1000138002,
391
VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO = 1000138003,
392
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES = 1000066000,
393
VK_STRUCTURE_TYPE_RENDERING_INFO = 1000044000,
394
VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO = 1000044001,
395
VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO = 1000044002,
396
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES = 1000044003,
397
VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO = 1000044004,
398
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES = 1000280000,
399
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES = 1000280001,
400
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES = 1000281001,
401
VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3 = 1000360000,
402
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES = 1000413000,
403
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES = 1000413001,
404
VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS = 1000413002,
405
VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS = 1000413003,
406
VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 1000001000,
407
VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 1000001001,
408
VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR = 1000060007,
409
VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR = 1000060008,
410
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR = 1000060009,
411
VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR = 1000060010,
412
VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR = 1000060011,
413
VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR = 1000060012,
414
VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR = 1000002000,
415
VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR = 1000002001,
416
VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 1000003000,
417
VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000,
418
VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR = 1000005000,
419
VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000,
420
VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR = 1000008000,
421
VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000,
422
VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT = 1000011000,
423
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD = 1000018000,
424
VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT = 1000022000,
425
VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT = 1000022001,
426
VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT = 1000022002,
427
#ifdef VK_ENABLE_BETA_EXTENSIONS
428
VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR = 1000023000,
430
#ifdef VK_ENABLE_BETA_EXTENSIONS
431
VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR = 1000023001,
433
#ifdef VK_ENABLE_BETA_EXTENSIONS
434
VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR = 1000023002,
436
#ifdef VK_ENABLE_BETA_EXTENSIONS
437
VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR = 1000023003,
439
#ifdef VK_ENABLE_BETA_EXTENSIONS
440
VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR = 1000023004,
442
#ifdef VK_ENABLE_BETA_EXTENSIONS
443
VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR = 1000023005,
445
#ifdef VK_ENABLE_BETA_EXTENSIONS
446
VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR = 1000023006,
448
#ifdef VK_ENABLE_BETA_EXTENSIONS
449
VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR = 1000023007,
451
#ifdef VK_ENABLE_BETA_EXTENSIONS
452
VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR = 1000023008,
454
#ifdef VK_ENABLE_BETA_EXTENSIONS
455
VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR = 1000023009,
457
#ifdef VK_ENABLE_BETA_EXTENSIONS
458
VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR = 1000023010,
460
#ifdef VK_ENABLE_BETA_EXTENSIONS
461
VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR = 1000023011,
463
#ifdef VK_ENABLE_BETA_EXTENSIONS
464
VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR = 1000023012,
466
#ifdef VK_ENABLE_BETA_EXTENSIONS
467
VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR = 1000023013,
469
#ifdef VK_ENABLE_BETA_EXTENSIONS
470
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR = 1000023014,
472
#ifdef VK_ENABLE_BETA_EXTENSIONS
473
VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR = 1000023015,
475
#ifdef VK_ENABLE_BETA_EXTENSIONS
476
VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_2_KHR = 1000023016,
478
#ifdef VK_ENABLE_BETA_EXTENSIONS
479
VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR = 1000024000,
481
#ifdef VK_ENABLE_BETA_EXTENSIONS
482
VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR = 1000024001,
484
VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV = 1000026000,
485
VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV = 1000026001,
486
VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV = 1000026002,
487
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT = 1000028000,
488
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT = 1000028001,
489
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT = 1000028002,
490
VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX = 1000029000,
491
VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX = 1000029001,
492
VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX = 1000029002,
493
VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX = 1000030000,
494
VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX = 1000030001,
495
#ifdef VK_ENABLE_BETA_EXTENSIONS
496
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT = 1000038000,
498
#ifdef VK_ENABLE_BETA_EXTENSIONS
499
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000038001,
501
#ifdef VK_ENABLE_BETA_EXTENSIONS
502
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT = 1000038002,
504
#ifdef VK_ENABLE_BETA_EXTENSIONS
505
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT = 1000038003,
507
#ifdef VK_ENABLE_BETA_EXTENSIONS
508
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT = 1000038004,
510
#ifdef VK_ENABLE_BETA_EXTENSIONS
511
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT = 1000038005,
513
#ifdef VK_ENABLE_BETA_EXTENSIONS
514
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT = 1000038006,
516
#ifdef VK_ENABLE_BETA_EXTENSIONS
517
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT = 1000038007,
519
#ifdef VK_ENABLE_BETA_EXTENSIONS
520
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT = 1000038008,
522
#ifdef VK_ENABLE_BETA_EXTENSIONS
523
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT = 1000038009,
525
#ifdef VK_ENABLE_BETA_EXTENSIONS
526
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_EXT = 1000038010,
528
#ifdef VK_ENABLE_BETA_EXTENSIONS
529
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT = 1000039000,
531
#ifdef VK_ENABLE_BETA_EXTENSIONS
532
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000039001,
534
#ifdef VK_ENABLE_BETA_EXTENSIONS
535
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT = 1000039002,
537
#ifdef VK_ENABLE_BETA_EXTENSIONS
538
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT = 1000039003,
540
#ifdef VK_ENABLE_BETA_EXTENSIONS
541
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT = 1000039004,
543
#ifdef VK_ENABLE_BETA_EXTENSIONS
544
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_EXT = 1000039005,
546
#ifdef VK_ENABLE_BETA_EXTENSIONS
547
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT = 1000039006,
549
#ifdef VK_ENABLE_BETA_EXTENSIONS
550
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT = 1000039007,
552
#ifdef VK_ENABLE_BETA_EXTENSIONS
553
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT = 1000039008,
555
#ifdef VK_ENABLE_BETA_EXTENSIONS
556
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT = 1000039009,
558
#ifdef VK_ENABLE_BETA_EXTENSIONS
559
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT = 1000039010,
561
#ifdef VK_ENABLE_BETA_EXTENSIONS
562
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT = 1000040000,
564
#ifdef VK_ENABLE_BETA_EXTENSIONS
565
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT = 1000040001,
567
#ifdef VK_ENABLE_BETA_EXTENSIONS
568
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT = 1000040002,
570
#ifdef VK_ENABLE_BETA_EXTENSIONS
571
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT = 1000040003,
573
#ifdef VK_ENABLE_BETA_EXTENSIONS
574
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000040004,
576
#ifdef VK_ENABLE_BETA_EXTENSIONS
577
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT = 1000040005,
579
#ifdef VK_ENABLE_BETA_EXTENSIONS
580
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT = 1000040006,
582
VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD = 1000041000,
583
VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR = 1000044006,
584
VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT = 1000044007,
585
VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD = 1000044008,
586
VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX = 1000044009,
587
VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP = 1000049000,
588
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV = 1000050000,
589
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV = 1000056000,
590
VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV = 1000056001,
591
VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057000,
592
VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057001,
593
VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV = 1000058000,
594
VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT = 1000061000,
595
VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN = 1000062000,
596
VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT = 1000067000,
597
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT = 1000067001,
598
VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073000,
599
VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073001,
600
VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR = 1000073002,
601
VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR = 1000073003,
602
VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR = 1000074000,
603
VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR = 1000074001,
604
VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR = 1000074002,
605
VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR = 1000075000,
606
VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR = 1000078000,
607
VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR = 1000078001,
608
VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR = 1000078002,
609
VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR = 1000078003,
610
VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR = 1000079000,
611
VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR = 1000079001,
612
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR = 1000080000,
613
VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT = 1000081000,
614
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT = 1000081001,
615
VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT = 1000081002,
616
VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000,
617
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV = 1000087000,
618
VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT = 1000090000,
619
VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT = 1000091000,
620
VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT = 1000091001,
621
VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT = 1000091002,
622
VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT = 1000091003,
623
VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE = 1000092000,
624
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX = 1000097000,
625
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV = 1000098000,
626
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT = 1000099000,
627
VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT = 1000099001,
628
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT = 1000101000,
629
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT = 1000101001,
630
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT = 1000102000,
631
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT = 1000102001,
632
VK_STRUCTURE_TYPE_HDR_METADATA_EXT = 1000105000,
633
VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000,
634
VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR = 1000114000,
635
VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR = 1000114001,
636
VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR = 1000114002,
637
VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR = 1000115000,
638
VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR = 1000115001,
639
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR = 1000116000,
640
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR = 1000116001,
641
VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR = 1000116002,
642
VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR = 1000116003,
643
VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR = 1000116004,
644
VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR = 1000116005,
645
VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR = 1000116006,
646
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR = 1000119000,
647
VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001,
648
VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002,
649
VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR = 1000121000,
650
VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR = 1000121001,
651
VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR = 1000121002,
652
VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR = 1000121003,
653
VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR = 1000121004,
654
VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK = 1000122000,
655
VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK = 1000123000,
656
VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT = 1000128000,
657
VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT = 1000128001,
658
VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT = 1000128002,
659
VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT = 1000128003,
660
VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT = 1000128004,
661
VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID = 1000129000,
662
VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID = 1000129001,
663
VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID = 1000129002,
664
VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID = 1000129003,
665
VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID = 1000129004,
666
VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID = 1000129005,
667
VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID = 1000129006,
668
VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT = 1000143000,
669
VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT = 1000143001,
670
VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT = 1000143002,
671
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT = 1000143003,
672
VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT = 1000143004,
673
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT = 1000148000,
674
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT = 1000148001,
675
VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT = 1000148002,
676
VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV = 1000149000,
677
VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR = 1000150007,
678
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR = 1000150000,
679
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR = 1000150002,
680
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR = 1000150003,
681
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR = 1000150004,
682
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR = 1000150005,
683
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR = 1000150006,
684
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR = 1000150009,
685
VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR = 1000150010,
686
VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR = 1000150011,
687
VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR = 1000150012,
688
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR = 1000150013,
689
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR = 1000150014,
690
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR = 1000150017,
691
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR = 1000150020,
692
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR = 1000347000,
693
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR = 1000347001,
694
VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR = 1000150015,
695
VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR = 1000150016,
696
VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR = 1000150018,
697
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR = 1000348013,
698
VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV = 1000152000,
699
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV = 1000154000,
700
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV = 1000154001,
701
VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT = 1000158000,
702
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT = 1000158002,
703
VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT = 1000158003,
704
VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT = 1000158004,
705
VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT = 1000158005,
706
VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT = 1000158006,
707
VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160000,
708
VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160001,
709
#ifdef VK_ENABLE_BETA_EXTENSIONS
710
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR = 1000163000,
712
#ifdef VK_ENABLE_BETA_EXTENSIONS
713
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR = 1000163001,
715
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV = 1000164000,
716
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV = 1000164001,
717
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV = 1000164002,
718
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV = 1000164005,
719
VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV = 1000165000,
720
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV = 1000165001,
721
VK_STRUCTURE_TYPE_GEOMETRY_NV = 1000165003,
722
VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV = 1000165004,
723
VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV = 1000165005,
724
VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV = 1000165006,
725
VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV = 1000165007,
726
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV = 1000165008,
727
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV = 1000165009,
728
VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV = 1000165011,
729
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV = 1000165012,
730
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV = 1000166000,
731
VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV = 1000166001,
732
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT = 1000170000,
733
VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT = 1000170001,
734
VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT = 1000178000,
735
VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT = 1000178001,
736
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT = 1000178002,
737
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR = 1000181000,
738
VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD = 1000183000,
739
VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT = 1000184000,
740
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD = 1000185000,
741
#ifdef VK_ENABLE_BETA_EXTENSIONS
742
VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT = 1000187000,
744
#ifdef VK_ENABLE_BETA_EXTENSIONS
745
VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000187001,
747
#ifdef VK_ENABLE_BETA_EXTENSIONS
748
VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT = 1000187002,
750
#ifdef VK_ENABLE_BETA_EXTENSIONS
751
VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT = 1000187003,
753
#ifdef VK_ENABLE_BETA_EXTENSIONS
754
VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT = 1000187004,
756
#ifdef VK_ENABLE_BETA_EXTENSIONS
757
VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT = 1000187005,
759
VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR = 1000174000,
760
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR = 1000388000,
761
VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR = 1000388001,
762
VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD = 1000189000,
763
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT = 1000190000,
764
VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT = 1000190001,
765
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT = 1000190002,
766
VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP = 1000191000,
767
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV = 1000201000,
768
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV = 1000202000,
769
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV = 1000202001,
770
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV = 1000203000,
771
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV = 1000204000,
772
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV = 1000205000,
773
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV = 1000205002,
774
VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV = 1000206000,
775
VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV = 1000206001,
776
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL = 1000209000,
777
VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL = 1000210000,
778
VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL = 1000210001,
779
VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL = 1000210002,
780
VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL = 1000210003,
781
VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL = 1000210004,
782
VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL = 1000210005,
783
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT = 1000212000,
784
VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD = 1000213000,
785
VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD = 1000213001,
786
VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA = 1000214000,
787
VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT = 1000217000,
788
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT = 1000218000,
789
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT = 1000218001,
790
VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT = 1000218002,
791
VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR = 1000226000,
792
VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR = 1000226001,
793
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR = 1000226002,
794
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR = 1000226003,
795
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR = 1000226004,
796
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD = 1000227000,
797
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD = 1000229000,
798
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT = 1000234000,
799
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT = 1000237000,
800
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT = 1000238000,
801
VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT = 1000238001,
802
VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR = 1000239000,
803
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV = 1000240000,
804
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT = 1000244000,
805
VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT = 1000244002,
806
VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT = 1000247000,
807
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR = 1000248000,
808
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV = 1000249000,
809
VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV = 1000249001,
810
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV = 1000249002,
811
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV = 1000250000,
812
VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV = 1000250001,
813
VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV = 1000250002,
814
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT = 1000251000,
815
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT = 1000252000,
816
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT = 1000254000,
817
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT = 1000254001,
818
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT = 1000254002,
819
VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT = 1000255000,
820
VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT = 1000255002,
821
VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT = 1000255001,
822
VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT = 1000256000,
823
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT = 1000259000,
824
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT = 1000259001,
825
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT = 1000259002,
826
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT = 1000260000,
827
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT = 1000265000,
828
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT = 1000267000,
829
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR = 1000269000,
830
VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR = 1000269001,
831
VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR = 1000269002,
832
VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR = 1000269003,
833
VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR = 1000269004,
834
VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR = 1000269005,
835
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT = 1000273000,
836
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV = 1000277000,
837
VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV = 1000277001,
838
VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV = 1000277002,
839
VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV = 1000277003,
840
VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV = 1000277004,
841
VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV = 1000277005,
842
VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV = 1000277006,
843
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV = 1000277007,
844
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV = 1000278000,
845
VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV = 1000278001,
846
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT = 1000281000,
847
VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM = 1000282000,
848
VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM = 1000282001,
849
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT = 1000284000,
850
VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT = 1000284001,
851
VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT = 1000284002,
852
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT = 1000286000,
853
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT = 1000286001,
854
VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT = 1000287000,
855
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT = 1000287001,
856
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT = 1000287002,
857
VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR = 1000290000,
858
VK_STRUCTURE_TYPE_PRESENT_ID_KHR = 1000294000,
859
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR = 1000294001,
860
#ifdef VK_ENABLE_BETA_EXTENSIONS
861
VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR = 1000299000,
863
#ifdef VK_ENABLE_BETA_EXTENSIONS
864
VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR = 1000299001,
866
#ifdef VK_ENABLE_BETA_EXTENSIONS
867
VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR = 1000299002,
869
#ifdef VK_ENABLE_BETA_EXTENSIONS
870
VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR = 1000299003,
872
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV = 1000300000,
873
VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV = 1000300001,
874
VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV = 1000314008,
875
VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV = 1000314009,
876
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT = 1000320000,
877
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT = 1000320001,
878
VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT = 1000320002,
879
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR = 1000323000,
880
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV = 1000326000,
881
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV = 1000326001,
882
VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV = 1000326002,
883
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV = 1000327000,
884
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV = 1000327001,
885
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV = 1000327002,
886
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT = 1000330000,
887
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT = 1000332000,
888
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT = 1000332001,
889
VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM = 1000333000,
890
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR = 1000336000,
891
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT = 1000340000,
892
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM = 1000342000,
893
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT = 1000344000,
894
VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT = 1000346000,
895
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE = 1000351000,
896
VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE = 1000351002,
897
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT = 1000352000,
898
VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT = 1000352001,
899
VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT = 1000352002,
900
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT = 1000353000,
901
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT = 1000355000,
902
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT = 1000355001,
903
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT = 1000356000,
904
VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA = 1000364000,
905
VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA = 1000364001,
906
VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA = 1000364002,
907
VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA = 1000365000,
908
VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA = 1000365001,
909
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA = 1000366000,
910
VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA = 1000366001,
911
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA = 1000366002,
912
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA = 1000366003,
913
VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA = 1000366004,
914
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA = 1000366005,
915
VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA = 1000366006,
916
VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA = 1000366007,
917
VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA = 1000366008,
918
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA = 1000366009,
919
VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI = 1000369000,
920
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI = 1000369001,
921
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI = 1000369002,
922
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI = 1000370000,
923
VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV = 1000371000,
924
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV = 1000371001,
925
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT = 1000377000,
926
VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX = 1000378000,
927
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT = 1000381000,
928
VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT = 1000381001,
929
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT = 1000382000,
930
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT = 1000391000,
931
VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT = 1000391001,
932
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT = 1000392000,
933
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT = 1000392001,
934
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT = 1000393000,
935
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT = 1000411000,
936
VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT = 1000411001,
937
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT = 1000412000,
938
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE = 1000420000,
939
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE = 1000420001,
940
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE = 1000420002,
941
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM = 1000425000,
942
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM = 1000425001,
943
VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM = 1000425002,
944
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV = 1000430000,
945
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
946
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
947
VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
948
VK_STRUCTURE_TYPE_RENDERING_INFO_KHR = VK_STRUCTURE_TYPE_RENDERING_INFO,
949
VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO,
950
VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO,
951
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES,
952
VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO,
953
VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV = VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD,
954
VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,
955
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,
956
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES,
957
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,
958
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2,
959
VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2,
960
VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2,
961
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,
962
VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2,
963
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2,
964
VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2,
965
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2,
966
VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO,
967
VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO,
968
VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO,
969
VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO,
970
VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO,
971
VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO,
972
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO,
973
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES,
974
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES,
975
VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO,
976
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO,
977
VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES,
978
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO,
979
VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES,
980
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES,
981
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO,
982
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO,
983
VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO,
984
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO,
985
VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES,
986
VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO,
987
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES,
988
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES,
989
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES,
990
VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO,
991
VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT,
992
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES,
993
VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO,
994
VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO,
995
VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO,
996
VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2,
997
VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2,
998
VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2,
999
VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2,
1000
VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2,
1001
VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO,
1002
VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR = VK_STRUCTURE_TYPE_SUBPASS_END_INFO,
1003
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO,
1004
VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES,
1005
VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO,
1006
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES,
1007
VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO,
1008
VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO,
1009
VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO,
1010
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
1011
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR,
1012
VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS,
1013
VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO,
1014
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES,
1015
VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO,
1016
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES,
1017
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES,
1018
VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK,
1019
VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO,
1020
VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2,
1021
VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2,
1022
VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,
1023
VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2,
1024
VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2,
1025
VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO,
1026
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO,
1027
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO,
1028
VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO,
1029
VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO,
1030
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES,
1031
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES,
1032
VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO,
1033
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO,
1034
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO,
1035
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES,
1036
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES,
1037
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO,
1038
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT,
1039
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,
1040
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,
1041
VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR,
1042
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES,
1043
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES,
1044
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES,
1045
VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO,
1046
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES,
1047
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES,
1048
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES,
1049
VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE,
1050
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES,
1051
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES,
1052
VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO,
1053
VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO,
1054
VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO,
1055
VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO,
1056
VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL,
1057
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES,
1058
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES,
1059
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES,
1060
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES,
1061
VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO,
1062
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES,
1063
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES,
1064
VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT,
1065
VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT,
1066
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT,
1067
VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO,
1068
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES,
1069
VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO,
1070
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES,
1071
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES,
1072
VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO,
1073
VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO,
1074
VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO,
1075
VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO,
1076
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES,
1077
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES,
1078
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES,
1079
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES,
1080
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES,
1081
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES,
1082
VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO,
1083
VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO,
1084
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES,
1085
VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR = VK_STRUCTURE_TYPE_MEMORY_BARRIER_2,
1086
VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2,
1087
VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2,
1088
VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR = VK_STRUCTURE_TYPE_DEPENDENCY_INFO,
1089
VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR = VK_STRUCTURE_TYPE_SUBMIT_INFO_2,
1090
VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO,
1091
VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR = VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO,
1092
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES,
1093
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES,
1094
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES,
1095
VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2,
1096
VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2,
1097
VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2,
1098
VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2,
1099
VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2,
1100
VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2,
1101
VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR = VK_STRUCTURE_TYPE_BUFFER_COPY_2,
1102
VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR = VK_STRUCTURE_TYPE_IMAGE_COPY_2,
1103
VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR = VK_STRUCTURE_TYPE_IMAGE_BLIT_2,
1104
VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2,
1105
VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2,
1106
VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3,
1107
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR,
1108
VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR,
1109
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES,
1110
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES,
1111
VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR = VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS,
1112
VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR = VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS,
1113
VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
1116
typedef enum VkImageLayout {
1117
VK_IMAGE_LAYOUT_UNDEFINED = 0,
1118
VK_IMAGE_LAYOUT_GENERAL = 1,
1119
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2,
1120
VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3,
1121
VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4,
1122
VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5,
1123
VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6,
1124
VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7,
1125
VK_IMAGE_LAYOUT_PREINITIALIZED = 8,
1126
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL = 1000117000,
1127
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL = 1000117001,
1128
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL = 1000241000,
1129
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL = 1000241001,
1130
VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL = 1000241002,
1131
VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL = 1000241003,
1132
VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL = 1000314000,
1133
VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL = 1000314001,
1134
VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002,
1135
#ifdef VK_ENABLE_BETA_EXTENSIONS
1136
VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR = 1000024000,
1138
#ifdef VK_ENABLE_BETA_EXTENSIONS
1139
VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR = 1000024001,
1141
#ifdef VK_ENABLE_BETA_EXTENSIONS
1142
VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR = 1000024002,
1144
VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR = 1000111000,
1145
VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT = 1000218000,
1146
VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR = 1000164003,
1147
#ifdef VK_ENABLE_BETA_EXTENSIONS
1148
VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR = 1000299000,
1150
#ifdef VK_ENABLE_BETA_EXTENSIONS
1151
VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR = 1000299001,
1153
#ifdef VK_ENABLE_BETA_EXTENSIONS
1154
VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR = 1000299002,
1156
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
1157
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
1158
VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR,
1159
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
1160
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
1161
VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL,
1162
VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL,
1163
VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL,
1164
VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL,
1165
VK_IMAGE_LAYOUT_MAX_ENUM = 0x7FFFFFFF
1168
typedef enum VkObjectType {
1169
VK_OBJECT_TYPE_UNKNOWN = 0,
1170
VK_OBJECT_TYPE_INSTANCE = 1,
1171
VK_OBJECT_TYPE_PHYSICAL_DEVICE = 2,
1172
VK_OBJECT_TYPE_DEVICE = 3,
1173
VK_OBJECT_TYPE_QUEUE = 4,
1174
VK_OBJECT_TYPE_SEMAPHORE = 5,
1175
VK_OBJECT_TYPE_COMMAND_BUFFER = 6,
1176
VK_OBJECT_TYPE_FENCE = 7,
1177
VK_OBJECT_TYPE_DEVICE_MEMORY = 8,
1178
VK_OBJECT_TYPE_BUFFER = 9,
1179
VK_OBJECT_TYPE_IMAGE = 10,
1180
VK_OBJECT_TYPE_EVENT = 11,
1181
VK_OBJECT_TYPE_QUERY_POOL = 12,
1182
VK_OBJECT_TYPE_BUFFER_VIEW = 13,
1183
VK_OBJECT_TYPE_IMAGE_VIEW = 14,
1184
VK_OBJECT_TYPE_SHADER_MODULE = 15,
1185
VK_OBJECT_TYPE_PIPELINE_CACHE = 16,
1186
VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17,
1187
VK_OBJECT_TYPE_RENDER_PASS = 18,
1188
VK_OBJECT_TYPE_PIPELINE = 19,
1189
VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT = 20,
1190
VK_OBJECT_TYPE_SAMPLER = 21,
1191
VK_OBJECT_TYPE_DESCRIPTOR_POOL = 22,
1192
VK_OBJECT_TYPE_DESCRIPTOR_SET = 23,
1193
VK_OBJECT_TYPE_FRAMEBUFFER = 24,
1194
VK_OBJECT_TYPE_COMMAND_POOL = 25,
1195
VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION = 1000156000,
1196
VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE = 1000085000,
1197
VK_OBJECT_TYPE_PRIVATE_DATA_SLOT = 1000295000,
1198
VK_OBJECT_TYPE_SURFACE_KHR = 1000000000,
1199
VK_OBJECT_TYPE_SWAPCHAIN_KHR = 1000001000,
1200
VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000,
1201
VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001,
1202
VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000,
1203
#ifdef VK_ENABLE_BETA_EXTENSIONS
1204
VK_OBJECT_TYPE_VIDEO_SESSION_KHR = 1000023000,
1206
#ifdef VK_ENABLE_BETA_EXTENSIONS
1207
VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR = 1000023001,
1209
VK_OBJECT_TYPE_CU_MODULE_NVX = 1000029000,
1210
VK_OBJECT_TYPE_CU_FUNCTION_NVX = 1000029001,
1211
VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000128000,
1212
VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000,
1213
VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000,
1214
VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
1215
VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL = 1000210000,
1216
VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000,
1217
VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000,
1218
VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA = 1000366000,
1219
VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
1220
VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
1221
VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT,
1222
VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF
1225
typedef enum VkPipelineCacheHeaderVersion {
1226
VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1,
1227
VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF
1228
} VkPipelineCacheHeaderVersion;
1230
typedef enum VkVendorId {
1231
VK_VENDOR_ID_VIV = 0x10001,
1232
VK_VENDOR_ID_VSI = 0x10002,
1233
VK_VENDOR_ID_KAZAN = 0x10003,
1234
VK_VENDOR_ID_CODEPLAY = 0x10004,
1235
VK_VENDOR_ID_MESA = 0x10005,
1236
VK_VENDOR_ID_POCL = 0x10006,
1237
VK_VENDOR_ID_MAX_ENUM = 0x7FFFFFFF
1240
typedef enum VkSystemAllocationScope {
1241
VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0,
1242
VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1,
1243
VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2,
1244
VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3,
1245
VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4,
1246
VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM = 0x7FFFFFFF
1247
} VkSystemAllocationScope;
1249
typedef enum VkInternalAllocationType {
1250
VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0,
1251
VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM = 0x7FFFFFFF
1252
} VkInternalAllocationType;
1254
typedef enum VkFormat {
1255
VK_FORMAT_UNDEFINED = 0,
1256
VK_FORMAT_R4G4_UNORM_PACK8 = 1,
1257
VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2,
1258
VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3,
1259
VK_FORMAT_R5G6B5_UNORM_PACK16 = 4,
1260
VK_FORMAT_B5G6R5_UNORM_PACK16 = 5,
1261
VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6,
1262
VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7,
1263
VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8,
1264
VK_FORMAT_R8_UNORM = 9,
1265
VK_FORMAT_R8_SNORM = 10,
1266
VK_FORMAT_R8_USCALED = 11,
1267
VK_FORMAT_R8_SSCALED = 12,
1268
VK_FORMAT_R8_UINT = 13,
1269
VK_FORMAT_R8_SINT = 14,
1270
VK_FORMAT_R8_SRGB = 15,
1271
VK_FORMAT_R8G8_UNORM = 16,
1272
VK_FORMAT_R8G8_SNORM = 17,
1273
VK_FORMAT_R8G8_USCALED = 18,
1274
VK_FORMAT_R8G8_SSCALED = 19,
1275
VK_FORMAT_R8G8_UINT = 20,
1276
VK_FORMAT_R8G8_SINT = 21,
1277
VK_FORMAT_R8G8_SRGB = 22,
1278
VK_FORMAT_R8G8B8_UNORM = 23,
1279
VK_FORMAT_R8G8B8_SNORM = 24,
1280
VK_FORMAT_R8G8B8_USCALED = 25,
1281
VK_FORMAT_R8G8B8_SSCALED = 26,
1282
VK_FORMAT_R8G8B8_UINT = 27,
1283
VK_FORMAT_R8G8B8_SINT = 28,
1284
VK_FORMAT_R8G8B8_SRGB = 29,
1285
VK_FORMAT_B8G8R8_UNORM = 30,
1286
VK_FORMAT_B8G8R8_SNORM = 31,
1287
VK_FORMAT_B8G8R8_USCALED = 32,
1288
VK_FORMAT_B8G8R8_SSCALED = 33,
1289
VK_FORMAT_B8G8R8_UINT = 34,
1290
VK_FORMAT_B8G8R8_SINT = 35,
1291
VK_FORMAT_B8G8R8_SRGB = 36,
1292
VK_FORMAT_R8G8B8A8_UNORM = 37,
1293
VK_FORMAT_R8G8B8A8_SNORM = 38,
1294
VK_FORMAT_R8G8B8A8_USCALED = 39,
1295
VK_FORMAT_R8G8B8A8_SSCALED = 40,
1296
VK_FORMAT_R8G8B8A8_UINT = 41,
1297
VK_FORMAT_R8G8B8A8_SINT = 42,
1298
VK_FORMAT_R8G8B8A8_SRGB = 43,
1299
VK_FORMAT_B8G8R8A8_UNORM = 44,
1300
VK_FORMAT_B8G8R8A8_SNORM = 45,
1301
VK_FORMAT_B8G8R8A8_USCALED = 46,
1302
VK_FORMAT_B8G8R8A8_SSCALED = 47,
1303
VK_FORMAT_B8G8R8A8_UINT = 48,
1304
VK_FORMAT_B8G8R8A8_SINT = 49,
1305
VK_FORMAT_B8G8R8A8_SRGB = 50,
1306
VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51,
1307
VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52,
1308
VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53,
1309
VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54,
1310
VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55,
1311
VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56,
1312
VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57,
1313
VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58,
1314
VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59,
1315
VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60,
1316
VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61,
1317
VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62,
1318
VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63,
1319
VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64,
1320
VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65,
1321
VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66,
1322
VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67,
1323
VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68,
1324
VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69,
1325
VK_FORMAT_R16_UNORM = 70,
1326
VK_FORMAT_R16_SNORM = 71,
1327
VK_FORMAT_R16_USCALED = 72,
1328
VK_FORMAT_R16_SSCALED = 73,
1329
VK_FORMAT_R16_UINT = 74,
1330
VK_FORMAT_R16_SINT = 75,
1331
VK_FORMAT_R16_SFLOAT = 76,
1332
VK_FORMAT_R16G16_UNORM = 77,
1333
VK_FORMAT_R16G16_SNORM = 78,
1334
VK_FORMAT_R16G16_USCALED = 79,
1335
VK_FORMAT_R16G16_SSCALED = 80,
1336
VK_FORMAT_R16G16_UINT = 81,
1337
VK_FORMAT_R16G16_SINT = 82,
1338
VK_FORMAT_R16G16_SFLOAT = 83,
1339
VK_FORMAT_R16G16B16_UNORM = 84,
1340
VK_FORMAT_R16G16B16_SNORM = 85,
1341
VK_FORMAT_R16G16B16_USCALED = 86,
1342
VK_FORMAT_R16G16B16_SSCALED = 87,
1343
VK_FORMAT_R16G16B16_UINT = 88,
1344
VK_FORMAT_R16G16B16_SINT = 89,
1345
VK_FORMAT_R16G16B16_SFLOAT = 90,
1346
VK_FORMAT_R16G16B16A16_UNORM = 91,
1347
VK_FORMAT_R16G16B16A16_SNORM = 92,
1348
VK_FORMAT_R16G16B16A16_USCALED = 93,
1349
VK_FORMAT_R16G16B16A16_SSCALED = 94,
1350
VK_FORMAT_R16G16B16A16_UINT = 95,
1351
VK_FORMAT_R16G16B16A16_SINT = 96,
1352
VK_FORMAT_R16G16B16A16_SFLOAT = 97,
1353
VK_FORMAT_R32_UINT = 98,
1354
VK_FORMAT_R32_SINT = 99,
1355
VK_FORMAT_R32_SFLOAT = 100,
1356
VK_FORMAT_R32G32_UINT = 101,
1357
VK_FORMAT_R32G32_SINT = 102,
1358
VK_FORMAT_R32G32_SFLOAT = 103,
1359
VK_FORMAT_R32G32B32_UINT = 104,
1360
VK_FORMAT_R32G32B32_SINT = 105,
1361
VK_FORMAT_R32G32B32_SFLOAT = 106,
1362
VK_FORMAT_R32G32B32A32_UINT = 107,
1363
VK_FORMAT_R32G32B32A32_SINT = 108,
1364
VK_FORMAT_R32G32B32A32_SFLOAT = 109,
1365
VK_FORMAT_R64_UINT = 110,
1366
VK_FORMAT_R64_SINT = 111,
1367
VK_FORMAT_R64_SFLOAT = 112,
1368
VK_FORMAT_R64G64_UINT = 113,
1369
VK_FORMAT_R64G64_SINT = 114,
1370
VK_FORMAT_R64G64_SFLOAT = 115,
1371
VK_FORMAT_R64G64B64_UINT = 116,
1372
VK_FORMAT_R64G64B64_SINT = 117,
1373
VK_FORMAT_R64G64B64_SFLOAT = 118,
1374
VK_FORMAT_R64G64B64A64_UINT = 119,
1375
VK_FORMAT_R64G64B64A64_SINT = 120,
1376
VK_FORMAT_R64G64B64A64_SFLOAT = 121,
1377
VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122,
1378
VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123,
1379
VK_FORMAT_D16_UNORM = 124,
1380
VK_FORMAT_X8_D24_UNORM_PACK32 = 125,
1381
VK_FORMAT_D32_SFLOAT = 126,
1382
VK_FORMAT_S8_UINT = 127,
1383
VK_FORMAT_D16_UNORM_S8_UINT = 128,
1384
VK_FORMAT_D24_UNORM_S8_UINT = 129,
1385
VK_FORMAT_D32_SFLOAT_S8_UINT = 130,
1386
VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131,
1387
VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132,
1388
VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133,
1389
VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134,
1390
VK_FORMAT_BC2_UNORM_BLOCK = 135,
1391
VK_FORMAT_BC2_SRGB_BLOCK = 136,
1392
VK_FORMAT_BC3_UNORM_BLOCK = 137,
1393
VK_FORMAT_BC3_SRGB_BLOCK = 138,
1394
VK_FORMAT_BC4_UNORM_BLOCK = 139,
1395
VK_FORMAT_BC4_SNORM_BLOCK = 140,
1396
VK_FORMAT_BC5_UNORM_BLOCK = 141,
1397
VK_FORMAT_BC5_SNORM_BLOCK = 142,
1398
VK_FORMAT_BC6H_UFLOAT_BLOCK = 143,
1399
VK_FORMAT_BC6H_SFLOAT_BLOCK = 144,
1400
VK_FORMAT_BC7_UNORM_BLOCK = 145,
1401
VK_FORMAT_BC7_SRGB_BLOCK = 146,
1402
VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147,
1403
VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148,
1404
VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149,
1405
VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150,
1406
VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151,
1407
VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152,
1408
VK_FORMAT_EAC_R11_UNORM_BLOCK = 153,
1409
VK_FORMAT_EAC_R11_SNORM_BLOCK = 154,
1410
VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155,
1411
VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156,
1412
VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157,
1413
VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158,
1414
VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159,
1415
VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160,
1416
VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161,
1417
VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162,
1418
VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163,
1419
VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164,
1420
VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165,
1421
VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166,
1422
VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167,
1423
VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168,
1424
VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169,
1425
VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170,
1426
VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171,
1427
VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172,
1428
VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173,
1429
VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174,
1430
VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175,
1431
VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176,
1432
VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177,
1433
VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178,
1434
VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179,
1435
VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180,
1436
VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181,
1437
VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182,
1438
VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183,
1439
VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184,
1440
VK_FORMAT_G8B8G8R8_422_UNORM = 1000156000,
1441
VK_FORMAT_B8G8R8G8_422_UNORM = 1000156001,
1442
VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM = 1000156002,
1443
VK_FORMAT_G8_B8R8_2PLANE_420_UNORM = 1000156003,
1444
VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM = 1000156004,
1445
VK_FORMAT_G8_B8R8_2PLANE_422_UNORM = 1000156005,
1446
VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM = 1000156006,
1447
VK_FORMAT_R10X6_UNORM_PACK16 = 1000156007,
1448
VK_FORMAT_R10X6G10X6_UNORM_2PACK16 = 1000156008,
1449
VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 = 1000156009,
1450
VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 = 1000156010,
1451
VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 = 1000156011,
1452
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 = 1000156012,
1453
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 = 1000156013,
1454
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 = 1000156014,
1455
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 = 1000156015,
1456
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 = 1000156016,
1457
VK_FORMAT_R12X4_UNORM_PACK16 = 1000156017,
1458
VK_FORMAT_R12X4G12X4_UNORM_2PACK16 = 1000156018,
1459
VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 = 1000156019,
1460
VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 = 1000156020,
1461
VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 = 1000156021,
1462
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 = 1000156022,
1463
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 = 1000156023,
1464
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 = 1000156024,
1465
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 = 1000156025,
1466
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 = 1000156026,
1467
VK_FORMAT_G16B16G16R16_422_UNORM = 1000156027,
1468
VK_FORMAT_B16G16R16G16_422_UNORM = 1000156028,
1469
VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM = 1000156029,
1470
VK_FORMAT_G16_B16R16_2PLANE_420_UNORM = 1000156030,
1471
VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM = 1000156031,
1472
VK_FORMAT_G16_B16R16_2PLANE_422_UNORM = 1000156032,
1473
VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM = 1000156033,
1474
VK_FORMAT_G8_B8R8_2PLANE_444_UNORM = 1000330000,
1475
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16 = 1000330001,
1476
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16 = 1000330002,
1477
VK_FORMAT_G16_B16R16_2PLANE_444_UNORM = 1000330003,
1478
VK_FORMAT_A4R4G4B4_UNORM_PACK16 = 1000340000,
1479
VK_FORMAT_A4B4G4R4_UNORM_PACK16 = 1000340001,
1480
VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK = 1000066000,
1481
VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK = 1000066001,
1482
VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK = 1000066002,
1483
VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK = 1000066003,
1484
VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK = 1000066004,
1485
VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK = 1000066005,
1486
VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK = 1000066006,
1487
VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK = 1000066007,
1488
VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK = 1000066008,
1489
VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK = 1000066009,
1490
VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK = 1000066010,
1491
VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK = 1000066011,
1492
VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK = 1000066012,
1493
VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK = 1000066013,
1494
VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000,
1495
VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001,
1496
VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002,
1497
VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003,
1498
VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004,
1499
VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005,
1500
VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006,
1501
VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007,
1502
VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK,
1503
VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK,
1504
VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK,
1505
VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK,
1506
VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK,
1507
VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK,
1508
VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK,
1509
VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK,
1510
VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK,
1511
VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK,
1512
VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK,
1513
VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK,
1514
VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK,
1515
VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK,
1516
VK_FORMAT_G8B8G8R8_422_UNORM_KHR = VK_FORMAT_G8B8G8R8_422_UNORM,
1517
VK_FORMAT_B8G8R8G8_422_UNORM_KHR = VK_FORMAT_B8G8R8G8_422_UNORM,
1518
VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,
1519
VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM,
1520
VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM,
1521
VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM,
1522
VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM,
1523
VK_FORMAT_R10X6_UNORM_PACK16_KHR = VK_FORMAT_R10X6_UNORM_PACK16,
1524
VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR = VK_FORMAT_R10X6G10X6_UNORM_2PACK16,
1525
VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,
1526
VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,
1527
VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,
1528
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,
1529
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,
1530
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,
1531
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,
1532
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,
1533
VK_FORMAT_R12X4_UNORM_PACK16_KHR = VK_FORMAT_R12X4_UNORM_PACK16,
1534
VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR = VK_FORMAT_R12X4G12X4_UNORM_2PACK16,
1535
VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16,
1536
VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,
1537
VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,
1538
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,
1539
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,
1540
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,
1541
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,
1542
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,
1543
VK_FORMAT_G16B16G16R16_422_UNORM_KHR = VK_FORMAT_G16B16G16R16_422_UNORM,
1544
VK_FORMAT_B16G16R16G16_422_UNORM_KHR = VK_FORMAT_B16G16R16G16_422_UNORM,
1545
VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM,
1546
VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM,
1547
VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM,
1548
VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM,
1549
VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM,
1550
VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT = VK_FORMAT_G8_B8R8_2PLANE_444_UNORM,
1551
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16,
1552
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16,
1553
VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT = VK_FORMAT_G16_B16R16_2PLANE_444_UNORM,
1554
VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT = VK_FORMAT_A4R4G4B4_UNORM_PACK16,
1555
VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT = VK_FORMAT_A4B4G4R4_UNORM_PACK16,
1556
VK_FORMAT_MAX_ENUM = 0x7FFFFFFF
1559
typedef enum VkImageTiling {
1560
VK_IMAGE_TILING_OPTIMAL = 0,
1561
VK_IMAGE_TILING_LINEAR = 1,
1562
VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT = 1000158000,
1563
VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF
1566
typedef enum VkImageType {
1567
VK_IMAGE_TYPE_1D = 0,
1568
VK_IMAGE_TYPE_2D = 1,
1569
VK_IMAGE_TYPE_3D = 2,
1570
VK_IMAGE_TYPE_MAX_ENUM = 0x7FFFFFFF
1573
typedef enum VkPhysicalDeviceType {
1574
VK_PHYSICAL_DEVICE_TYPE_OTHER = 0,
1575
VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1,
1576
VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2,
1577
VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3,
1578
VK_PHYSICAL_DEVICE_TYPE_CPU = 4,
1579
VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF
1580
} VkPhysicalDeviceType;
1582
typedef enum VkQueryType {
1583
VK_QUERY_TYPE_OCCLUSION = 0,
1584
VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,
1585
VK_QUERY_TYPE_TIMESTAMP = 2,
1586
#ifdef VK_ENABLE_BETA_EXTENSIONS
1587
VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR = 1000023000,
1589
VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004,
1590
VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR = 1000116000,
1591
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000150000,
1592
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150001,
1593
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000,
1594
VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL = 1000210000,
1595
#ifdef VK_ENABLE_BETA_EXTENSIONS
1596
VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR = 1000299000,
1598
VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT = 1000382000,
1599
VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF
1602
typedef enum VkSharingMode {
1603
VK_SHARING_MODE_EXCLUSIVE = 0,
1604
VK_SHARING_MODE_CONCURRENT = 1,
1605
VK_SHARING_MODE_MAX_ENUM = 0x7FFFFFFF
1608
typedef enum VkComponentSwizzle {
1609
VK_COMPONENT_SWIZZLE_IDENTITY = 0,
1610
VK_COMPONENT_SWIZZLE_ZERO = 1,
1611
VK_COMPONENT_SWIZZLE_ONE = 2,
1612
VK_COMPONENT_SWIZZLE_R = 3,
1613
VK_COMPONENT_SWIZZLE_G = 4,
1614
VK_COMPONENT_SWIZZLE_B = 5,
1615
VK_COMPONENT_SWIZZLE_A = 6,
1616
VK_COMPONENT_SWIZZLE_MAX_ENUM = 0x7FFFFFFF
1617
} VkComponentSwizzle;
1619
typedef enum VkImageViewType {
1620
VK_IMAGE_VIEW_TYPE_1D = 0,
1621
VK_IMAGE_VIEW_TYPE_2D = 1,
1622
VK_IMAGE_VIEW_TYPE_3D = 2,
1623
VK_IMAGE_VIEW_TYPE_CUBE = 3,
1624
VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4,
1625
VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5,
1626
VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6,
1627
VK_IMAGE_VIEW_TYPE_MAX_ENUM = 0x7FFFFFFF
1630
typedef enum VkBlendFactor {
1631
VK_BLEND_FACTOR_ZERO = 0,
1632
VK_BLEND_FACTOR_ONE = 1,
1633
VK_BLEND_FACTOR_SRC_COLOR = 2,
1634
VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3,
1635
VK_BLEND_FACTOR_DST_COLOR = 4,
1636
VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5,
1637
VK_BLEND_FACTOR_SRC_ALPHA = 6,
1638
VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7,
1639
VK_BLEND_FACTOR_DST_ALPHA = 8,
1640
VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9,
1641
VK_BLEND_FACTOR_CONSTANT_COLOR = 10,
1642
VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11,
1643
VK_BLEND_FACTOR_CONSTANT_ALPHA = 12,
1644
VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13,
1645
VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14,
1646
VK_BLEND_FACTOR_SRC1_COLOR = 15,
1647
VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16,
1648
VK_BLEND_FACTOR_SRC1_ALPHA = 17,
1649
VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18,
1650
VK_BLEND_FACTOR_MAX_ENUM = 0x7FFFFFFF
1653
typedef enum VkBlendOp {
1654
VK_BLEND_OP_ADD = 0,
1655
VK_BLEND_OP_SUBTRACT = 1,
1656
VK_BLEND_OP_REVERSE_SUBTRACT = 2,
1657
VK_BLEND_OP_MIN = 3,
1658
VK_BLEND_OP_MAX = 4,
1659
VK_BLEND_OP_ZERO_EXT = 1000148000,
1660
VK_BLEND_OP_SRC_EXT = 1000148001,
1661
VK_BLEND_OP_DST_EXT = 1000148002,
1662
VK_BLEND_OP_SRC_OVER_EXT = 1000148003,
1663
VK_BLEND_OP_DST_OVER_EXT = 1000148004,
1664
VK_BLEND_OP_SRC_IN_EXT = 1000148005,
1665
VK_BLEND_OP_DST_IN_EXT = 1000148006,
1666
VK_BLEND_OP_SRC_OUT_EXT = 1000148007,
1667
VK_BLEND_OP_DST_OUT_EXT = 1000148008,
1668
VK_BLEND_OP_SRC_ATOP_EXT = 1000148009,
1669
VK_BLEND_OP_DST_ATOP_EXT = 1000148010,
1670
VK_BLEND_OP_XOR_EXT = 1000148011,
1671
VK_BLEND_OP_MULTIPLY_EXT = 1000148012,
1672
VK_BLEND_OP_SCREEN_EXT = 1000148013,
1673
VK_BLEND_OP_OVERLAY_EXT = 1000148014,
1674
VK_BLEND_OP_DARKEN_EXT = 1000148015,
1675
VK_BLEND_OP_LIGHTEN_EXT = 1000148016,
1676
VK_BLEND_OP_COLORDODGE_EXT = 1000148017,
1677
VK_BLEND_OP_COLORBURN_EXT = 1000148018,
1678
VK_BLEND_OP_HARDLIGHT_EXT = 1000148019,
1679
VK_BLEND_OP_SOFTLIGHT_EXT = 1000148020,
1680
VK_BLEND_OP_DIFFERENCE_EXT = 1000148021,
1681
VK_BLEND_OP_EXCLUSION_EXT = 1000148022,
1682
VK_BLEND_OP_INVERT_EXT = 1000148023,
1683
VK_BLEND_OP_INVERT_RGB_EXT = 1000148024,
1684
VK_BLEND_OP_LINEARDODGE_EXT = 1000148025,
1685
VK_BLEND_OP_LINEARBURN_EXT = 1000148026,
1686
VK_BLEND_OP_VIVIDLIGHT_EXT = 1000148027,
1687
VK_BLEND_OP_LINEARLIGHT_EXT = 1000148028,
1688
VK_BLEND_OP_PINLIGHT_EXT = 1000148029,
1689
VK_BLEND_OP_HARDMIX_EXT = 1000148030,
1690
VK_BLEND_OP_HSL_HUE_EXT = 1000148031,
1691
VK_BLEND_OP_HSL_SATURATION_EXT = 1000148032,
1692
VK_BLEND_OP_HSL_COLOR_EXT = 1000148033,
1693
VK_BLEND_OP_HSL_LUMINOSITY_EXT = 1000148034,
1694
VK_BLEND_OP_PLUS_EXT = 1000148035,
1695
VK_BLEND_OP_PLUS_CLAMPED_EXT = 1000148036,
1696
VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT = 1000148037,
1697
VK_BLEND_OP_PLUS_DARKER_EXT = 1000148038,
1698
VK_BLEND_OP_MINUS_EXT = 1000148039,
1699
VK_BLEND_OP_MINUS_CLAMPED_EXT = 1000148040,
1700
VK_BLEND_OP_CONTRAST_EXT = 1000148041,
1701
VK_BLEND_OP_INVERT_OVG_EXT = 1000148042,
1702
VK_BLEND_OP_RED_EXT = 1000148043,
1703
VK_BLEND_OP_GREEN_EXT = 1000148044,
1704
VK_BLEND_OP_BLUE_EXT = 1000148045,
1705
VK_BLEND_OP_MAX_ENUM = 0x7FFFFFFF
1708
typedef enum VkCompareOp {
1709
VK_COMPARE_OP_NEVER = 0,
1710
VK_COMPARE_OP_LESS = 1,
1711
VK_COMPARE_OP_EQUAL = 2,
1712
VK_COMPARE_OP_LESS_OR_EQUAL = 3,
1713
VK_COMPARE_OP_GREATER = 4,
1714
VK_COMPARE_OP_NOT_EQUAL = 5,
1715
VK_COMPARE_OP_GREATER_OR_EQUAL = 6,
1716
VK_COMPARE_OP_ALWAYS = 7,
1717
VK_COMPARE_OP_MAX_ENUM = 0x7FFFFFFF
1720
typedef enum VkDynamicState {
1721
VK_DYNAMIC_STATE_VIEWPORT = 0,
1722
VK_DYNAMIC_STATE_SCISSOR = 1,
1723
VK_DYNAMIC_STATE_LINE_WIDTH = 2,
1724
VK_DYNAMIC_STATE_DEPTH_BIAS = 3,
1725
VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4,
1726
VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5,
1727
VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6,
1728
VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7,
1729
VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8,
1730
VK_DYNAMIC_STATE_CULL_MODE = 1000267000,
1731
VK_DYNAMIC_STATE_FRONT_FACE = 1000267001,
1732
VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY = 1000267002,
1733
VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT = 1000267003,
1734
VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT = 1000267004,
1735
VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE = 1000267005,
1736
VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE = 1000267006,
1737
VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE = 1000267007,
1738
VK_DYNAMIC_STATE_DEPTH_COMPARE_OP = 1000267008,
1739
VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE = 1000267009,
1740
VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE = 1000267010,
1741
VK_DYNAMIC_STATE_STENCIL_OP = 1000267011,
1742
VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE = 1000377001,
1743
VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE = 1000377002,
1744
VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE = 1000377004,
1745
VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000,
1746
VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000,
1747
VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT = 1000143000,
1748
VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR = 1000347000,
1749
VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV = 1000164004,
1750
VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV = 1000164006,
1751
VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV = 1000205001,
1752
VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR = 1000226000,
1753
VK_DYNAMIC_STATE_LINE_STIPPLE_EXT = 1000259000,
1754
VK_DYNAMIC_STATE_VERTEX_INPUT_EXT = 1000352000,
1755
VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT = 1000377000,
1756
VK_DYNAMIC_STATE_LOGIC_OP_EXT = 1000377003,
1757
VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT = 1000381000,
1758
VK_DYNAMIC_STATE_CULL_MODE_EXT = VK_DYNAMIC_STATE_CULL_MODE,
1759
VK_DYNAMIC_STATE_FRONT_FACE_EXT = VK_DYNAMIC_STATE_FRONT_FACE,
1760
VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY,
1761
VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT = VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT,
1762
VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT = VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT,
1763
VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT = VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE,
1764
VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE,
1765
VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE,
1766
VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT = VK_DYNAMIC_STATE_DEPTH_COMPARE_OP,
1767
VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE,
1768
VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE,
1769
VK_DYNAMIC_STATE_STENCIL_OP_EXT = VK_DYNAMIC_STATE_STENCIL_OP,
1770
VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT = VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE,
1771
VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE,
1772
VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT = VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE,
1773
VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF
1776
typedef enum VkFrontFace {
1777
VK_FRONT_FACE_COUNTER_CLOCKWISE = 0,
1778
VK_FRONT_FACE_CLOCKWISE = 1,
1779
VK_FRONT_FACE_MAX_ENUM = 0x7FFFFFFF
1782
typedef enum VkVertexInputRate {
1783
VK_VERTEX_INPUT_RATE_VERTEX = 0,
1784
VK_VERTEX_INPUT_RATE_INSTANCE = 1,
1785
VK_VERTEX_INPUT_RATE_MAX_ENUM = 0x7FFFFFFF
1786
} VkVertexInputRate;
1788
typedef enum VkPrimitiveTopology {
1789
VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0,
1790
VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1,
1791
VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2,
1792
VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3,
1793
VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4,
1794
VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5,
1795
VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6,
1796
VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7,
1797
VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8,
1798
VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9,
1799
VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10,
1800
VK_PRIMITIVE_TOPOLOGY_MAX_ENUM = 0x7FFFFFFF
1801
} VkPrimitiveTopology;
1803
typedef enum VkPolygonMode {
1804
VK_POLYGON_MODE_FILL = 0,
1805
VK_POLYGON_MODE_LINE = 1,
1806
VK_POLYGON_MODE_POINT = 2,
1807
VK_POLYGON_MODE_FILL_RECTANGLE_NV = 1000153000,
1808
VK_POLYGON_MODE_MAX_ENUM = 0x7FFFFFFF
1811
typedef enum VkStencilOp {
1812
VK_STENCIL_OP_KEEP = 0,
1813
VK_STENCIL_OP_ZERO = 1,
1814
VK_STENCIL_OP_REPLACE = 2,
1815
VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3,
1816
VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4,
1817
VK_STENCIL_OP_INVERT = 5,
1818
VK_STENCIL_OP_INCREMENT_AND_WRAP = 6,
1819
VK_STENCIL_OP_DECREMENT_AND_WRAP = 7,
1820
VK_STENCIL_OP_MAX_ENUM = 0x7FFFFFFF
1823
typedef enum VkLogicOp {
1824
VK_LOGIC_OP_CLEAR = 0,
1825
VK_LOGIC_OP_AND = 1,
1826
VK_LOGIC_OP_AND_REVERSE = 2,
1827
VK_LOGIC_OP_COPY = 3,
1828
VK_LOGIC_OP_AND_INVERTED = 4,
1829
VK_LOGIC_OP_NO_OP = 5,
1830
VK_LOGIC_OP_XOR = 6,
1832
VK_LOGIC_OP_NOR = 8,
1833
VK_LOGIC_OP_EQUIVALENT = 9,
1834
VK_LOGIC_OP_INVERT = 10,
1835
VK_LOGIC_OP_OR_REVERSE = 11,
1836
VK_LOGIC_OP_COPY_INVERTED = 12,
1837
VK_LOGIC_OP_OR_INVERTED = 13,
1838
VK_LOGIC_OP_NAND = 14,
1839
VK_LOGIC_OP_SET = 15,
1840
VK_LOGIC_OP_MAX_ENUM = 0x7FFFFFFF
1843
typedef enum VkBorderColor {
1844
VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0,
1845
VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1,
1846
VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2,
1847
VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3,
1848
VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4,
1849
VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5,
1850
VK_BORDER_COLOR_FLOAT_CUSTOM_EXT = 1000287003,
1851
VK_BORDER_COLOR_INT_CUSTOM_EXT = 1000287004,
1852
VK_BORDER_COLOR_MAX_ENUM = 0x7FFFFFFF
1855
typedef enum VkFilter {
1856
VK_FILTER_NEAREST = 0,
1857
VK_FILTER_LINEAR = 1,
1858
VK_FILTER_CUBIC_IMG = 1000015000,
1859
VK_FILTER_CUBIC_EXT = VK_FILTER_CUBIC_IMG,
1860
VK_FILTER_MAX_ENUM = 0x7FFFFFFF
1863
typedef enum VkSamplerAddressMode {
1864
VK_SAMPLER_ADDRESS_MODE_REPEAT = 0,
1865
VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1,
1866
VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2,
1867
VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3,
1868
VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4,
1869
VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE,
1870
VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF
1871
} VkSamplerAddressMode;
1873
typedef enum VkSamplerMipmapMode {
1874
VK_SAMPLER_MIPMAP_MODE_NEAREST = 0,
1875
VK_SAMPLER_MIPMAP_MODE_LINEAR = 1,
1876
VK_SAMPLER_MIPMAP_MODE_MAX_ENUM = 0x7FFFFFFF
1877
} VkSamplerMipmapMode;
1879
typedef enum VkDescriptorType {
1880
VK_DESCRIPTOR_TYPE_SAMPLER = 0,
1881
VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1,
1882
VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2,
1883
VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3,
1884
VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4,
1885
VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5,
1886
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6,
1887
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7,
1888
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8,
1889
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9,
1890
VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10,
1891
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK = 1000138000,
1892
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000,
1893
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
1894
VK_DESCRIPTOR_TYPE_MUTABLE_VALVE = 1000351000,
1895
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK,
1896
VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF
1899
typedef enum VkAttachmentLoadOp {
1900
VK_ATTACHMENT_LOAD_OP_LOAD = 0,
1901
VK_ATTACHMENT_LOAD_OP_CLEAR = 1,
1902
VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2,
1903
VK_ATTACHMENT_LOAD_OP_NONE_EXT = 1000400000,
1904
VK_ATTACHMENT_LOAD_OP_MAX_ENUM = 0x7FFFFFFF
1905
} VkAttachmentLoadOp;
1907
typedef enum VkAttachmentStoreOp {
1908
VK_ATTACHMENT_STORE_OP_STORE = 0,
1909
VK_ATTACHMENT_STORE_OP_DONT_CARE = 1,
1910
VK_ATTACHMENT_STORE_OP_NONE = 1000301000,
1911
VK_ATTACHMENT_STORE_OP_NONE_KHR = VK_ATTACHMENT_STORE_OP_NONE,
1912
VK_ATTACHMENT_STORE_OP_NONE_QCOM = VK_ATTACHMENT_STORE_OP_NONE,
1913
VK_ATTACHMENT_STORE_OP_NONE_EXT = VK_ATTACHMENT_STORE_OP_NONE,
1914
VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF
1915
} VkAttachmentStoreOp;
1917
typedef enum VkPipelineBindPoint {
1918
VK_PIPELINE_BIND_POINT_GRAPHICS = 0,
1919
VK_PIPELINE_BIND_POINT_COMPUTE = 1,
1920
VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR = 1000165000,
1921
VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI = 1000369003,
1922
VK_PIPELINE_BIND_POINT_RAY_TRACING_NV = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR,
1923
VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF
1924
} VkPipelineBindPoint;
1926
typedef enum VkCommandBufferLevel {
1927
VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0,
1928
VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1,
1929
VK_COMMAND_BUFFER_LEVEL_MAX_ENUM = 0x7FFFFFFF
1930
} VkCommandBufferLevel;
1932
typedef enum VkIndexType {
1933
VK_INDEX_TYPE_UINT16 = 0,
1934
VK_INDEX_TYPE_UINT32 = 1,
1935
VK_INDEX_TYPE_NONE_KHR = 1000165000,
1936
VK_INDEX_TYPE_UINT8_EXT = 1000265000,
1937
VK_INDEX_TYPE_NONE_NV = VK_INDEX_TYPE_NONE_KHR,
1938
VK_INDEX_TYPE_MAX_ENUM = 0x7FFFFFFF
1941
typedef enum VkSubpassContents {
1942
VK_SUBPASS_CONTENTS_INLINE = 0,
1943
VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1,
1944
VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF
1945
} VkSubpassContents;
1947
typedef enum VkAccessFlagBits {
1948
VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 0x00000001,
1949
VK_ACCESS_INDEX_READ_BIT = 0x00000002,
1950
VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004,
1951
VK_ACCESS_UNIFORM_READ_BIT = 0x00000008,
1952
VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 0x00000010,
1953
VK_ACCESS_SHADER_READ_BIT = 0x00000020,
1954
VK_ACCESS_SHADER_WRITE_BIT = 0x00000040,
1955
VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 0x00000080,
1956
VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100,
1957
VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200,
1958
VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400,
1959
VK_ACCESS_TRANSFER_READ_BIT = 0x00000800,
1960
VK_ACCESS_TRANSFER_WRITE_BIT = 0x00001000,
1961
VK_ACCESS_HOST_READ_BIT = 0x00002000,
1962
VK_ACCESS_HOST_WRITE_BIT = 0x00004000,
1963
VK_ACCESS_MEMORY_READ_BIT = 0x00008000,
1964
VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000,
1966
VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT = 0x02000000,
1967
VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = 0x04000000,
1968
VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = 0x08000000,
1969
VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT = 0x00100000,
1970
VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000,
1971
VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR = 0x00200000,
1972
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000,
1973
VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000,
1974
VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = 0x00800000,
1975
VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV = 0x00020000,
1976
VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV = 0x00040000,
1977
VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
1978
VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
1979
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
1980
VK_ACCESS_NONE_KHR = VK_ACCESS_NONE,
1981
VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1983
typedef VkFlags VkAccessFlags;
1985
typedef enum VkImageAspectFlagBits {
1986
VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001,
1987
VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002,
1988
VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004,
1989
VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008,
1990
VK_IMAGE_ASPECT_PLANE_0_BIT = 0x00000010,
1991
VK_IMAGE_ASPECT_PLANE_1_BIT = 0x00000020,
1992
VK_IMAGE_ASPECT_PLANE_2_BIT = 0x00000040,
1993
VK_IMAGE_ASPECT_NONE = 0,
1994
VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT = 0x00000080,
1995
VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT = 0x00000100,
1996
VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT = 0x00000200,
1997
VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT = 0x00000400,
1998
VK_IMAGE_ASPECT_PLANE_0_BIT_KHR = VK_IMAGE_ASPECT_PLANE_0_BIT,
1999
VK_IMAGE_ASPECT_PLANE_1_BIT_KHR = VK_IMAGE_ASPECT_PLANE_1_BIT,
2000
VK_IMAGE_ASPECT_PLANE_2_BIT_KHR = VK_IMAGE_ASPECT_PLANE_2_BIT,
2001
VK_IMAGE_ASPECT_NONE_KHR = VK_IMAGE_ASPECT_NONE,
2002
VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2003
} VkImageAspectFlagBits;
2004
typedef VkFlags VkImageAspectFlags;
2006
typedef enum VkFormatFeatureFlagBits {
2007
VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 0x00000001,
2008
VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 0x00000002,
2009
VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004,
2010
VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008,
2011
VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 0x00000010,
2012
VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020,
2013
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 0x00000040,
2014
VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 0x00000080,
2015
VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100,
2016
VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200,
2017
VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400,
2018
VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800,
2019
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000,
2020
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT = 0x00004000,
2021
VK_FORMAT_FEATURE_TRANSFER_DST_BIT = 0x00008000,
2022
VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT = 0x00020000,
2023
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT = 0x00040000,
2024
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT = 0x00080000,
2025
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT = 0x00100000,
2026
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT = 0x00200000,
2027
VK_FORMAT_FEATURE_DISJOINT_BIT = 0x00400000,
2028
VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT = 0x00800000,
2029
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT = 0x00010000,
2030
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,
2031
#ifdef VK_ENABLE_BETA_EXTENSIONS
2032
VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR = 0x02000000,
2034
#ifdef VK_ENABLE_BETA_EXTENSIONS
2035
VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR = 0x04000000,
2037
VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR = 0x20000000,
2038
VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x01000000,
2039
VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x40000000,
2040
#ifdef VK_ENABLE_BETA_EXTENSIONS
2041
VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR = 0x08000000,
2043
#ifdef VK_ENABLE_BETA_EXTENSIONS
2044
VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR = 0x10000000,
2046
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
2047
VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
2048
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
2049
VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,
2050
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,
2051
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,
2052
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,
2053
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,
2054
VK_FORMAT_FEATURE_DISJOINT_BIT_KHR = VK_FORMAT_FEATURE_DISJOINT_BIT,
2055
VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
2056
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
2057
VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2058
} VkFormatFeatureFlagBits;
2059
typedef VkFlags VkFormatFeatureFlags;
2061
typedef enum VkImageCreateFlagBits {
2062
VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 0x00000001,
2063
VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,
2064
VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 0x00000004,
2065
VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 0x00000008,
2066
VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 0x00000010,
2067
VK_IMAGE_CREATE_ALIAS_BIT = 0x00000400,
2068
VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT = 0x00000040,
2069
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT = 0x00000020,
2070
VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT = 0x00000080,
2071
VK_IMAGE_CREATE_EXTENDED_USAGE_BIT = 0x00000100,
2072
VK_IMAGE_CREATE_PROTECTED_BIT = 0x00000800,
2073
VK_IMAGE_CREATE_DISJOINT_BIT = 0x00000200,
2074
VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV = 0x00002000,
2075
VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT = 0x00001000,
2076
VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT = 0x00004000,
2077
VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT = 0x00020000,
2078
VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM = 0x00008000,
2079
VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,
2080
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,
2081
VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,
2082
VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,
2083
VK_IMAGE_CREATE_DISJOINT_BIT_KHR = VK_IMAGE_CREATE_DISJOINT_BIT,
2084
VK_IMAGE_CREATE_ALIAS_BIT_KHR = VK_IMAGE_CREATE_ALIAS_BIT,
2085
VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2086
} VkImageCreateFlagBits;
2087
typedef VkFlags VkImageCreateFlags;
2089
typedef enum VkSampleCountFlagBits {
2090
VK_SAMPLE_COUNT_1_BIT = 0x00000001,
2091
VK_SAMPLE_COUNT_2_BIT = 0x00000002,
2092
VK_SAMPLE_COUNT_4_BIT = 0x00000004,
2093
VK_SAMPLE_COUNT_8_BIT = 0x00000008,
2094
VK_SAMPLE_COUNT_16_BIT = 0x00000010,
2095
VK_SAMPLE_COUNT_32_BIT = 0x00000020,
2096
VK_SAMPLE_COUNT_64_BIT = 0x00000040,
2097
VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2098
} VkSampleCountFlagBits;
2099
typedef VkFlags VkSampleCountFlags;
2101
typedef enum VkImageUsageFlagBits {
2102
VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 0x00000001,
2103
VK_IMAGE_USAGE_TRANSFER_DST_BIT = 0x00000002,
2104
VK_IMAGE_USAGE_SAMPLED_BIT = 0x00000004,
2105
VK_IMAGE_USAGE_STORAGE_BIT = 0x00000008,
2106
VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 0x00000010,
2107
VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020,
2108
VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040,
2109
VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080,
2110
#ifdef VK_ENABLE_BETA_EXTENSIONS
2111
VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR = 0x00000400,
2113
#ifdef VK_ENABLE_BETA_EXTENSIONS
2114
VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR = 0x00000800,
2116
#ifdef VK_ENABLE_BETA_EXTENSIONS
2117
VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR = 0x00001000,
2119
VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x00000200,
2120
VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00000100,
2121
#ifdef VK_ENABLE_BETA_EXTENSIONS
2122
VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR = 0x00002000,
2124
#ifdef VK_ENABLE_BETA_EXTENSIONS
2125
VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR = 0x00004000,
2127
#ifdef VK_ENABLE_BETA_EXTENSIONS
2128
VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR = 0x00008000,
2130
VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI = 0x00040000,
2131
VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
2132
VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2133
} VkImageUsageFlagBits;
2134
typedef VkFlags VkImageUsageFlags;
2136
typedef enum VkInstanceCreateFlagBits {
2137
VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR = 0x00000001,
2138
VK_INSTANCE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2139
} VkInstanceCreateFlagBits;
2140
typedef VkFlags VkInstanceCreateFlags;
2142
typedef enum VkMemoryHeapFlagBits {
2143
VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 0x00000001,
2144
VK_MEMORY_HEAP_MULTI_INSTANCE_BIT = 0x00000002,
2145
VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT,
2146
VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2147
} VkMemoryHeapFlagBits;
2148
typedef VkFlags VkMemoryHeapFlags;
2150
typedef enum VkMemoryPropertyFlagBits {
2151
VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001,
2152
VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002,
2153
VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004,
2154
VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008,
2155
VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010,
2156
VK_MEMORY_PROPERTY_PROTECTED_BIT = 0x00000020,
2157
VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD = 0x00000040,
2158
VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD = 0x00000080,
2159
VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV = 0x00000100,
2160
VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2161
} VkMemoryPropertyFlagBits;
2162
typedef VkFlags VkMemoryPropertyFlags;
2164
typedef enum VkQueueFlagBits {
2165
VK_QUEUE_GRAPHICS_BIT = 0x00000001,
2166
VK_QUEUE_COMPUTE_BIT = 0x00000002,
2167
VK_QUEUE_TRANSFER_BIT = 0x00000004,
2168
VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008,
2169
VK_QUEUE_PROTECTED_BIT = 0x00000010,
2170
#ifdef VK_ENABLE_BETA_EXTENSIONS
2171
VK_QUEUE_VIDEO_DECODE_BIT_KHR = 0x00000020,
2173
#ifdef VK_ENABLE_BETA_EXTENSIONS
2174
VK_QUEUE_VIDEO_ENCODE_BIT_KHR = 0x00000040,
2176
VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2178
typedef VkFlags VkQueueFlags;
2179
typedef VkFlags VkDeviceCreateFlags;
2181
typedef enum VkDeviceQueueCreateFlagBits {
2182
VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT = 0x00000001,
2183
VK_DEVICE_QUEUE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2184
} VkDeviceQueueCreateFlagBits;
2185
typedef VkFlags VkDeviceQueueCreateFlags;
2187
typedef enum VkPipelineStageFlagBits {
2188
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 0x00000001,
2189
VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 0x00000002,
2190
VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 0x00000004,
2191
VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 0x00000008,
2192
VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010,
2193
VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020,
2194
VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 0x00000040,
2195
VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 0x00000080,
2196
VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 0x00000100,
2197
VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 0x00000200,
2198
VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400,
2199
VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 0x00000800,
2200
VK_PIPELINE_STAGE_TRANSFER_BIT = 0x00001000,
2201
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 0x00002000,
2202
VK_PIPELINE_STAGE_HOST_BIT = 0x00004000,
2203
VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000,
2204
VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,
2205
VK_PIPELINE_STAGE_NONE = 0,
2206
VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT = 0x01000000,
2207
VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000,
2208
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR = 0x02000000,
2209
VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR = 0x00200000,
2210
VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV = 0x00080000,
2211
VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV = 0x00100000,
2212
VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT = 0x00800000,
2213
VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00400000,
2214
VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV = 0x00020000,
2215
VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
2216
VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
2217
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
2218
VK_PIPELINE_STAGE_NONE_KHR = VK_PIPELINE_STAGE_NONE,
2219
VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2220
} VkPipelineStageFlagBits;
2221
typedef VkFlags VkPipelineStageFlags;
2222
typedef VkFlags VkMemoryMapFlags;
2224
typedef enum VkSparseMemoryBindFlagBits {
2225
VK_SPARSE_MEMORY_BIND_METADATA_BIT = 0x00000001,
2226
VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2227
} VkSparseMemoryBindFlagBits;
2228
typedef VkFlags VkSparseMemoryBindFlags;
2230
typedef enum VkSparseImageFormatFlagBits {
2231
VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 0x00000001,
2232
VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 0x00000002,
2233
VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 0x00000004,
2234
VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2235
} VkSparseImageFormatFlagBits;
2236
typedef VkFlags VkSparseImageFormatFlags;
2238
typedef enum VkFenceCreateFlagBits {
2239
VK_FENCE_CREATE_SIGNALED_BIT = 0x00000001,
2240
VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2241
} VkFenceCreateFlagBits;
2242
typedef VkFlags VkFenceCreateFlags;
2243
typedef VkFlags VkSemaphoreCreateFlags;
2245
typedef enum VkEventCreateFlagBits {
2246
VK_EVENT_CREATE_DEVICE_ONLY_BIT = 0x00000001,
2247
VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR = VK_EVENT_CREATE_DEVICE_ONLY_BIT,
2248
VK_EVENT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2249
} VkEventCreateFlagBits;
2250
typedef VkFlags VkEventCreateFlags;
2252
typedef enum VkQueryPipelineStatisticFlagBits {
2253
VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 0x00000001,
2254
VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 0x00000002,
2255
VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 0x00000004,
2256
VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 0x00000008,
2257
VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 0x00000010,
2258
VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 0x00000020,
2259
VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 0x00000040,
2260
VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 0x00000080,
2261
VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 0x00000100,
2262
VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 0x00000200,
2263
VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400,
2264
VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2265
} VkQueryPipelineStatisticFlagBits;
2266
typedef VkFlags VkQueryPipelineStatisticFlags;
2267
typedef VkFlags VkQueryPoolCreateFlags;
2269
typedef enum VkQueryResultFlagBits {
2270
VK_QUERY_RESULT_64_BIT = 0x00000001,
2271
VK_QUERY_RESULT_WAIT_BIT = 0x00000002,
2272
VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004,
2273
VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008,
2274
#ifdef VK_ENABLE_BETA_EXTENSIONS
2275
VK_QUERY_RESULT_WITH_STATUS_BIT_KHR = 0x00000010,
2277
VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2278
} VkQueryResultFlagBits;
2279
typedef VkFlags VkQueryResultFlags;
2281
typedef enum VkBufferCreateFlagBits {
2282
VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 0x00000001,
2283
VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,
2284
VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004,
2285
VK_BUFFER_CREATE_PROTECTED_BIT = 0x00000008,
2286
VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT = 0x00000010,
2287
VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT,
2288
VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT,
2289
VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2290
} VkBufferCreateFlagBits;
2291
typedef VkFlags VkBufferCreateFlags;
2293
typedef enum VkBufferUsageFlagBits {
2294
VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 0x00000001,
2295
VK_BUFFER_USAGE_TRANSFER_DST_BIT = 0x00000002,
2296
VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000004,
2297
VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 0x00000008,
2298
VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 0x00000010,
2299
VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 0x00000020,
2300
VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040,
2301
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080,
2302
VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100,
2303
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT = 0x00020000,
2304
#ifdef VK_ENABLE_BETA_EXTENSIONS
2305
VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR = 0x00002000,
2307
#ifdef VK_ENABLE_BETA_EXTENSIONS
2308
VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR = 0x00004000,
2310
VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT = 0x00000800,
2311
VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT = 0x00001000,
2312
VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00000200,
2313
VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR = 0x00080000,
2314
VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR = 0x00100000,
2315
VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR = 0x00000400,
2316
#ifdef VK_ENABLE_BETA_EXTENSIONS
2317
VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR = 0x00008000,
2319
#ifdef VK_ENABLE_BETA_EXTENSIONS
2320
VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR = 0x00010000,
2322
VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR,
2323
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
2324
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
2325
VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2326
} VkBufferUsageFlagBits;
2327
typedef VkFlags VkBufferUsageFlags;
2328
typedef VkFlags VkBufferViewCreateFlags;
2330
typedef enum VkImageViewCreateFlagBits {
2331
VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT = 0x00000001,
2332
VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT = 0x00000002,
2333
VK_IMAGE_VIEW_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2334
} VkImageViewCreateFlagBits;
2335
typedef VkFlags VkImageViewCreateFlags;
2336
typedef VkFlags VkShaderModuleCreateFlags;
2338
typedef enum VkPipelineCacheCreateFlagBits {
2339
VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT = 0x00000001,
2340
VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT = VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT,
2341
VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2342
} VkPipelineCacheCreateFlagBits;
2343
typedef VkFlags VkPipelineCacheCreateFlags;
2345
typedef enum VkColorComponentFlagBits {
2346
VK_COLOR_COMPONENT_R_BIT = 0x00000001,
2347
VK_COLOR_COMPONENT_G_BIT = 0x00000002,
2348
VK_COLOR_COMPONENT_B_BIT = 0x00000004,
2349
VK_COLOR_COMPONENT_A_BIT = 0x00000008,
2350
VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2351
} VkColorComponentFlagBits;
2352
typedef VkFlags VkColorComponentFlags;
2354
typedef enum VkPipelineCreateFlagBits {
2355
VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001,
2356
VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002,
2357
VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,
2358
VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = 0x00000008,
2359
VK_PIPELINE_CREATE_DISPATCH_BASE_BIT = 0x00000010,
2360
VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT = 0x00000100,
2361
VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT = 0x00000200,
2362
VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00200000,
2363
VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = 0x00400000,
2364
VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR = 0x00004000,
2365
VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR = 0x00008000,
2366
VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR = 0x00010000,
2367
VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR = 0x00020000,
2368
VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR = 0x00001000,
2369
VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR = 0x00002000,
2370
VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR = 0x00080000,
2371
VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV = 0x00000020,
2372
VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR = 0x00000040,
2373
VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR = 0x00000080,
2374
VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV = 0x00040000,
2375
VK_PIPELINE_CREATE_LIBRARY_BIT_KHR = 0x00000800,
2376
VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT = 0x00800000,
2377
VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT = 0x00000400,
2378
VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV = 0x00100000,
2379
VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
2380
VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
2381
VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT,
2382
VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
2383
VK_PIPELINE_CREATE_DISPATCH_BASE_KHR = VK_PIPELINE_CREATE_DISPATCH_BASE,
2384
VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT = VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT,
2385
VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT = VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT,
2386
VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2387
} VkPipelineCreateFlagBits;
2388
typedef VkFlags VkPipelineCreateFlags;
2390
typedef enum VkPipelineShaderStageCreateFlagBits {
2391
VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT = 0x00000001,
2392
VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT = 0x00000002,
2393
VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT = VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT,
2394
VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT = VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT,
2395
VK_PIPELINE_SHADER_STAGE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2396
} VkPipelineShaderStageCreateFlagBits;
2397
typedef VkFlags VkPipelineShaderStageCreateFlags;
2399
typedef enum VkShaderStageFlagBits {
2400
VK_SHADER_STAGE_VERTEX_BIT = 0x00000001,
2401
VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002,
2402
VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004,
2403
VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,
2404
VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,
2405
VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,
2406
VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F,
2407
VK_SHADER_STAGE_ALL = 0x7FFFFFFF,
2408
VK_SHADER_STAGE_RAYGEN_BIT_KHR = 0x00000100,
2409
VK_SHADER_STAGE_ANY_HIT_BIT_KHR = 0x00000200,
2410
VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR = 0x00000400,
2411
VK_SHADER_STAGE_MISS_BIT_KHR = 0x00000800,
2412
VK_SHADER_STAGE_INTERSECTION_BIT_KHR = 0x00001000,
2413
VK_SHADER_STAGE_CALLABLE_BIT_KHR = 0x00002000,
2414
VK_SHADER_STAGE_TASK_BIT_NV = 0x00000040,
2415
VK_SHADER_STAGE_MESH_BIT_NV = 0x00000080,
2416
VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI = 0x00004000,
2417
VK_SHADER_STAGE_RAYGEN_BIT_NV = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
2418
VK_SHADER_STAGE_ANY_HIT_BIT_NV = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
2419
VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
2420
VK_SHADER_STAGE_MISS_BIT_NV = VK_SHADER_STAGE_MISS_BIT_KHR,
2421
VK_SHADER_STAGE_INTERSECTION_BIT_NV = VK_SHADER_STAGE_INTERSECTION_BIT_KHR,
2422
VK_SHADER_STAGE_CALLABLE_BIT_NV = VK_SHADER_STAGE_CALLABLE_BIT_KHR,
2423
VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2424
} VkShaderStageFlagBits;
2426
typedef enum VkCullModeFlagBits {
2427
VK_CULL_MODE_NONE = 0,
2428
VK_CULL_MODE_FRONT_BIT = 0x00000001,
2429
VK_CULL_MODE_BACK_BIT = 0x00000002,
2430
VK_CULL_MODE_FRONT_AND_BACK = 0x00000003,
2431
VK_CULL_MODE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2432
} VkCullModeFlagBits;
2433
typedef VkFlags VkCullModeFlags;
2434
typedef VkFlags VkPipelineVertexInputStateCreateFlags;
2435
typedef VkFlags VkPipelineInputAssemblyStateCreateFlags;
2436
typedef VkFlags VkPipelineTessellationStateCreateFlags;
2437
typedef VkFlags VkPipelineViewportStateCreateFlags;
2438
typedef VkFlags VkPipelineRasterizationStateCreateFlags;
2439
typedef VkFlags VkPipelineMultisampleStateCreateFlags;
2441
typedef enum VkPipelineDepthStencilStateCreateFlagBits {
2442
VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM = 0x00000001,
2443
VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM = 0x00000002,
2444
VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2445
} VkPipelineDepthStencilStateCreateFlagBits;
2446
typedef VkFlags VkPipelineDepthStencilStateCreateFlags;
2448
typedef enum VkPipelineColorBlendStateCreateFlagBits {
2449
VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM = 0x00000001,
2450
VK_PIPELINE_COLOR_BLEND_STATE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2451
} VkPipelineColorBlendStateCreateFlagBits;
2452
typedef VkFlags VkPipelineColorBlendStateCreateFlags;
2453
typedef VkFlags VkPipelineDynamicStateCreateFlags;
2455
typedef enum VkPipelineLayoutCreateFlagBits {
2456
VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT = 0x00000002,
2457
VK_PIPELINE_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2458
} VkPipelineLayoutCreateFlagBits;
2459
typedef VkFlags VkPipelineLayoutCreateFlags;
2460
typedef VkFlags VkShaderStageFlags;
2462
typedef enum VkSamplerCreateFlagBits {
2463
VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT = 0x00000001,
2464
VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT = 0x00000002,
2465
VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2466
} VkSamplerCreateFlagBits;
2467
typedef VkFlags VkSamplerCreateFlags;
2469
typedef enum VkDescriptorPoolCreateFlagBits {
2470
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001,
2471
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT = 0x00000002,
2472
VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE = 0x00000004,
2473
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT,
2474
VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2475
} VkDescriptorPoolCreateFlagBits;
2476
typedef VkFlags VkDescriptorPoolCreateFlags;
2477
typedef VkFlags VkDescriptorPoolResetFlags;
2479
typedef enum VkDescriptorSetLayoutCreateFlagBits {
2480
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT = 0x00000002,
2481
VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001,
2482
VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE = 0x00000004,
2483
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT,
2484
VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2485
} VkDescriptorSetLayoutCreateFlagBits;
2486
typedef VkFlags VkDescriptorSetLayoutCreateFlags;
2488
typedef enum VkAttachmentDescriptionFlagBits {
2489
VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 0x00000001,
2490
VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2491
} VkAttachmentDescriptionFlagBits;
2492
typedef VkFlags VkAttachmentDescriptionFlags;
2494
typedef enum VkDependencyFlagBits {
2495
VK_DEPENDENCY_BY_REGION_BIT = 0x00000001,
2496
VK_DEPENDENCY_DEVICE_GROUP_BIT = 0x00000004,
2497
VK_DEPENDENCY_VIEW_LOCAL_BIT = 0x00000002,
2498
VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR = VK_DEPENDENCY_VIEW_LOCAL_BIT,
2499
VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR = VK_DEPENDENCY_DEVICE_GROUP_BIT,
2500
VK_DEPENDENCY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2501
} VkDependencyFlagBits;
2502
typedef VkFlags VkDependencyFlags;
2504
typedef enum VkFramebufferCreateFlagBits {
2505
VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT = 0x00000001,
2506
VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT,
2507
VK_FRAMEBUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2508
} VkFramebufferCreateFlagBits;
2509
typedef VkFlags VkFramebufferCreateFlags;
2511
typedef enum VkRenderPassCreateFlagBits {
2512
VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM = 0x00000002,
2513
VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2514
} VkRenderPassCreateFlagBits;
2515
typedef VkFlags VkRenderPassCreateFlags;
2517
typedef enum VkSubpassDescriptionFlagBits {
2518
VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX = 0x00000001,
2519
VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX = 0x00000002,
2520
VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM = 0x00000004,
2521
VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM = 0x00000008,
2522
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM = 0x00000010,
2523
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM = 0x00000020,
2524
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM = 0x00000040,
2525
VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2526
} VkSubpassDescriptionFlagBits;
2527
typedef VkFlags VkSubpassDescriptionFlags;
2529
typedef enum VkCommandPoolCreateFlagBits {
2530
VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 0x00000001,
2531
VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 0x00000002,
2532
VK_COMMAND_POOL_CREATE_PROTECTED_BIT = 0x00000004,
2533
VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2534
} VkCommandPoolCreateFlagBits;
2535
typedef VkFlags VkCommandPoolCreateFlags;
2537
typedef enum VkCommandPoolResetFlagBits {
2538
VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001,
2539
VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2540
} VkCommandPoolResetFlagBits;
2541
typedef VkFlags VkCommandPoolResetFlags;
2543
typedef enum VkCommandBufferUsageFlagBits {
2544
VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001,
2545
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002,
2546
VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004,
2547
VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2548
} VkCommandBufferUsageFlagBits;
2549
typedef VkFlags VkCommandBufferUsageFlags;
2551
typedef enum VkQueryControlFlagBits {
2552
VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001,
2553
VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2554
} VkQueryControlFlagBits;
2555
typedef VkFlags VkQueryControlFlags;
2557
typedef enum VkCommandBufferResetFlagBits {
2558
VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001,
2559
VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2560
} VkCommandBufferResetFlagBits;
2561
typedef VkFlags VkCommandBufferResetFlags;
2563
typedef enum VkStencilFaceFlagBits {
2564
VK_STENCIL_FACE_FRONT_BIT = 0x00000001,
2565
VK_STENCIL_FACE_BACK_BIT = 0x00000002,
2566
VK_STENCIL_FACE_FRONT_AND_BACK = 0x00000003,
2567
VK_STENCIL_FRONT_AND_BACK = VK_STENCIL_FACE_FRONT_AND_BACK,
2568
VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
2569
} VkStencilFaceFlagBits;
2570
typedef VkFlags VkStencilFaceFlags;
2571
typedef struct VkExtent2D {
2576
typedef struct VkExtent3D {
2582
typedef struct VkOffset2D {
2587
typedef struct VkOffset3D {
2593
typedef struct VkRect2D {
2598
typedef struct VkBaseInStructure {
2599
VkStructureType sType;
2600
const struct VkBaseInStructure* pNext;
2601
} VkBaseInStructure;
2603
typedef struct VkBaseOutStructure {
2604
VkStructureType sType;
2605
struct VkBaseOutStructure* pNext;
2606
} VkBaseOutStructure;
2608
typedef struct VkBufferMemoryBarrier {
2609
VkStructureType sType;
2611
VkAccessFlags srcAccessMask;
2612
VkAccessFlags dstAccessMask;
2613
uint32_t srcQueueFamilyIndex;
2614
uint32_t dstQueueFamilyIndex;
2616
VkDeviceSize offset;
2618
} VkBufferMemoryBarrier;
2620
typedef struct VkDispatchIndirectCommand {
2624
} VkDispatchIndirectCommand;
2626
typedef struct VkDrawIndexedIndirectCommand {
2627
uint32_t indexCount;
2628
uint32_t instanceCount;
2629
uint32_t firstIndex;
2630
int32_t vertexOffset;
2631
uint32_t firstInstance;
2632
} VkDrawIndexedIndirectCommand;
2634
typedef struct VkDrawIndirectCommand {
2635
uint32_t vertexCount;
2636
uint32_t instanceCount;
2637
uint32_t firstVertex;
2638
uint32_t firstInstance;
2639
} VkDrawIndirectCommand;
2641
typedef struct VkImageSubresourceRange {
2642
VkImageAspectFlags aspectMask;
2643
uint32_t baseMipLevel;
2644
uint32_t levelCount;
2645
uint32_t baseArrayLayer;
2646
uint32_t layerCount;
2647
} VkImageSubresourceRange;
2649
typedef struct VkImageMemoryBarrier {
2650
VkStructureType sType;
2652
VkAccessFlags srcAccessMask;
2653
VkAccessFlags dstAccessMask;
2654
VkImageLayout oldLayout;
2655
VkImageLayout newLayout;
2656
uint32_t srcQueueFamilyIndex;
2657
uint32_t dstQueueFamilyIndex;
2659
VkImageSubresourceRange subresourceRange;
2660
} VkImageMemoryBarrier;
2662
typedef struct VkMemoryBarrier {
2663
VkStructureType sType;
2665
VkAccessFlags srcAccessMask;
2666
VkAccessFlags dstAccessMask;
2669
typedef struct VkPipelineCacheHeaderVersionOne {
2670
uint32_t headerSize;
2671
VkPipelineCacheHeaderVersion headerVersion;
2674
uint8_t pipelineCacheUUID[VK_UUID_SIZE];
2675
} VkPipelineCacheHeaderVersionOne;
2677
typedef void* (VKAPI_PTR *PFN_vkAllocationFunction)(
2681
VkSystemAllocationScope allocationScope);
2683
typedef void (VKAPI_PTR *PFN_vkFreeFunction)(
2687
typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)(
2690
VkInternalAllocationType allocationType,
2691
VkSystemAllocationScope allocationScope);
2693
typedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)(
2696
VkInternalAllocationType allocationType,
2697
VkSystemAllocationScope allocationScope);
2699
typedef void* (VKAPI_PTR *PFN_vkReallocationFunction)(
2704
VkSystemAllocationScope allocationScope);
2706
typedef void (VKAPI_PTR *PFN_vkVoidFunction)(void);
2707
typedef struct VkAllocationCallbacks {
2709
PFN_vkAllocationFunction pfnAllocation;
2710
PFN_vkReallocationFunction pfnReallocation;
2711
PFN_vkFreeFunction pfnFree;
2712
PFN_vkInternalAllocationNotification pfnInternalAllocation;
2713
PFN_vkInternalFreeNotification pfnInternalFree;
2714
} VkAllocationCallbacks;
2716
typedef struct VkApplicationInfo {
2717
VkStructureType sType;
2719
const char* pApplicationName;
2720
uint32_t applicationVersion;
2721
const char* pEngineName;
2722
uint32_t engineVersion;
2723
uint32_t apiVersion;
2724
} VkApplicationInfo;
2726
typedef struct VkFormatProperties {
2727
VkFormatFeatureFlags linearTilingFeatures;
2728
VkFormatFeatureFlags optimalTilingFeatures;
2729
VkFormatFeatureFlags bufferFeatures;
2730
} VkFormatProperties;
2732
typedef struct VkImageFormatProperties {
2733
VkExtent3D maxExtent;
2734
uint32_t maxMipLevels;
2735
uint32_t maxArrayLayers;
2736
VkSampleCountFlags sampleCounts;
2737
VkDeviceSize maxResourceSize;
2738
} VkImageFormatProperties;
2740
typedef struct VkInstanceCreateInfo {
2741
VkStructureType sType;
2743
VkInstanceCreateFlags flags;
2744
const VkApplicationInfo* pApplicationInfo;
2745
uint32_t enabledLayerCount;
2746
const char* const* ppEnabledLayerNames;
2747
uint32_t enabledExtensionCount;
2748
const char* const* ppEnabledExtensionNames;
2749
} VkInstanceCreateInfo;
2751
typedef struct VkMemoryHeap {
2753
VkMemoryHeapFlags flags;
2756
typedef struct VkMemoryType {
2757
VkMemoryPropertyFlags propertyFlags;
2761
typedef struct VkPhysicalDeviceFeatures {
2762
VkBool32 robustBufferAccess;
2763
VkBool32 fullDrawIndexUint32;
2764
VkBool32 imageCubeArray;
2765
VkBool32 independentBlend;
2766
VkBool32 geometryShader;
2767
VkBool32 tessellationShader;
2768
VkBool32 sampleRateShading;
2769
VkBool32 dualSrcBlend;
2771
VkBool32 multiDrawIndirect;
2772
VkBool32 drawIndirectFirstInstance;
2773
VkBool32 depthClamp;
2774
VkBool32 depthBiasClamp;
2775
VkBool32 fillModeNonSolid;
2776
VkBool32 depthBounds;
2778
VkBool32 largePoints;
2779
VkBool32 alphaToOne;
2780
VkBool32 multiViewport;
2781
VkBool32 samplerAnisotropy;
2782
VkBool32 textureCompressionETC2;
2783
VkBool32 textureCompressionASTC_LDR;
2784
VkBool32 textureCompressionBC;
2785
VkBool32 occlusionQueryPrecise;
2786
VkBool32 pipelineStatisticsQuery;
2787
VkBool32 vertexPipelineStoresAndAtomics;
2788
VkBool32 fragmentStoresAndAtomics;
2789
VkBool32 shaderTessellationAndGeometryPointSize;
2790
VkBool32 shaderImageGatherExtended;
2791
VkBool32 shaderStorageImageExtendedFormats;
2792
VkBool32 shaderStorageImageMultisample;
2793
VkBool32 shaderStorageImageReadWithoutFormat;
2794
VkBool32 shaderStorageImageWriteWithoutFormat;
2795
VkBool32 shaderUniformBufferArrayDynamicIndexing;
2796
VkBool32 shaderSampledImageArrayDynamicIndexing;
2797
VkBool32 shaderStorageBufferArrayDynamicIndexing;
2798
VkBool32 shaderStorageImageArrayDynamicIndexing;
2799
VkBool32 shaderClipDistance;
2800
VkBool32 shaderCullDistance;
2801
VkBool32 shaderFloat64;
2802
VkBool32 shaderInt64;
2803
VkBool32 shaderInt16;
2804
VkBool32 shaderResourceResidency;
2805
VkBool32 shaderResourceMinLod;
2806
VkBool32 sparseBinding;
2807
VkBool32 sparseResidencyBuffer;
2808
VkBool32 sparseResidencyImage2D;
2809
VkBool32 sparseResidencyImage3D;
2810
VkBool32 sparseResidency2Samples;
2811
VkBool32 sparseResidency4Samples;
2812
VkBool32 sparseResidency8Samples;
2813
VkBool32 sparseResidency16Samples;
2814
VkBool32 sparseResidencyAliased;
2815
VkBool32 variableMultisampleRate;
2816
VkBool32 inheritedQueries;
2817
} VkPhysicalDeviceFeatures;
2819
typedef struct VkPhysicalDeviceLimits {
2820
uint32_t maxImageDimension1D;
2821
uint32_t maxImageDimension2D;
2822
uint32_t maxImageDimension3D;
2823
uint32_t maxImageDimensionCube;
2824
uint32_t maxImageArrayLayers;
2825
uint32_t maxTexelBufferElements;
2826
uint32_t maxUniformBufferRange;
2827
uint32_t maxStorageBufferRange;
2828
uint32_t maxPushConstantsSize;
2829
uint32_t maxMemoryAllocationCount;
2830
uint32_t maxSamplerAllocationCount;
2831
VkDeviceSize bufferImageGranularity;
2832
VkDeviceSize sparseAddressSpaceSize;
2833
uint32_t maxBoundDescriptorSets;
2834
uint32_t maxPerStageDescriptorSamplers;
2835
uint32_t maxPerStageDescriptorUniformBuffers;
2836
uint32_t maxPerStageDescriptorStorageBuffers;
2837
uint32_t maxPerStageDescriptorSampledImages;
2838
uint32_t maxPerStageDescriptorStorageImages;
2839
uint32_t maxPerStageDescriptorInputAttachments;
2840
uint32_t maxPerStageResources;
2841
uint32_t maxDescriptorSetSamplers;
2842
uint32_t maxDescriptorSetUniformBuffers;
2843
uint32_t maxDescriptorSetUniformBuffersDynamic;
2844
uint32_t maxDescriptorSetStorageBuffers;
2845
uint32_t maxDescriptorSetStorageBuffersDynamic;
2846
uint32_t maxDescriptorSetSampledImages;
2847
uint32_t maxDescriptorSetStorageImages;
2848
uint32_t maxDescriptorSetInputAttachments;
2849
uint32_t maxVertexInputAttributes;
2850
uint32_t maxVertexInputBindings;
2851
uint32_t maxVertexInputAttributeOffset;
2852
uint32_t maxVertexInputBindingStride;
2853
uint32_t maxVertexOutputComponents;
2854
uint32_t maxTessellationGenerationLevel;
2855
uint32_t maxTessellationPatchSize;
2856
uint32_t maxTessellationControlPerVertexInputComponents;
2857
uint32_t maxTessellationControlPerVertexOutputComponents;
2858
uint32_t maxTessellationControlPerPatchOutputComponents;
2859
uint32_t maxTessellationControlTotalOutputComponents;
2860
uint32_t maxTessellationEvaluationInputComponents;
2861
uint32_t maxTessellationEvaluationOutputComponents;
2862
uint32_t maxGeometryShaderInvocations;
2863
uint32_t maxGeometryInputComponents;
2864
uint32_t maxGeometryOutputComponents;
2865
uint32_t maxGeometryOutputVertices;
2866
uint32_t maxGeometryTotalOutputComponents;
2867
uint32_t maxFragmentInputComponents;
2868
uint32_t maxFragmentOutputAttachments;
2869
uint32_t maxFragmentDualSrcAttachments;
2870
uint32_t maxFragmentCombinedOutputResources;
2871
uint32_t maxComputeSharedMemorySize;
2872
uint32_t maxComputeWorkGroupCount[3];
2873
uint32_t maxComputeWorkGroupInvocations;
2874
uint32_t maxComputeWorkGroupSize[3];
2875
uint32_t subPixelPrecisionBits;
2876
uint32_t subTexelPrecisionBits;
2877
uint32_t mipmapPrecisionBits;
2878
uint32_t maxDrawIndexedIndexValue;
2879
uint32_t maxDrawIndirectCount;
2880
float maxSamplerLodBias;
2881
float maxSamplerAnisotropy;
2882
uint32_t maxViewports;
2883
uint32_t maxViewportDimensions[2];
2884
float viewportBoundsRange[2];
2885
uint32_t viewportSubPixelBits;
2886
size_t minMemoryMapAlignment;
2887
VkDeviceSize minTexelBufferOffsetAlignment;
2888
VkDeviceSize minUniformBufferOffsetAlignment;
2889
VkDeviceSize minStorageBufferOffsetAlignment;
2890
int32_t minTexelOffset;
2891
uint32_t maxTexelOffset;
2892
int32_t minTexelGatherOffset;
2893
uint32_t maxTexelGatherOffset;
2894
float minInterpolationOffset;
2895
float maxInterpolationOffset;
2896
uint32_t subPixelInterpolationOffsetBits;
2897
uint32_t maxFramebufferWidth;
2898
uint32_t maxFramebufferHeight;
2899
uint32_t maxFramebufferLayers;
2900
VkSampleCountFlags framebufferColorSampleCounts;
2901
VkSampleCountFlags framebufferDepthSampleCounts;
2902
VkSampleCountFlags framebufferStencilSampleCounts;
2903
VkSampleCountFlags framebufferNoAttachmentsSampleCounts;
2904
uint32_t maxColorAttachments;
2905
VkSampleCountFlags sampledImageColorSampleCounts;
2906
VkSampleCountFlags sampledImageIntegerSampleCounts;
2907
VkSampleCountFlags sampledImageDepthSampleCounts;
2908
VkSampleCountFlags sampledImageStencilSampleCounts;
2909
VkSampleCountFlags storageImageSampleCounts;
2910
uint32_t maxSampleMaskWords;
2911
VkBool32 timestampComputeAndGraphics;
2912
float timestampPeriod;
2913
uint32_t maxClipDistances;
2914
uint32_t maxCullDistances;
2915
uint32_t maxCombinedClipAndCullDistances;
2916
uint32_t discreteQueuePriorities;
2917
float pointSizeRange[2];
2918
float lineWidthRange[2];
2919
float pointSizeGranularity;
2920
float lineWidthGranularity;
2921
VkBool32 strictLines;
2922
VkBool32 standardSampleLocations;
2923
VkDeviceSize optimalBufferCopyOffsetAlignment;
2924
VkDeviceSize optimalBufferCopyRowPitchAlignment;
2925
VkDeviceSize nonCoherentAtomSize;
2926
} VkPhysicalDeviceLimits;
2928
typedef struct VkPhysicalDeviceMemoryProperties {
2929
uint32_t memoryTypeCount;
2930
VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES];
2931
uint32_t memoryHeapCount;
2932
VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS];
2933
} VkPhysicalDeviceMemoryProperties;
2935
typedef struct VkPhysicalDeviceSparseProperties {
2936
VkBool32 residencyStandard2DBlockShape;
2937
VkBool32 residencyStandard2DMultisampleBlockShape;
2938
VkBool32 residencyStandard3DBlockShape;
2939
VkBool32 residencyAlignedMipSize;
2940
VkBool32 residencyNonResidentStrict;
2941
} VkPhysicalDeviceSparseProperties;
2943
typedef struct VkPhysicalDeviceProperties {
2944
uint32_t apiVersion;
2945
uint32_t driverVersion;
2948
VkPhysicalDeviceType deviceType;
2949
char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE];
2950
uint8_t pipelineCacheUUID[VK_UUID_SIZE];
2951
VkPhysicalDeviceLimits limits;
2952
VkPhysicalDeviceSparseProperties sparseProperties;
2953
} VkPhysicalDeviceProperties;
2955
typedef struct VkQueueFamilyProperties {
2956
VkQueueFlags queueFlags;
2957
uint32_t queueCount;
2958
uint32_t timestampValidBits;
2959
VkExtent3D minImageTransferGranularity;
2960
} VkQueueFamilyProperties;
2962
typedef struct VkDeviceQueueCreateInfo {
2963
VkStructureType sType;
2965
VkDeviceQueueCreateFlags flags;
2966
uint32_t queueFamilyIndex;
2967
uint32_t queueCount;
2968
const float* pQueuePriorities;
2969
} VkDeviceQueueCreateInfo;
2971
typedef struct VkDeviceCreateInfo {
2972
VkStructureType sType;
2974
VkDeviceCreateFlags flags;
2975
uint32_t queueCreateInfoCount;
2976
const VkDeviceQueueCreateInfo* pQueueCreateInfos;
2977
uint32_t enabledLayerCount;
2978
const char* const* ppEnabledLayerNames;
2979
uint32_t enabledExtensionCount;
2980
const char* const* ppEnabledExtensionNames;
2981
const VkPhysicalDeviceFeatures* pEnabledFeatures;
2982
} VkDeviceCreateInfo;
2984
typedef struct VkExtensionProperties {
2985
char extensionName[VK_MAX_EXTENSION_NAME_SIZE];
2986
uint32_t specVersion;
2987
} VkExtensionProperties;
2989
typedef struct VkLayerProperties {
2990
char layerName[VK_MAX_EXTENSION_NAME_SIZE];
2991
uint32_t specVersion;
2992
uint32_t implementationVersion;
2993
char description[VK_MAX_DESCRIPTION_SIZE];
2994
} VkLayerProperties;
2996
typedef struct VkSubmitInfo {
2997
VkStructureType sType;
2999
uint32_t waitSemaphoreCount;
3000
const VkSemaphore* pWaitSemaphores;
3001
const VkPipelineStageFlags* pWaitDstStageMask;
3002
uint32_t commandBufferCount;
3003
const VkCommandBuffer* pCommandBuffers;
3004
uint32_t signalSemaphoreCount;
3005
const VkSemaphore* pSignalSemaphores;
3008
typedef struct VkMappedMemoryRange {
3009
VkStructureType sType;
3011
VkDeviceMemory memory;
3012
VkDeviceSize offset;
3014
} VkMappedMemoryRange;
3016
typedef struct VkMemoryAllocateInfo {
3017
VkStructureType sType;
3019
VkDeviceSize allocationSize;
3020
uint32_t memoryTypeIndex;
3021
} VkMemoryAllocateInfo;
3023
typedef struct VkMemoryRequirements {
3025
VkDeviceSize alignment;
3026
uint32_t memoryTypeBits;
3027
} VkMemoryRequirements;
3029
typedef struct VkSparseMemoryBind {
3030
VkDeviceSize resourceOffset;
3032
VkDeviceMemory memory;
3033
VkDeviceSize memoryOffset;
3034
VkSparseMemoryBindFlags flags;
3035
} VkSparseMemoryBind;
3037
typedef struct VkSparseBufferMemoryBindInfo {
3040
const VkSparseMemoryBind* pBinds;
3041
} VkSparseBufferMemoryBindInfo;
3043
typedef struct VkSparseImageOpaqueMemoryBindInfo {
3046
const VkSparseMemoryBind* pBinds;
3047
} VkSparseImageOpaqueMemoryBindInfo;
3049
typedef struct VkImageSubresource {
3050
VkImageAspectFlags aspectMask;
3052
uint32_t arrayLayer;
3053
} VkImageSubresource;
3055
typedef struct VkSparseImageMemoryBind {
3056
VkImageSubresource subresource;
3059
VkDeviceMemory memory;
3060
VkDeviceSize memoryOffset;
3061
VkSparseMemoryBindFlags flags;
3062
} VkSparseImageMemoryBind;
3064
typedef struct VkSparseImageMemoryBindInfo {
3067
const VkSparseImageMemoryBind* pBinds;
3068
} VkSparseImageMemoryBindInfo;
3070
typedef struct VkBindSparseInfo {
3071
VkStructureType sType;
3073
uint32_t waitSemaphoreCount;
3074
const VkSemaphore* pWaitSemaphores;
3075
uint32_t bufferBindCount;
3076
const VkSparseBufferMemoryBindInfo* pBufferBinds;
3077
uint32_t imageOpaqueBindCount;
3078
const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds;
3079
uint32_t imageBindCount;
3080
const VkSparseImageMemoryBindInfo* pImageBinds;
3081
uint32_t signalSemaphoreCount;
3082
const VkSemaphore* pSignalSemaphores;
3085
typedef struct VkSparseImageFormatProperties {
3086
VkImageAspectFlags aspectMask;
3087
VkExtent3D imageGranularity;
3088
VkSparseImageFormatFlags flags;
3089
} VkSparseImageFormatProperties;
3091
typedef struct VkSparseImageMemoryRequirements {
3092
VkSparseImageFormatProperties formatProperties;
3093
uint32_t imageMipTailFirstLod;
3094
VkDeviceSize imageMipTailSize;
3095
VkDeviceSize imageMipTailOffset;
3096
VkDeviceSize imageMipTailStride;
3097
} VkSparseImageMemoryRequirements;
3099
typedef struct VkFenceCreateInfo {
3100
VkStructureType sType;
3102
VkFenceCreateFlags flags;
3103
} VkFenceCreateInfo;
3105
typedef struct VkSemaphoreCreateInfo {
3106
VkStructureType sType;
3108
VkSemaphoreCreateFlags flags;
3109
} VkSemaphoreCreateInfo;
3111
typedef struct VkEventCreateInfo {
3112
VkStructureType sType;
3114
VkEventCreateFlags flags;
3115
} VkEventCreateInfo;
3117
typedef struct VkQueryPoolCreateInfo {
3118
VkStructureType sType;
3120
VkQueryPoolCreateFlags flags;
3121
VkQueryType queryType;
3122
uint32_t queryCount;
3123
VkQueryPipelineStatisticFlags pipelineStatistics;
3124
} VkQueryPoolCreateInfo;
3126
typedef struct VkBufferCreateInfo {
3127
VkStructureType sType;
3129
VkBufferCreateFlags flags;
3131
VkBufferUsageFlags usage;
3132
VkSharingMode sharingMode;
3133
uint32_t queueFamilyIndexCount;
3134
const uint32_t* pQueueFamilyIndices;
3135
} VkBufferCreateInfo;
3137
typedef struct VkBufferViewCreateInfo {
3138
VkStructureType sType;
3140
VkBufferViewCreateFlags flags;
3143
VkDeviceSize offset;
3145
} VkBufferViewCreateInfo;
3147
typedef struct VkImageCreateInfo {
3148
VkStructureType sType;
3150
VkImageCreateFlags flags;
3151
VkImageType imageType;
3155
uint32_t arrayLayers;
3156
VkSampleCountFlagBits samples;
3157
VkImageTiling tiling;
3158
VkImageUsageFlags usage;
3159
VkSharingMode sharingMode;
3160
uint32_t queueFamilyIndexCount;
3161
const uint32_t* pQueueFamilyIndices;
3162
VkImageLayout initialLayout;
3163
} VkImageCreateInfo;
3165
typedef struct VkSubresourceLayout {
3166
VkDeviceSize offset;
3168
VkDeviceSize rowPitch;
3169
VkDeviceSize arrayPitch;
3170
VkDeviceSize depthPitch;
3171
} VkSubresourceLayout;
3173
typedef struct VkComponentMapping {
3174
VkComponentSwizzle r;
3175
VkComponentSwizzle g;
3176
VkComponentSwizzle b;
3177
VkComponentSwizzle a;
3178
} VkComponentMapping;
3180
typedef struct VkImageViewCreateInfo {
3181
VkStructureType sType;
3183
VkImageViewCreateFlags flags;
3185
VkImageViewType viewType;
3187
VkComponentMapping components;
3188
VkImageSubresourceRange subresourceRange;
3189
} VkImageViewCreateInfo;
3191
typedef struct VkShaderModuleCreateInfo {
3192
VkStructureType sType;
3194
VkShaderModuleCreateFlags flags;
3196
const uint32_t* pCode;
3197
} VkShaderModuleCreateInfo;
3199
typedef struct VkPipelineCacheCreateInfo {
3200
VkStructureType sType;
3202
VkPipelineCacheCreateFlags flags;
3203
size_t initialDataSize;
3204
const void* pInitialData;
3205
} VkPipelineCacheCreateInfo;
3207
typedef struct VkSpecializationMapEntry {
3208
uint32_t constantID;
3211
} VkSpecializationMapEntry;
3213
typedef struct VkSpecializationInfo {
3214
uint32_t mapEntryCount;
3215
const VkSpecializationMapEntry* pMapEntries;
3218
} VkSpecializationInfo;
3220
typedef struct VkPipelineShaderStageCreateInfo {
3221
VkStructureType sType;
3223
VkPipelineShaderStageCreateFlags flags;
3224
VkShaderStageFlagBits stage;
3225
VkShaderModule module;
3227
const VkSpecializationInfo* pSpecializationInfo;
3228
} VkPipelineShaderStageCreateInfo;
3230
typedef struct VkComputePipelineCreateInfo {
3231
VkStructureType sType;
3233
VkPipelineCreateFlags flags;
3234
VkPipelineShaderStageCreateInfo stage;
3235
VkPipelineLayout layout;
3236
VkPipeline basePipelineHandle;
3237
int32_t basePipelineIndex;
3238
} VkComputePipelineCreateInfo;
3240
typedef struct VkVertexInputBindingDescription {
3243
VkVertexInputRate inputRate;
3244
} VkVertexInputBindingDescription;
3246
typedef struct VkVertexInputAttributeDescription {
3251
} VkVertexInputAttributeDescription;
3253
typedef struct VkPipelineVertexInputStateCreateInfo {
3254
VkStructureType sType;
3256
VkPipelineVertexInputStateCreateFlags flags;
3257
uint32_t vertexBindingDescriptionCount;
3258
const VkVertexInputBindingDescription* pVertexBindingDescriptions;
3259
uint32_t vertexAttributeDescriptionCount;
3260
const VkVertexInputAttributeDescription* pVertexAttributeDescriptions;
3261
} VkPipelineVertexInputStateCreateInfo;
3263
typedef struct VkPipelineInputAssemblyStateCreateInfo {
3264
VkStructureType sType;
3266
VkPipelineInputAssemblyStateCreateFlags flags;
3267
VkPrimitiveTopology topology;
3268
VkBool32 primitiveRestartEnable;
3269
} VkPipelineInputAssemblyStateCreateInfo;
3271
typedef struct VkPipelineTessellationStateCreateInfo {
3272
VkStructureType sType;
3274
VkPipelineTessellationStateCreateFlags flags;
3275
uint32_t patchControlPoints;
3276
} VkPipelineTessellationStateCreateInfo;
3278
typedef struct VkViewport {
3287
typedef struct VkPipelineViewportStateCreateInfo {
3288
VkStructureType sType;
3290
VkPipelineViewportStateCreateFlags flags;
3291
uint32_t viewportCount;
3292
const VkViewport* pViewports;
3293
uint32_t scissorCount;
3294
const VkRect2D* pScissors;
3295
} VkPipelineViewportStateCreateInfo;
3297
typedef struct VkPipelineRasterizationStateCreateInfo {
3298
VkStructureType sType;
3300
VkPipelineRasterizationStateCreateFlags flags;
3301
VkBool32 depthClampEnable;
3302
VkBool32 rasterizerDiscardEnable;
3303
VkPolygonMode polygonMode;
3304
VkCullModeFlags cullMode;
3305
VkFrontFace frontFace;
3306
VkBool32 depthBiasEnable;
3307
float depthBiasConstantFactor;
3308
float depthBiasClamp;
3309
float depthBiasSlopeFactor;
3311
} VkPipelineRasterizationStateCreateInfo;
3313
typedef struct VkPipelineMultisampleStateCreateInfo {
3314
VkStructureType sType;
3316
VkPipelineMultisampleStateCreateFlags flags;
3317
VkSampleCountFlagBits rasterizationSamples;
3318
VkBool32 sampleShadingEnable;
3319
float minSampleShading;
3320
const VkSampleMask* pSampleMask;
3321
VkBool32 alphaToCoverageEnable;
3322
VkBool32 alphaToOneEnable;
3323
} VkPipelineMultisampleStateCreateInfo;
3325
typedef struct VkStencilOpState {
3328
VkStencilOp depthFailOp;
3329
VkCompareOp compareOp;
3330
uint32_t compareMask;
3335
typedef struct VkPipelineDepthStencilStateCreateInfo {
3336
VkStructureType sType;
3338
VkPipelineDepthStencilStateCreateFlags flags;
3339
VkBool32 depthTestEnable;
3340
VkBool32 depthWriteEnable;
3341
VkCompareOp depthCompareOp;
3342
VkBool32 depthBoundsTestEnable;
3343
VkBool32 stencilTestEnable;
3344
VkStencilOpState front;
3345
VkStencilOpState back;
3346
float minDepthBounds;
3347
float maxDepthBounds;
3348
} VkPipelineDepthStencilStateCreateInfo;
3350
typedef struct VkPipelineColorBlendAttachmentState {
3351
VkBool32 blendEnable;
3352
VkBlendFactor srcColorBlendFactor;
3353
VkBlendFactor dstColorBlendFactor;
3354
VkBlendOp colorBlendOp;
3355
VkBlendFactor srcAlphaBlendFactor;
3356
VkBlendFactor dstAlphaBlendFactor;
3357
VkBlendOp alphaBlendOp;
3358
VkColorComponentFlags colorWriteMask;
3359
} VkPipelineColorBlendAttachmentState;
3361
typedef struct VkPipelineColorBlendStateCreateInfo {
3362
VkStructureType sType;
3364
VkPipelineColorBlendStateCreateFlags flags;
3365
VkBool32 logicOpEnable;
3367
uint32_t attachmentCount;
3368
const VkPipelineColorBlendAttachmentState* pAttachments;
3369
float blendConstants[4];
3370
} VkPipelineColorBlendStateCreateInfo;
3372
typedef struct VkPipelineDynamicStateCreateInfo {
3373
VkStructureType sType;
3375
VkPipelineDynamicStateCreateFlags flags;
3376
uint32_t dynamicStateCount;
3377
const VkDynamicState* pDynamicStates;
3378
} VkPipelineDynamicStateCreateInfo;
3380
typedef struct VkGraphicsPipelineCreateInfo {
3381
VkStructureType sType;
3383
VkPipelineCreateFlags flags;
3384
uint32_t stageCount;
3385
const VkPipelineShaderStageCreateInfo* pStages;
3386
const VkPipelineVertexInputStateCreateInfo* pVertexInputState;
3387
const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState;
3388
const VkPipelineTessellationStateCreateInfo* pTessellationState;
3389
const VkPipelineViewportStateCreateInfo* pViewportState;
3390
const VkPipelineRasterizationStateCreateInfo* pRasterizationState;
3391
const VkPipelineMultisampleStateCreateInfo* pMultisampleState;
3392
const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState;
3393
const VkPipelineColorBlendStateCreateInfo* pColorBlendState;
3394
const VkPipelineDynamicStateCreateInfo* pDynamicState;
3395
VkPipelineLayout layout;
3396
VkRenderPass renderPass;
3398
VkPipeline basePipelineHandle;
3399
int32_t basePipelineIndex;
3400
} VkGraphicsPipelineCreateInfo;
3402
typedef struct VkPushConstantRange {
3403
VkShaderStageFlags stageFlags;
3406
} VkPushConstantRange;
3408
typedef struct VkPipelineLayoutCreateInfo {
3409
VkStructureType sType;
3411
VkPipelineLayoutCreateFlags flags;
3412
uint32_t setLayoutCount;
3413
const VkDescriptorSetLayout* pSetLayouts;
3414
uint32_t pushConstantRangeCount;
3415
const VkPushConstantRange* pPushConstantRanges;
3416
} VkPipelineLayoutCreateInfo;
3418
typedef struct VkSamplerCreateInfo {
3419
VkStructureType sType;
3421
VkSamplerCreateFlags flags;
3424
VkSamplerMipmapMode mipmapMode;
3425
VkSamplerAddressMode addressModeU;
3426
VkSamplerAddressMode addressModeV;
3427
VkSamplerAddressMode addressModeW;
3429
VkBool32 anisotropyEnable;
3430
float maxAnisotropy;
3431
VkBool32 compareEnable;
3432
VkCompareOp compareOp;
3435
VkBorderColor borderColor;
3436
VkBool32 unnormalizedCoordinates;
3437
} VkSamplerCreateInfo;
3439
typedef struct VkCopyDescriptorSet {
3440
VkStructureType sType;
3442
VkDescriptorSet srcSet;
3443
uint32_t srcBinding;
3444
uint32_t srcArrayElement;
3445
VkDescriptorSet dstSet;
3446
uint32_t dstBinding;
3447
uint32_t dstArrayElement;
3448
uint32_t descriptorCount;
3449
} VkCopyDescriptorSet;
3451
typedef struct VkDescriptorBufferInfo {
3453
VkDeviceSize offset;
3455
} VkDescriptorBufferInfo;
3457
typedef struct VkDescriptorImageInfo {
3459
VkImageView imageView;
3460
VkImageLayout imageLayout;
3461
} VkDescriptorImageInfo;
3463
typedef struct VkDescriptorPoolSize {
3464
VkDescriptorType type;
3465
uint32_t descriptorCount;
3466
} VkDescriptorPoolSize;
3468
typedef struct VkDescriptorPoolCreateInfo {
3469
VkStructureType sType;
3471
VkDescriptorPoolCreateFlags flags;
3473
uint32_t poolSizeCount;
3474
const VkDescriptorPoolSize* pPoolSizes;
3475
} VkDescriptorPoolCreateInfo;
3477
typedef struct VkDescriptorSetAllocateInfo {
3478
VkStructureType sType;
3480
VkDescriptorPool descriptorPool;
3481
uint32_t descriptorSetCount;
3482
const VkDescriptorSetLayout* pSetLayouts;
3483
} VkDescriptorSetAllocateInfo;
3485
typedef struct VkDescriptorSetLayoutBinding {
3487
VkDescriptorType descriptorType;
3488
uint32_t descriptorCount;
3489
VkShaderStageFlags stageFlags;
3490
const VkSampler* pImmutableSamplers;
3491
} VkDescriptorSetLayoutBinding;
3493
typedef struct VkDescriptorSetLayoutCreateInfo {
3494
VkStructureType sType;
3496
VkDescriptorSetLayoutCreateFlags flags;
3497
uint32_t bindingCount;
3498
const VkDescriptorSetLayoutBinding* pBindings;
3499
} VkDescriptorSetLayoutCreateInfo;
3501
typedef struct VkWriteDescriptorSet {
3502
VkStructureType sType;
3504
VkDescriptorSet dstSet;
3505
uint32_t dstBinding;
3506
uint32_t dstArrayElement;
3507
uint32_t descriptorCount;
3508
VkDescriptorType descriptorType;
3509
const VkDescriptorImageInfo* pImageInfo;
3510
const VkDescriptorBufferInfo* pBufferInfo;
3511
const VkBufferView* pTexelBufferView;
3512
} VkWriteDescriptorSet;
3514
typedef struct VkAttachmentDescription {
3515
VkAttachmentDescriptionFlags flags;
3517
VkSampleCountFlagBits samples;
3518
VkAttachmentLoadOp loadOp;
3519
VkAttachmentStoreOp storeOp;
3520
VkAttachmentLoadOp stencilLoadOp;
3521
VkAttachmentStoreOp stencilStoreOp;
3522
VkImageLayout initialLayout;
3523
VkImageLayout finalLayout;
3524
} VkAttachmentDescription;
3526
typedef struct VkAttachmentReference {
3527
uint32_t attachment;
3528
VkImageLayout layout;
3529
} VkAttachmentReference;
3531
typedef struct VkFramebufferCreateInfo {
3532
VkStructureType sType;
3534
VkFramebufferCreateFlags flags;
3535
VkRenderPass renderPass;
3536
uint32_t attachmentCount;
3537
const VkImageView* pAttachments;
3541
} VkFramebufferCreateInfo;
3543
typedef struct VkSubpassDescription {
3544
VkSubpassDescriptionFlags flags;
3545
VkPipelineBindPoint pipelineBindPoint;
3546
uint32_t inputAttachmentCount;
3547
const VkAttachmentReference* pInputAttachments;
3548
uint32_t colorAttachmentCount;
3549
const VkAttachmentReference* pColorAttachments;
3550
const VkAttachmentReference* pResolveAttachments;
3551
const VkAttachmentReference* pDepthStencilAttachment;
3552
uint32_t preserveAttachmentCount;
3553
const uint32_t* pPreserveAttachments;
3554
} VkSubpassDescription;
3556
typedef struct VkSubpassDependency {
3557
uint32_t srcSubpass;
3558
uint32_t dstSubpass;
3559
VkPipelineStageFlags srcStageMask;
3560
VkPipelineStageFlags dstStageMask;
3561
VkAccessFlags srcAccessMask;
3562
VkAccessFlags dstAccessMask;
3563
VkDependencyFlags dependencyFlags;
3564
} VkSubpassDependency;
3566
typedef struct VkRenderPassCreateInfo {
3567
VkStructureType sType;
3569
VkRenderPassCreateFlags flags;
3570
uint32_t attachmentCount;
3571
const VkAttachmentDescription* pAttachments;
3572
uint32_t subpassCount;
3573
const VkSubpassDescription* pSubpasses;
3574
uint32_t dependencyCount;
3575
const VkSubpassDependency* pDependencies;
3576
} VkRenderPassCreateInfo;
3578
typedef struct VkCommandPoolCreateInfo {
3579
VkStructureType sType;
3581
VkCommandPoolCreateFlags flags;
3582
uint32_t queueFamilyIndex;
3583
} VkCommandPoolCreateInfo;
3585
typedef struct VkCommandBufferAllocateInfo {
3586
VkStructureType sType;
3588
VkCommandPool commandPool;
3589
VkCommandBufferLevel level;
3590
uint32_t commandBufferCount;
3591
} VkCommandBufferAllocateInfo;
3593
typedef struct VkCommandBufferInheritanceInfo {
3594
VkStructureType sType;
3596
VkRenderPass renderPass;
3598
VkFramebuffer framebuffer;
3599
VkBool32 occlusionQueryEnable;
3600
VkQueryControlFlags queryFlags;
3601
VkQueryPipelineStatisticFlags pipelineStatistics;
3602
} VkCommandBufferInheritanceInfo;
3604
typedef struct VkCommandBufferBeginInfo {
3605
VkStructureType sType;
3607
VkCommandBufferUsageFlags flags;
3608
const VkCommandBufferInheritanceInfo* pInheritanceInfo;
3609
} VkCommandBufferBeginInfo;
3611
typedef struct VkBufferCopy {
3612
VkDeviceSize srcOffset;
3613
VkDeviceSize dstOffset;
3617
typedef struct VkImageSubresourceLayers {
3618
VkImageAspectFlags aspectMask;
3620
uint32_t baseArrayLayer;
3621
uint32_t layerCount;
3622
} VkImageSubresourceLayers;
3624
typedef struct VkBufferImageCopy {
3625
VkDeviceSize bufferOffset;
3626
uint32_t bufferRowLength;
3627
uint32_t bufferImageHeight;
3628
VkImageSubresourceLayers imageSubresource;
3629
VkOffset3D imageOffset;
3630
VkExtent3D imageExtent;
3631
} VkBufferImageCopy;
3633
typedef union VkClearColorValue {
3637
} VkClearColorValue;
3639
typedef struct VkClearDepthStencilValue {
3642
} VkClearDepthStencilValue;
3644
typedef union VkClearValue {
3645
VkClearColorValue color;
3646
VkClearDepthStencilValue depthStencil;
3649
typedef struct VkClearAttachment {
3650
VkImageAspectFlags aspectMask;
3651
uint32_t colorAttachment;
3652
VkClearValue clearValue;
3653
} VkClearAttachment;
3655
typedef struct VkClearRect {
3657
uint32_t baseArrayLayer;
3658
uint32_t layerCount;
3661
typedef struct VkImageBlit {
3662
VkImageSubresourceLayers srcSubresource;
3663
VkOffset3D srcOffsets[2];
3664
VkImageSubresourceLayers dstSubresource;
3665
VkOffset3D dstOffsets[2];
3668
typedef struct VkImageCopy {
3669
VkImageSubresourceLayers srcSubresource;
3670
VkOffset3D srcOffset;
3671
VkImageSubresourceLayers dstSubresource;
3672
VkOffset3D dstOffset;
3676
typedef struct VkImageResolve {
3677
VkImageSubresourceLayers srcSubresource;
3678
VkOffset3D srcOffset;
3679
VkImageSubresourceLayers dstSubresource;
3680
VkOffset3D dstOffset;
3684
typedef struct VkRenderPassBeginInfo {
3685
VkStructureType sType;
3687
VkRenderPass renderPass;
3688
VkFramebuffer framebuffer;
3689
VkRect2D renderArea;
3690
uint32_t clearValueCount;
3691
const VkClearValue* pClearValues;
3692
} VkRenderPassBeginInfo;
3694
typedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance);
3695
typedef void (VKAPI_PTR *PFN_vkDestroyInstance)(VkInstance instance, const VkAllocationCallbacks* pAllocator);
3696
typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices);
3697
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures);
3698
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties);
3699
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties);
3700
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties);
3701
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties);
3702
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties);
3703
typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName);
3704
typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetDeviceProcAddr)(VkDevice device, const char* pName);
3705
typedef VkResult (VKAPI_PTR *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice);
3706
typedef void (VKAPI_PTR *PFN_vkDestroyDevice)(VkDevice device, const VkAllocationCallbacks* pAllocator);
3707
typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceExtensionProperties)(const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);
3708
typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);
3709
typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceLayerProperties)(uint32_t* pPropertyCount, VkLayerProperties* pProperties);
3710
typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties);
3711
typedef void (VKAPI_PTR *PFN_vkGetDeviceQueue)(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue);
3712
typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence);
3713
typedef VkResult (VKAPI_PTR *PFN_vkQueueWaitIdle)(VkQueue queue);
3714
typedef VkResult (VKAPI_PTR *PFN_vkDeviceWaitIdle)(VkDevice device);
3715
typedef VkResult (VKAPI_PTR *PFN_vkAllocateMemory)(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory);
3716
typedef void (VKAPI_PTR *PFN_vkFreeMemory)(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator);
3717
typedef VkResult (VKAPI_PTR *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData);
3718
typedef void (VKAPI_PTR *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory memory);
3719
typedef VkResult (VKAPI_PTR *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);
3720
typedef VkResult (VKAPI_PTR *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);
3721
typedef void (VKAPI_PTR *PFN_vkGetDeviceMemoryCommitment)(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes);
3722
typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory)(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset);
3723
typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory)(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset);
3724
typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements)(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements);
3725
typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements)(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements);
3726
typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements)(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements);
3727
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties);
3728
typedef VkResult (VKAPI_PTR *PFN_vkQueueBindSparse)(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence);
3729
typedef VkResult (VKAPI_PTR *PFN_vkCreateFence)(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);
3730
typedef void (VKAPI_PTR *PFN_vkDestroyFence)(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator);
3731
typedef VkResult (VKAPI_PTR *PFN_vkResetFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences);
3732
typedef VkResult (VKAPI_PTR *PFN_vkGetFenceStatus)(VkDevice device, VkFence fence);
3733
typedef VkResult (VKAPI_PTR *PFN_vkWaitForFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout);
3734
typedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore);
3735
typedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator);
3736
typedef VkResult (VKAPI_PTR *PFN_vkCreateEvent)(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent);
3737
typedef void (VKAPI_PTR *PFN_vkDestroyEvent)(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator);
3738
typedef VkResult (VKAPI_PTR *PFN_vkGetEventStatus)(VkDevice device, VkEvent event);
3739
typedef VkResult (VKAPI_PTR *PFN_vkSetEvent)(VkDevice device, VkEvent event);
3740
typedef VkResult (VKAPI_PTR *PFN_vkResetEvent)(VkDevice device, VkEvent event);
3741
typedef VkResult (VKAPI_PTR *PFN_vkCreateQueryPool)(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool);
3742
typedef void (VKAPI_PTR *PFN_vkDestroyQueryPool)(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator);
3743
typedef VkResult (VKAPI_PTR *PFN_vkGetQueryPoolResults)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags);
3744
typedef VkResult (VKAPI_PTR *PFN_vkCreateBuffer)(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer);
3745
typedef void (VKAPI_PTR *PFN_vkDestroyBuffer)(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator);
3746
typedef VkResult (VKAPI_PTR *PFN_vkCreateBufferView)(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView);
3747
typedef void (VKAPI_PTR *PFN_vkDestroyBufferView)(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator);
3748
typedef VkResult (VKAPI_PTR *PFN_vkCreateImage)(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage);
3749
typedef void (VKAPI_PTR *PFN_vkDestroyImage)(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator);
3750
typedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout);
3751
typedef VkResult (VKAPI_PTR *PFN_vkCreateImageView)(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView);
3752
typedef void (VKAPI_PTR *PFN_vkDestroyImageView)(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator);
3753
typedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule);
3754
typedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator);
3755
typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineCache)(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache);
3756
typedef void (VKAPI_PTR *PFN_vkDestroyPipelineCache)(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator);
3757
typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData);
3758
typedef VkResult (VKAPI_PTR *PFN_vkMergePipelineCaches)(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches);
3759
typedef VkResult (VKAPI_PTR *PFN_vkCreateGraphicsPipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
3760
typedef VkResult (VKAPI_PTR *PFN_vkCreateComputePipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
3761
typedef void (VKAPI_PTR *PFN_vkDestroyPipeline)(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator);
3762
typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineLayout)(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout);
3763
typedef void (VKAPI_PTR *PFN_vkDestroyPipelineLayout)(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator);
3764
typedef VkResult (VKAPI_PTR *PFN_vkCreateSampler)(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler);
3765
typedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator);
3766
typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorSetLayout)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout);
3767
typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorSetLayout)(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator);
3768
typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorPool)(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool);
3769
typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator);
3770
typedef VkResult (VKAPI_PTR *PFN_vkResetDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags);
3771
typedef VkResult (VKAPI_PTR *PFN_vkAllocateDescriptorSets)(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets);
3772
typedef VkResult (VKAPI_PTR *PFN_vkFreeDescriptorSets)(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets);
3773
typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSets)(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies);
3774
typedef VkResult (VKAPI_PTR *PFN_vkCreateFramebuffer)(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer);
3775
typedef void (VKAPI_PTR *PFN_vkDestroyFramebuffer)(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator);
3776
typedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass)(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);
3777
typedef void (VKAPI_PTR *PFN_vkDestroyRenderPass)(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator);
3778
typedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity);
3779
typedef VkResult (VKAPI_PTR *PFN_vkCreateCommandPool)(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool);
3780
typedef void (VKAPI_PTR *PFN_vkDestroyCommandPool)(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator);
3781
typedef VkResult (VKAPI_PTR *PFN_vkResetCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags);
3782
typedef VkResult (VKAPI_PTR *PFN_vkAllocateCommandBuffers)(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers);
3783
typedef void (VKAPI_PTR *PFN_vkFreeCommandBuffers)(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);
3784
typedef VkResult (VKAPI_PTR *PFN_vkBeginCommandBuffer)(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo);
3785
typedef VkResult (VKAPI_PTR *PFN_vkEndCommandBuffer)(VkCommandBuffer commandBuffer);
3786
typedef VkResult (VKAPI_PTR *PFN_vkResetCommandBuffer)(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags);
3787
typedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline);
3788
typedef void (VKAPI_PTR *PFN_vkCmdSetViewport)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports);
3789
typedef void (VKAPI_PTR *PFN_vkCmdSetScissor)(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors);
3790
typedef void (VKAPI_PTR *PFN_vkCmdSetLineWidth)(VkCommandBuffer commandBuffer, float lineWidth);
3791
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBias)(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor);
3792
typedef void (VKAPI_PTR *PFN_vkCmdSetBlendConstants)(VkCommandBuffer commandBuffer, const float blendConstants[4]);
3793
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBounds)(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds);
3794
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilCompareMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask);
3795
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilWriteMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask);
3796
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilReference)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference);
3797
typedef 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);
3798
typedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType);
3799
typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets);
3800
typedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance);
3801
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance);
3802
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
3803
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
3804
typedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);
3805
typedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);
3806
typedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions);
3807
typedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions);
3808
typedef void (VKAPI_PTR *PFN_vkCmdBlitImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter);
3809
typedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions);
3810
typedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions);
3811
typedef void (VKAPI_PTR *PFN_vkCmdUpdateBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData);
3812
typedef void (VKAPI_PTR *PFN_vkCmdFillBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data);
3813
typedef void (VKAPI_PTR *PFN_vkCmdClearColorImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);
3814
typedef void (VKAPI_PTR *PFN_vkCmdClearDepthStencilImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);
3815
typedef void (VKAPI_PTR *PFN_vkCmdClearAttachments)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects);
3816
typedef void (VKAPI_PTR *PFN_vkCmdResolveImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions);
3817
typedef void (VKAPI_PTR *PFN_vkCmdSetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);
3818
typedef void (VKAPI_PTR *PFN_vkCmdResetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);
3819
typedef 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);
3820
typedef 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);
3821
typedef void (VKAPI_PTR *PFN_vkCmdBeginQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags);
3822
typedef void (VKAPI_PTR *PFN_vkCmdEndQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query);
3823
typedef void (VKAPI_PTR *PFN_vkCmdResetQueryPool)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount);
3824
typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query);
3825
typedef void (VKAPI_PTR *PFN_vkCmdCopyQueryPoolResults)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags);
3826
typedef void (VKAPI_PTR *PFN_vkCmdPushConstants)(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues);
3827
typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents);
3828
typedef void (VKAPI_PTR *PFN_vkCmdNextSubpass)(VkCommandBuffer commandBuffer, VkSubpassContents contents);
3829
typedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass)(VkCommandBuffer commandBuffer);
3830
typedef void (VKAPI_PTR *PFN_vkCmdExecuteCommands)(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);
3832
#ifndef VK_NO_PROTOTYPES
3833
VKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance(
3834
const VkInstanceCreateInfo* pCreateInfo,
3835
const VkAllocationCallbacks* pAllocator,
3836
VkInstance* pInstance);
3838
VKAPI_ATTR void VKAPI_CALL vkDestroyInstance(
3839
VkInstance instance,
3840
const VkAllocationCallbacks* pAllocator);
3842
VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices(
3843
VkInstance instance,
3844
uint32_t* pPhysicalDeviceCount,
3845
VkPhysicalDevice* pPhysicalDevices);
3847
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures(
3848
VkPhysicalDevice physicalDevice,
3849
VkPhysicalDeviceFeatures* pFeatures);
3851
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties(
3852
VkPhysicalDevice physicalDevice,
3854
VkFormatProperties* pFormatProperties);
3856
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties(
3857
VkPhysicalDevice physicalDevice,
3860
VkImageTiling tiling,
3861
VkImageUsageFlags usage,
3862
VkImageCreateFlags flags,
3863
VkImageFormatProperties* pImageFormatProperties);
3865
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties(
3866
VkPhysicalDevice physicalDevice,
3867
VkPhysicalDeviceProperties* pProperties);
3869
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties(
3870
VkPhysicalDevice physicalDevice,
3871
uint32_t* pQueueFamilyPropertyCount,
3872
VkQueueFamilyProperties* pQueueFamilyProperties);
3874
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties(
3875
VkPhysicalDevice physicalDevice,
3876
VkPhysicalDeviceMemoryProperties* pMemoryProperties);
3878
VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(
3879
VkInstance instance,
3882
VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(
3886
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice(
3887
VkPhysicalDevice physicalDevice,
3888
const VkDeviceCreateInfo* pCreateInfo,
3889
const VkAllocationCallbacks* pAllocator,
3892
VKAPI_ATTR void VKAPI_CALL vkDestroyDevice(
3894
const VkAllocationCallbacks* pAllocator);
3896
VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties(
3897
const char* pLayerName,
3898
uint32_t* pPropertyCount,
3899
VkExtensionProperties* pProperties);
3901
VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties(
3902
VkPhysicalDevice physicalDevice,
3903
const char* pLayerName,
3904
uint32_t* pPropertyCount,
3905
VkExtensionProperties* pProperties);
3907
VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties(
3908
uint32_t* pPropertyCount,
3909
VkLayerProperties* pProperties);
3911
VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties(
3912
VkPhysicalDevice physicalDevice,
3913
uint32_t* pPropertyCount,
3914
VkLayerProperties* pProperties);
3916
VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue(
3918
uint32_t queueFamilyIndex,
3919
uint32_t queueIndex,
3922
VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit(
3924
uint32_t submitCount,
3925
const VkSubmitInfo* pSubmits,
3928
VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(
3931
VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(
3934
VKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory(
3936
const VkMemoryAllocateInfo* pAllocateInfo,
3937
const VkAllocationCallbacks* pAllocator,
3938
VkDeviceMemory* pMemory);
3940
VKAPI_ATTR void VKAPI_CALL vkFreeMemory(
3942
VkDeviceMemory memory,
3943
const VkAllocationCallbacks* pAllocator);
3945
VKAPI_ATTR VkResult VKAPI_CALL vkMapMemory(
3947
VkDeviceMemory memory,
3948
VkDeviceSize offset,
3950
VkMemoryMapFlags flags,
3953
VKAPI_ATTR void VKAPI_CALL vkUnmapMemory(
3955
VkDeviceMemory memory);
3957
VKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges(
3959
uint32_t memoryRangeCount,
3960
const VkMappedMemoryRange* pMemoryRanges);
3962
VKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges(
3964
uint32_t memoryRangeCount,
3965
const VkMappedMemoryRange* pMemoryRanges);
3967
VKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment(
3969
VkDeviceMemory memory,
3970
VkDeviceSize* pCommittedMemoryInBytes);
3972
VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory(
3975
VkDeviceMemory memory,
3976
VkDeviceSize memoryOffset);
3978
VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory(
3981
VkDeviceMemory memory,
3982
VkDeviceSize memoryOffset);
3984
VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements(
3987
VkMemoryRequirements* pMemoryRequirements);
3989
VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements(
3992
VkMemoryRequirements* pMemoryRequirements);
3994
VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements(
3997
uint32_t* pSparseMemoryRequirementCount,
3998
VkSparseImageMemoryRequirements* pSparseMemoryRequirements);
4000
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties(
4001
VkPhysicalDevice physicalDevice,
4004
VkSampleCountFlagBits samples,
4005
VkImageUsageFlags usage,
4006
VkImageTiling tiling,
4007
uint32_t* pPropertyCount,
4008
VkSparseImageFormatProperties* pProperties);
4010
VKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse(
4012
uint32_t bindInfoCount,
4013
const VkBindSparseInfo* pBindInfo,
4016
VKAPI_ATTR VkResult VKAPI_CALL vkCreateFence(
4018
const VkFenceCreateInfo* pCreateInfo,
4019
const VkAllocationCallbacks* pAllocator,
4022
VKAPI_ATTR void VKAPI_CALL vkDestroyFence(
4025
const VkAllocationCallbacks* pAllocator);
4027
VKAPI_ATTR VkResult VKAPI_CALL vkResetFences(
4029
uint32_t fenceCount,
4030
const VkFence* pFences);
4032
VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus(
4036
VKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences(
4038
uint32_t fenceCount,
4039
const VkFence* pFences,
4043
VKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore(
4045
const VkSemaphoreCreateInfo* pCreateInfo,
4046
const VkAllocationCallbacks* pAllocator,
4047
VkSemaphore* pSemaphore);
4049
VKAPI_ATTR void VKAPI_CALL vkDestroySemaphore(
4051
VkSemaphore semaphore,
4052
const VkAllocationCallbacks* pAllocator);
4054
VKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent(
4056
const VkEventCreateInfo* pCreateInfo,
4057
const VkAllocationCallbacks* pAllocator,
4060
VKAPI_ATTR void VKAPI_CALL vkDestroyEvent(
4063
const VkAllocationCallbacks* pAllocator);
4065
VKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus(
4069
VKAPI_ATTR VkResult VKAPI_CALL vkSetEvent(
4073
VKAPI_ATTR VkResult VKAPI_CALL vkResetEvent(
4077
VKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool(
4079
const VkQueryPoolCreateInfo* pCreateInfo,
4080
const VkAllocationCallbacks* pAllocator,
4081
VkQueryPool* pQueryPool);
4083
VKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool(
4085
VkQueryPool queryPool,
4086
const VkAllocationCallbacks* pAllocator);
4088
VKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults(
4090
VkQueryPool queryPool,
4091
uint32_t firstQuery,
4092
uint32_t queryCount,
4095
VkDeviceSize stride,
4096
VkQueryResultFlags flags);
4098
VKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer(
4100
const VkBufferCreateInfo* pCreateInfo,
4101
const VkAllocationCallbacks* pAllocator,
4104
VKAPI_ATTR void VKAPI_CALL vkDestroyBuffer(
4107
const VkAllocationCallbacks* pAllocator);
4109
VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView(
4111
const VkBufferViewCreateInfo* pCreateInfo,
4112
const VkAllocationCallbacks* pAllocator,
4113
VkBufferView* pView);
4115
VKAPI_ATTR void VKAPI_CALL vkDestroyBufferView(
4117
VkBufferView bufferView,
4118
const VkAllocationCallbacks* pAllocator);
4120
VKAPI_ATTR VkResult VKAPI_CALL vkCreateImage(
4122
const VkImageCreateInfo* pCreateInfo,
4123
const VkAllocationCallbacks* pAllocator,
4126
VKAPI_ATTR void VKAPI_CALL vkDestroyImage(
4129
const VkAllocationCallbacks* pAllocator);
4131
VKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout(
4134
const VkImageSubresource* pSubresource,
4135
VkSubresourceLayout* pLayout);
4137
VKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView(
4139
const VkImageViewCreateInfo* pCreateInfo,
4140
const VkAllocationCallbacks* pAllocator,
4141
VkImageView* pView);
4143
VKAPI_ATTR void VKAPI_CALL vkDestroyImageView(
4145
VkImageView imageView,
4146
const VkAllocationCallbacks* pAllocator);
4148
VKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule(
4150
const VkShaderModuleCreateInfo* pCreateInfo,
4151
const VkAllocationCallbacks* pAllocator,
4152
VkShaderModule* pShaderModule);
4154
VKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule(
4156
VkShaderModule shaderModule,
4157
const VkAllocationCallbacks* pAllocator);
4159
VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache(
4161
const VkPipelineCacheCreateInfo* pCreateInfo,
4162
const VkAllocationCallbacks* pAllocator,
4163
VkPipelineCache* pPipelineCache);
4165
VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache(
4167
VkPipelineCache pipelineCache,
4168
const VkAllocationCallbacks* pAllocator);
4170
VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData(
4172
VkPipelineCache pipelineCache,
4176
VKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches(
4178
VkPipelineCache dstCache,
4179
uint32_t srcCacheCount,
4180
const VkPipelineCache* pSrcCaches);
4182
VKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines(
4184
VkPipelineCache pipelineCache,
4185
uint32_t createInfoCount,
4186
const VkGraphicsPipelineCreateInfo* pCreateInfos,
4187
const VkAllocationCallbacks* pAllocator,
4188
VkPipeline* pPipelines);
4190
VKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines(
4192
VkPipelineCache pipelineCache,
4193
uint32_t createInfoCount,
4194
const VkComputePipelineCreateInfo* pCreateInfos,
4195
const VkAllocationCallbacks* pAllocator,
4196
VkPipeline* pPipelines);
4198
VKAPI_ATTR void VKAPI_CALL vkDestroyPipeline(
4200
VkPipeline pipeline,
4201
const VkAllocationCallbacks* pAllocator);
4203
VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout(
4205
const VkPipelineLayoutCreateInfo* pCreateInfo,
4206
const VkAllocationCallbacks* pAllocator,
4207
VkPipelineLayout* pPipelineLayout);
4209
VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout(
4211
VkPipelineLayout pipelineLayout,
4212
const VkAllocationCallbacks* pAllocator);
4214
VKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler(
4216
const VkSamplerCreateInfo* pCreateInfo,
4217
const VkAllocationCallbacks* pAllocator,
4218
VkSampler* pSampler);
4220
VKAPI_ATTR void VKAPI_CALL vkDestroySampler(
4223
const VkAllocationCallbacks* pAllocator);
4225
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout(
4227
const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
4228
const VkAllocationCallbacks* pAllocator,
4229
VkDescriptorSetLayout* pSetLayout);
4231
VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout(
4233
VkDescriptorSetLayout descriptorSetLayout,
4234
const VkAllocationCallbacks* pAllocator);
4236
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool(
4238
const VkDescriptorPoolCreateInfo* pCreateInfo,
4239
const VkAllocationCallbacks* pAllocator,
4240
VkDescriptorPool* pDescriptorPool);
4242
VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool(
4244
VkDescriptorPool descriptorPool,
4245
const VkAllocationCallbacks* pAllocator);
4247
VKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool(
4249
VkDescriptorPool descriptorPool,
4250
VkDescriptorPoolResetFlags flags);
4252
VKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets(
4254
const VkDescriptorSetAllocateInfo* pAllocateInfo,
4255
VkDescriptorSet* pDescriptorSets);
4257
VKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets(
4259
VkDescriptorPool descriptorPool,
4260
uint32_t descriptorSetCount,
4261
const VkDescriptorSet* pDescriptorSets);
4263
VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets(
4265
uint32_t descriptorWriteCount,
4266
const VkWriteDescriptorSet* pDescriptorWrites,
4267
uint32_t descriptorCopyCount,
4268
const VkCopyDescriptorSet* pDescriptorCopies);
4270
VKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer(
4272
const VkFramebufferCreateInfo* pCreateInfo,
4273
const VkAllocationCallbacks* pAllocator,
4274
VkFramebuffer* pFramebuffer);
4276
VKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer(
4278
VkFramebuffer framebuffer,
4279
const VkAllocationCallbacks* pAllocator);
4281
VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass(
4283
const VkRenderPassCreateInfo* pCreateInfo,
4284
const VkAllocationCallbacks* pAllocator,
4285
VkRenderPass* pRenderPass);
4287
VKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass(
4289
VkRenderPass renderPass,
4290
const VkAllocationCallbacks* pAllocator);
4292
VKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity(
4294
VkRenderPass renderPass,
4295
VkExtent2D* pGranularity);
4297
VKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool(
4299
const VkCommandPoolCreateInfo* pCreateInfo,
4300
const VkAllocationCallbacks* pAllocator,
4301
VkCommandPool* pCommandPool);
4303
VKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool(
4305
VkCommandPool commandPool,
4306
const VkAllocationCallbacks* pAllocator);
4308
VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool(
4310
VkCommandPool commandPool,
4311
VkCommandPoolResetFlags flags);
4313
VKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers(
4315
const VkCommandBufferAllocateInfo* pAllocateInfo,
4316
VkCommandBuffer* pCommandBuffers);
4318
VKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers(
4320
VkCommandPool commandPool,
4321
uint32_t commandBufferCount,
4322
const VkCommandBuffer* pCommandBuffers);
4324
VKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer(
4325
VkCommandBuffer commandBuffer,
4326
const VkCommandBufferBeginInfo* pBeginInfo);
4328
VKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer(
4329
VkCommandBuffer commandBuffer);
4331
VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer(
4332
VkCommandBuffer commandBuffer,
4333
VkCommandBufferResetFlags flags);
4335
VKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline(
4336
VkCommandBuffer commandBuffer,
4337
VkPipelineBindPoint pipelineBindPoint,
4338
VkPipeline pipeline);
4340
VKAPI_ATTR void VKAPI_CALL vkCmdSetViewport(
4341
VkCommandBuffer commandBuffer,
4342
uint32_t firstViewport,
4343
uint32_t viewportCount,
4344
const VkViewport* pViewports);
4346
VKAPI_ATTR void VKAPI_CALL vkCmdSetScissor(
4347
VkCommandBuffer commandBuffer,
4348
uint32_t firstScissor,
4349
uint32_t scissorCount,
4350
const VkRect2D* pScissors);
4352
VKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth(
4353
VkCommandBuffer commandBuffer,
4356
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias(
4357
VkCommandBuffer commandBuffer,
4358
float depthBiasConstantFactor,
4359
float depthBiasClamp,
4360
float depthBiasSlopeFactor);
4362
VKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants(
4363
VkCommandBuffer commandBuffer,
4364
const float blendConstants[4]);
4366
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds(
4367
VkCommandBuffer commandBuffer,
4368
float minDepthBounds,
4369
float maxDepthBounds);
4371
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask(
4372
VkCommandBuffer commandBuffer,
4373
VkStencilFaceFlags faceMask,
4374
uint32_t compareMask);
4376
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask(
4377
VkCommandBuffer commandBuffer,
4378
VkStencilFaceFlags faceMask,
4379
uint32_t writeMask);
4381
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference(
4382
VkCommandBuffer commandBuffer,
4383
VkStencilFaceFlags faceMask,
4384
uint32_t reference);
4386
VKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets(
4387
VkCommandBuffer commandBuffer,
4388
VkPipelineBindPoint pipelineBindPoint,
4389
VkPipelineLayout layout,
4391
uint32_t descriptorSetCount,
4392
const VkDescriptorSet* pDescriptorSets,
4393
uint32_t dynamicOffsetCount,
4394
const uint32_t* pDynamicOffsets);
4396
VKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer(
4397
VkCommandBuffer commandBuffer,
4399
VkDeviceSize offset,
4400
VkIndexType indexType);
4402
VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers(
4403
VkCommandBuffer commandBuffer,
4404
uint32_t firstBinding,
4405
uint32_t bindingCount,
4406
const VkBuffer* pBuffers,
4407
const VkDeviceSize* pOffsets);
4409
VKAPI_ATTR void VKAPI_CALL vkCmdDraw(
4410
VkCommandBuffer commandBuffer,
4411
uint32_t vertexCount,
4412
uint32_t instanceCount,
4413
uint32_t firstVertex,
4414
uint32_t firstInstance);
4416
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed(
4417
VkCommandBuffer commandBuffer,
4418
uint32_t indexCount,
4419
uint32_t instanceCount,
4420
uint32_t firstIndex,
4421
int32_t vertexOffset,
4422
uint32_t firstInstance);
4424
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect(
4425
VkCommandBuffer commandBuffer,
4427
VkDeviceSize offset,
4431
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect(
4432
VkCommandBuffer commandBuffer,
4434
VkDeviceSize offset,
4438
VKAPI_ATTR void VKAPI_CALL vkCmdDispatch(
4439
VkCommandBuffer commandBuffer,
4440
uint32_t groupCountX,
4441
uint32_t groupCountY,
4442
uint32_t groupCountZ);
4444
VKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect(
4445
VkCommandBuffer commandBuffer,
4447
VkDeviceSize offset);
4449
VKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer(
4450
VkCommandBuffer commandBuffer,
4453
uint32_t regionCount,
4454
const VkBufferCopy* pRegions);
4456
VKAPI_ATTR void VKAPI_CALL vkCmdCopyImage(
4457
VkCommandBuffer commandBuffer,
4459
VkImageLayout srcImageLayout,
4461
VkImageLayout dstImageLayout,
4462
uint32_t regionCount,
4463
const VkImageCopy* pRegions);
4465
VKAPI_ATTR void VKAPI_CALL vkCmdBlitImage(
4466
VkCommandBuffer commandBuffer,
4468
VkImageLayout srcImageLayout,
4470
VkImageLayout dstImageLayout,
4471
uint32_t regionCount,
4472
const VkImageBlit* pRegions,
4475
VKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage(
4476
VkCommandBuffer commandBuffer,
4479
VkImageLayout dstImageLayout,
4480
uint32_t regionCount,
4481
const VkBufferImageCopy* pRegions);
4483
VKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer(
4484
VkCommandBuffer commandBuffer,
4486
VkImageLayout srcImageLayout,
4488
uint32_t regionCount,
4489
const VkBufferImageCopy* pRegions);
4491
VKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer(
4492
VkCommandBuffer commandBuffer,
4494
VkDeviceSize dstOffset,
4495
VkDeviceSize dataSize,
4498
VKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer(
4499
VkCommandBuffer commandBuffer,
4501
VkDeviceSize dstOffset,
4505
VKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage(
4506
VkCommandBuffer commandBuffer,
4508
VkImageLayout imageLayout,
4509
const VkClearColorValue* pColor,
4510
uint32_t rangeCount,
4511
const VkImageSubresourceRange* pRanges);
4513
VKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage(
4514
VkCommandBuffer commandBuffer,
4516
VkImageLayout imageLayout,
4517
const VkClearDepthStencilValue* pDepthStencil,
4518
uint32_t rangeCount,
4519
const VkImageSubresourceRange* pRanges);
4521
VKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments(
4522
VkCommandBuffer commandBuffer,
4523
uint32_t attachmentCount,
4524
const VkClearAttachment* pAttachments,
4526
const VkClearRect* pRects);
4528
VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage(
4529
VkCommandBuffer commandBuffer,
4531
VkImageLayout srcImageLayout,
4533
VkImageLayout dstImageLayout,
4534
uint32_t regionCount,
4535
const VkImageResolve* pRegions);
4537
VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent(
4538
VkCommandBuffer commandBuffer,
4540
VkPipelineStageFlags stageMask);
4542
VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent(
4543
VkCommandBuffer commandBuffer,
4545
VkPipelineStageFlags stageMask);
4547
VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents(
4548
VkCommandBuffer commandBuffer,
4549
uint32_t eventCount,
4550
const VkEvent* pEvents,
4551
VkPipelineStageFlags srcStageMask,
4552
VkPipelineStageFlags dstStageMask,
4553
uint32_t memoryBarrierCount,
4554
const VkMemoryBarrier* pMemoryBarriers,
4555
uint32_t bufferMemoryBarrierCount,
4556
const VkBufferMemoryBarrier* pBufferMemoryBarriers,
4557
uint32_t imageMemoryBarrierCount,
4558
const VkImageMemoryBarrier* pImageMemoryBarriers);
4560
VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier(
4561
VkCommandBuffer commandBuffer,
4562
VkPipelineStageFlags srcStageMask,
4563
VkPipelineStageFlags dstStageMask,
4564
VkDependencyFlags dependencyFlags,
4565
uint32_t memoryBarrierCount,
4566
const VkMemoryBarrier* pMemoryBarriers,
4567
uint32_t bufferMemoryBarrierCount,
4568
const VkBufferMemoryBarrier* pBufferMemoryBarriers,
4569
uint32_t imageMemoryBarrierCount,
4570
const VkImageMemoryBarrier* pImageMemoryBarriers);
4572
VKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery(
4573
VkCommandBuffer commandBuffer,
4574
VkQueryPool queryPool,
4576
VkQueryControlFlags flags);
4578
VKAPI_ATTR void VKAPI_CALL vkCmdEndQuery(
4579
VkCommandBuffer commandBuffer,
4580
VkQueryPool queryPool,
4583
VKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool(
4584
VkCommandBuffer commandBuffer,
4585
VkQueryPool queryPool,
4586
uint32_t firstQuery,
4587
uint32_t queryCount);
4589
VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp(
4590
VkCommandBuffer commandBuffer,
4591
VkPipelineStageFlagBits pipelineStage,
4592
VkQueryPool queryPool,
4595
VKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults(
4596
VkCommandBuffer commandBuffer,
4597
VkQueryPool queryPool,
4598
uint32_t firstQuery,
4599
uint32_t queryCount,
4601
VkDeviceSize dstOffset,
4602
VkDeviceSize stride,
4603
VkQueryResultFlags flags);
4605
VKAPI_ATTR void VKAPI_CALL vkCmdPushConstants(
4606
VkCommandBuffer commandBuffer,
4607
VkPipelineLayout layout,
4608
VkShaderStageFlags stageFlags,
4611
const void* pValues);
4613
VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass(
4614
VkCommandBuffer commandBuffer,
4615
const VkRenderPassBeginInfo* pRenderPassBegin,
4616
VkSubpassContents contents);
4618
VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass(
4619
VkCommandBuffer commandBuffer,
4620
VkSubpassContents contents);
4622
VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass(
4623
VkCommandBuffer commandBuffer);
4625
VKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands(
4626
VkCommandBuffer commandBuffer,
4627
uint32_t commandBufferCount,
4628
const VkCommandBuffer* pCommandBuffers);
4632
#define VK_VERSION_1_1 1
4633
// Vulkan 1.1 version number
4634
#define VK_API_VERSION_1_1 VK_MAKE_API_VERSION(0, 1, 1, 0)// Patch version should always be set to 0
4636
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSamplerYcbcrConversion)
4637
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplate)
4638
#define VK_MAX_DEVICE_GROUP_SIZE 32U
4639
#define VK_LUID_SIZE 8U
4640
#define VK_QUEUE_FAMILY_EXTERNAL (~1U)
4642
typedef enum VkPointClippingBehavior {
4643
VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES = 0,
4644
VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY = 1,
4645
VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,
4646
VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY,
4647
VK_POINT_CLIPPING_BEHAVIOR_MAX_ENUM = 0x7FFFFFFF
4648
} VkPointClippingBehavior;
4650
typedef enum VkTessellationDomainOrigin {
4651
VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT = 0,
4652
VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT = 1,
4653
VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,
4654
VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT,
4655
VK_TESSELLATION_DOMAIN_ORIGIN_MAX_ENUM = 0x7FFFFFFF
4656
} VkTessellationDomainOrigin;
4658
typedef enum VkSamplerYcbcrModelConversion {
4659
VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY = 0,
4660
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY = 1,
4661
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 = 2,
4662
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 = 3,
4663
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 = 4,
4664
VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,
4665
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY,
4666
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709,
4667
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601,
4668
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020,
4669
VK_SAMPLER_YCBCR_MODEL_CONVERSION_MAX_ENUM = 0x7FFFFFFF
4670
} VkSamplerYcbcrModelConversion;
4672
typedef enum VkSamplerYcbcrRange {
4673
VK_SAMPLER_YCBCR_RANGE_ITU_FULL = 0,
4674
VK_SAMPLER_YCBCR_RANGE_ITU_NARROW = 1,
4675
VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,
4676
VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW,
4677
VK_SAMPLER_YCBCR_RANGE_MAX_ENUM = 0x7FFFFFFF
4678
} VkSamplerYcbcrRange;
4680
typedef enum VkChromaLocation {
4681
VK_CHROMA_LOCATION_COSITED_EVEN = 0,
4682
VK_CHROMA_LOCATION_MIDPOINT = 1,
4683
VK_CHROMA_LOCATION_COSITED_EVEN_KHR = VK_CHROMA_LOCATION_COSITED_EVEN,
4684
VK_CHROMA_LOCATION_MIDPOINT_KHR = VK_CHROMA_LOCATION_MIDPOINT,
4685
VK_CHROMA_LOCATION_MAX_ENUM = 0x7FFFFFFF
4688
typedef enum VkDescriptorUpdateTemplateType {
4689
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET = 0,
4690
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1,
4691
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,
4692
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM = 0x7FFFFFFF
4693
} VkDescriptorUpdateTemplateType;
4695
typedef enum VkSubgroupFeatureFlagBits {
4696
VK_SUBGROUP_FEATURE_BASIC_BIT = 0x00000001,
4697
VK_SUBGROUP_FEATURE_VOTE_BIT = 0x00000002,
4698
VK_SUBGROUP_FEATURE_ARITHMETIC_BIT = 0x00000004,
4699
VK_SUBGROUP_FEATURE_BALLOT_BIT = 0x00000008,
4700
VK_SUBGROUP_FEATURE_SHUFFLE_BIT = 0x00000010,
4701
VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT = 0x00000020,
4702
VK_SUBGROUP_FEATURE_CLUSTERED_BIT = 0x00000040,
4703
VK_SUBGROUP_FEATURE_QUAD_BIT = 0x00000080,
4704
VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = 0x00000100,
4705
VK_SUBGROUP_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4706
} VkSubgroupFeatureFlagBits;
4707
typedef VkFlags VkSubgroupFeatureFlags;
4709
typedef enum VkPeerMemoryFeatureFlagBits {
4710
VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT = 0x00000001,
4711
VK_PEER_MEMORY_FEATURE_COPY_DST_BIT = 0x00000002,
4712
VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT = 0x00000004,
4713
VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT = 0x00000008,
4714
VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR = VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT,
4715
VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR = VK_PEER_MEMORY_FEATURE_COPY_DST_BIT,
4716
VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR = VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT,
4717
VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR = VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT,
4718
VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4719
} VkPeerMemoryFeatureFlagBits;
4720
typedef VkFlags VkPeerMemoryFeatureFlags;
4722
typedef enum VkMemoryAllocateFlagBits {
4723
VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT = 0x00000001,
4724
VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT = 0x00000002,
4725
VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT = 0x00000004,
4726
VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT,
4727
VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT,
4728
VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT,
4729
VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4730
} VkMemoryAllocateFlagBits;
4731
typedef VkFlags VkMemoryAllocateFlags;
4732
typedef VkFlags VkCommandPoolTrimFlags;
4733
typedef VkFlags VkDescriptorUpdateTemplateCreateFlags;
4735
typedef enum VkExternalMemoryHandleTypeFlagBits {
4736
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,
4737
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,
4738
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,
4739
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT = 0x00000008,
4740
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT = 0x00000010,
4741
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT = 0x00000020,
4742
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT = 0x00000040,
4743
VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT = 0x00000200,
4744
VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID = 0x00000400,
4745
VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT = 0x00000080,
4746
VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT = 0x00000100,
4747
VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA = 0x00000800,
4748
VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV = 0x00001000,
4749
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT,
4750
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,
4751
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
4752
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,
4753
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,
4754
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT,
4755
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT,
4756
VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4757
} VkExternalMemoryHandleTypeFlagBits;
4758
typedef VkFlags VkExternalMemoryHandleTypeFlags;
4760
typedef enum VkExternalMemoryFeatureFlagBits {
4761
VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT = 0x00000001,
4762
VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT = 0x00000002,
4763
VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT = 0x00000004,
4764
VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT,
4765
VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT,
4766
VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT,
4767
VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4768
} VkExternalMemoryFeatureFlagBits;
4769
typedef VkFlags VkExternalMemoryFeatureFlags;
4771
typedef enum VkExternalFenceHandleTypeFlagBits {
4772
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,
4773
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,
4774
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,
4775
VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT = 0x00000008,
4776
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT,
4777
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
4778
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
4779
VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR = VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT,
4780
VK_EXTERNAL_FENCE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4781
} VkExternalFenceHandleTypeFlagBits;
4782
typedef VkFlags VkExternalFenceHandleTypeFlags;
4784
typedef enum VkExternalFenceFeatureFlagBits {
4785
VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT = 0x00000001,
4786
VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT = 0x00000002,
4787
VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT,
4788
VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT,
4789
VK_EXTERNAL_FENCE_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4790
} VkExternalFenceFeatureFlagBits;
4791
typedef VkFlags VkExternalFenceFeatureFlags;
4793
typedef enum VkFenceImportFlagBits {
4794
VK_FENCE_IMPORT_TEMPORARY_BIT = 0x00000001,
4795
VK_FENCE_IMPORT_TEMPORARY_BIT_KHR = VK_FENCE_IMPORT_TEMPORARY_BIT,
4796
VK_FENCE_IMPORT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4797
} VkFenceImportFlagBits;
4798
typedef VkFlags VkFenceImportFlags;
4800
typedef enum VkSemaphoreImportFlagBits {
4801
VK_SEMAPHORE_IMPORT_TEMPORARY_BIT = 0x00000001,
4802
VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR = VK_SEMAPHORE_IMPORT_TEMPORARY_BIT,
4803
VK_SEMAPHORE_IMPORT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4804
} VkSemaphoreImportFlagBits;
4805
typedef VkFlags VkSemaphoreImportFlags;
4807
typedef enum VkExternalSemaphoreHandleTypeFlagBits {
4808
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT = 0x00000001,
4809
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 0x00000002,
4810
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 0x00000004,
4811
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT = 0x00000008,
4812
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT = 0x00000010,
4813
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA = 0x00000080,
4814
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,
4815
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT,
4816
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
4817
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
4818
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,
4819
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT,
4820
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4821
} VkExternalSemaphoreHandleTypeFlagBits;
4822
typedef VkFlags VkExternalSemaphoreHandleTypeFlags;
4824
typedef enum VkExternalSemaphoreFeatureFlagBits {
4825
VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT = 0x00000001,
4826
VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT = 0x00000002,
4827
VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT,
4828
VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR = VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT,
4829
VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
4830
} VkExternalSemaphoreFeatureFlagBits;
4831
typedef VkFlags VkExternalSemaphoreFeatureFlags;
4832
typedef struct VkPhysicalDeviceSubgroupProperties {
4833
VkStructureType sType;
4835
uint32_t subgroupSize;
4836
VkShaderStageFlags supportedStages;
4837
VkSubgroupFeatureFlags supportedOperations;
4838
VkBool32 quadOperationsInAllStages;
4839
} VkPhysicalDeviceSubgroupProperties;
4841
typedef struct VkBindBufferMemoryInfo {
4842
VkStructureType sType;
4845
VkDeviceMemory memory;
4846
VkDeviceSize memoryOffset;
4847
} VkBindBufferMemoryInfo;
4849
typedef struct VkBindImageMemoryInfo {
4850
VkStructureType sType;
4853
VkDeviceMemory memory;
4854
VkDeviceSize memoryOffset;
4855
} VkBindImageMemoryInfo;
4857
typedef struct VkPhysicalDevice16BitStorageFeatures {
4858
VkStructureType sType;
4860
VkBool32 storageBuffer16BitAccess;
4861
VkBool32 uniformAndStorageBuffer16BitAccess;
4862
VkBool32 storagePushConstant16;
4863
VkBool32 storageInputOutput16;
4864
} VkPhysicalDevice16BitStorageFeatures;
4866
typedef struct VkMemoryDedicatedRequirements {
4867
VkStructureType sType;
4869
VkBool32 prefersDedicatedAllocation;
4870
VkBool32 requiresDedicatedAllocation;
4871
} VkMemoryDedicatedRequirements;
4873
typedef struct VkMemoryDedicatedAllocateInfo {
4874
VkStructureType sType;
4878
} VkMemoryDedicatedAllocateInfo;
4880
typedef struct VkMemoryAllocateFlagsInfo {
4881
VkStructureType sType;
4883
VkMemoryAllocateFlags flags;
4884
uint32_t deviceMask;
4885
} VkMemoryAllocateFlagsInfo;
4887
typedef struct VkDeviceGroupRenderPassBeginInfo {
4888
VkStructureType sType;
4890
uint32_t deviceMask;
4891
uint32_t deviceRenderAreaCount;
4892
const VkRect2D* pDeviceRenderAreas;
4893
} VkDeviceGroupRenderPassBeginInfo;
4895
typedef struct VkDeviceGroupCommandBufferBeginInfo {
4896
VkStructureType sType;
4898
uint32_t deviceMask;
4899
} VkDeviceGroupCommandBufferBeginInfo;
4901
typedef struct VkDeviceGroupSubmitInfo {
4902
VkStructureType sType;
4904
uint32_t waitSemaphoreCount;
4905
const uint32_t* pWaitSemaphoreDeviceIndices;
4906
uint32_t commandBufferCount;
4907
const uint32_t* pCommandBufferDeviceMasks;
4908
uint32_t signalSemaphoreCount;
4909
const uint32_t* pSignalSemaphoreDeviceIndices;
4910
} VkDeviceGroupSubmitInfo;
4912
typedef struct VkDeviceGroupBindSparseInfo {
4913
VkStructureType sType;
4915
uint32_t resourceDeviceIndex;
4916
uint32_t memoryDeviceIndex;
4917
} VkDeviceGroupBindSparseInfo;
4919
typedef struct VkBindBufferMemoryDeviceGroupInfo {
4920
VkStructureType sType;
4922
uint32_t deviceIndexCount;
4923
const uint32_t* pDeviceIndices;
4924
} VkBindBufferMemoryDeviceGroupInfo;
4926
typedef struct VkBindImageMemoryDeviceGroupInfo {
4927
VkStructureType sType;
4929
uint32_t deviceIndexCount;
4930
const uint32_t* pDeviceIndices;
4931
uint32_t splitInstanceBindRegionCount;
4932
const VkRect2D* pSplitInstanceBindRegions;
4933
} VkBindImageMemoryDeviceGroupInfo;
4935
typedef struct VkPhysicalDeviceGroupProperties {
4936
VkStructureType sType;
4938
uint32_t physicalDeviceCount;
4939
VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE];
4940
VkBool32 subsetAllocation;
4941
} VkPhysicalDeviceGroupProperties;
4943
typedef struct VkDeviceGroupDeviceCreateInfo {
4944
VkStructureType sType;
4946
uint32_t physicalDeviceCount;
4947
const VkPhysicalDevice* pPhysicalDevices;
4948
} VkDeviceGroupDeviceCreateInfo;
4950
typedef struct VkBufferMemoryRequirementsInfo2 {
4951
VkStructureType sType;
4954
} VkBufferMemoryRequirementsInfo2;
4956
typedef struct VkImageMemoryRequirementsInfo2 {
4957
VkStructureType sType;
4960
} VkImageMemoryRequirementsInfo2;
4962
typedef struct VkImageSparseMemoryRequirementsInfo2 {
4963
VkStructureType sType;
4966
} VkImageSparseMemoryRequirementsInfo2;
4968
typedef struct VkMemoryRequirements2 {
4969
VkStructureType sType;
4971
VkMemoryRequirements memoryRequirements;
4972
} VkMemoryRequirements2;
4974
typedef struct VkSparseImageMemoryRequirements2 {
4975
VkStructureType sType;
4977
VkSparseImageMemoryRequirements memoryRequirements;
4978
} VkSparseImageMemoryRequirements2;
4980
typedef struct VkPhysicalDeviceFeatures2 {
4981
VkStructureType sType;
4983
VkPhysicalDeviceFeatures features;
4984
} VkPhysicalDeviceFeatures2;
4986
typedef struct VkPhysicalDeviceProperties2 {
4987
VkStructureType sType;
4989
VkPhysicalDeviceProperties properties;
4990
} VkPhysicalDeviceProperties2;
4992
typedef struct VkFormatProperties2 {
4993
VkStructureType sType;
4995
VkFormatProperties formatProperties;
4996
} VkFormatProperties2;
4998
typedef struct VkImageFormatProperties2 {
4999
VkStructureType sType;
5001
VkImageFormatProperties imageFormatProperties;
5002
} VkImageFormatProperties2;
5004
typedef struct VkPhysicalDeviceImageFormatInfo2 {
5005
VkStructureType sType;
5009
VkImageTiling tiling;
5010
VkImageUsageFlags usage;
5011
VkImageCreateFlags flags;
5012
} VkPhysicalDeviceImageFormatInfo2;
5014
typedef struct VkQueueFamilyProperties2 {
5015
VkStructureType sType;
5017
VkQueueFamilyProperties queueFamilyProperties;
5018
} VkQueueFamilyProperties2;
5020
typedef struct VkPhysicalDeviceMemoryProperties2 {
5021
VkStructureType sType;
5023
VkPhysicalDeviceMemoryProperties memoryProperties;
5024
} VkPhysicalDeviceMemoryProperties2;
5026
typedef struct VkSparseImageFormatProperties2 {
5027
VkStructureType sType;
5029
VkSparseImageFormatProperties properties;
5030
} VkSparseImageFormatProperties2;
5032
typedef struct VkPhysicalDeviceSparseImageFormatInfo2 {
5033
VkStructureType sType;
5037
VkSampleCountFlagBits samples;
5038
VkImageUsageFlags usage;
5039
VkImageTiling tiling;
5040
} VkPhysicalDeviceSparseImageFormatInfo2;
5042
typedef struct VkPhysicalDevicePointClippingProperties {
5043
VkStructureType sType;
5045
VkPointClippingBehavior pointClippingBehavior;
5046
} VkPhysicalDevicePointClippingProperties;
5048
typedef struct VkInputAttachmentAspectReference {
5050
uint32_t inputAttachmentIndex;
5051
VkImageAspectFlags aspectMask;
5052
} VkInputAttachmentAspectReference;
5054
typedef struct VkRenderPassInputAttachmentAspectCreateInfo {
5055
VkStructureType sType;
5057
uint32_t aspectReferenceCount;
5058
const VkInputAttachmentAspectReference* pAspectReferences;
5059
} VkRenderPassInputAttachmentAspectCreateInfo;
5061
typedef struct VkImageViewUsageCreateInfo {
5062
VkStructureType sType;
5064
VkImageUsageFlags usage;
5065
} VkImageViewUsageCreateInfo;
5067
typedef struct VkPipelineTessellationDomainOriginStateCreateInfo {
5068
VkStructureType sType;
5070
VkTessellationDomainOrigin domainOrigin;
5071
} VkPipelineTessellationDomainOriginStateCreateInfo;
5073
typedef struct VkRenderPassMultiviewCreateInfo {
5074
VkStructureType sType;
5076
uint32_t subpassCount;
5077
const uint32_t* pViewMasks;
5078
uint32_t dependencyCount;
5079
const int32_t* pViewOffsets;
5080
uint32_t correlationMaskCount;
5081
const uint32_t* pCorrelationMasks;
5082
} VkRenderPassMultiviewCreateInfo;
5084
typedef struct VkPhysicalDeviceMultiviewFeatures {
5085
VkStructureType sType;
5088
VkBool32 multiviewGeometryShader;
5089
VkBool32 multiviewTessellationShader;
5090
} VkPhysicalDeviceMultiviewFeatures;
5092
typedef struct VkPhysicalDeviceMultiviewProperties {
5093
VkStructureType sType;
5095
uint32_t maxMultiviewViewCount;
5096
uint32_t maxMultiviewInstanceIndex;
5097
} VkPhysicalDeviceMultiviewProperties;
5099
typedef struct VkPhysicalDeviceVariablePointersFeatures {
5100
VkStructureType sType;
5102
VkBool32 variablePointersStorageBuffer;
5103
VkBool32 variablePointers;
5104
} VkPhysicalDeviceVariablePointersFeatures;
5106
typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeatures;
5108
typedef struct VkPhysicalDeviceProtectedMemoryFeatures {
5109
VkStructureType sType;
5111
VkBool32 protectedMemory;
5112
} VkPhysicalDeviceProtectedMemoryFeatures;
5114
typedef struct VkPhysicalDeviceProtectedMemoryProperties {
5115
VkStructureType sType;
5117
VkBool32 protectedNoFault;
5118
} VkPhysicalDeviceProtectedMemoryProperties;
5120
typedef struct VkDeviceQueueInfo2 {
5121
VkStructureType sType;
5123
VkDeviceQueueCreateFlags flags;
5124
uint32_t queueFamilyIndex;
5125
uint32_t queueIndex;
5126
} VkDeviceQueueInfo2;
5128
typedef struct VkProtectedSubmitInfo {
5129
VkStructureType sType;
5131
VkBool32 protectedSubmit;
5132
} VkProtectedSubmitInfo;
5134
typedef struct VkSamplerYcbcrConversionCreateInfo {
5135
VkStructureType sType;
5138
VkSamplerYcbcrModelConversion ycbcrModel;
5139
VkSamplerYcbcrRange ycbcrRange;
5140
VkComponentMapping components;
5141
VkChromaLocation xChromaOffset;
5142
VkChromaLocation yChromaOffset;
5143
VkFilter chromaFilter;
5144
VkBool32 forceExplicitReconstruction;
5145
} VkSamplerYcbcrConversionCreateInfo;
5147
typedef struct VkSamplerYcbcrConversionInfo {
5148
VkStructureType sType;
5150
VkSamplerYcbcrConversion conversion;
5151
} VkSamplerYcbcrConversionInfo;
5153
typedef struct VkBindImagePlaneMemoryInfo {
5154
VkStructureType sType;
5156
VkImageAspectFlagBits planeAspect;
5157
} VkBindImagePlaneMemoryInfo;
5159
typedef struct VkImagePlaneMemoryRequirementsInfo {
5160
VkStructureType sType;
5162
VkImageAspectFlagBits planeAspect;
5163
} VkImagePlaneMemoryRequirementsInfo;
5165
typedef struct VkPhysicalDeviceSamplerYcbcrConversionFeatures {
5166
VkStructureType sType;
5168
VkBool32 samplerYcbcrConversion;
5169
} VkPhysicalDeviceSamplerYcbcrConversionFeatures;
5171
typedef struct VkSamplerYcbcrConversionImageFormatProperties {
5172
VkStructureType sType;
5174
uint32_t combinedImageSamplerDescriptorCount;
5175
} VkSamplerYcbcrConversionImageFormatProperties;
5177
typedef struct VkDescriptorUpdateTemplateEntry {
5178
uint32_t dstBinding;
5179
uint32_t dstArrayElement;
5180
uint32_t descriptorCount;
5181
VkDescriptorType descriptorType;
5184
} VkDescriptorUpdateTemplateEntry;
5186
typedef struct VkDescriptorUpdateTemplateCreateInfo {
5187
VkStructureType sType;
5189
VkDescriptorUpdateTemplateCreateFlags flags;
5190
uint32_t descriptorUpdateEntryCount;
5191
const VkDescriptorUpdateTemplateEntry* pDescriptorUpdateEntries;
5192
VkDescriptorUpdateTemplateType templateType;
5193
VkDescriptorSetLayout descriptorSetLayout;
5194
VkPipelineBindPoint pipelineBindPoint;
5195
VkPipelineLayout pipelineLayout;
5197
} VkDescriptorUpdateTemplateCreateInfo;
5199
typedef struct VkExternalMemoryProperties {
5200
VkExternalMemoryFeatureFlags externalMemoryFeatures;
5201
VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes;
5202
VkExternalMemoryHandleTypeFlags compatibleHandleTypes;
5203
} VkExternalMemoryProperties;
5205
typedef struct VkPhysicalDeviceExternalImageFormatInfo {
5206
VkStructureType sType;
5208
VkExternalMemoryHandleTypeFlagBits handleType;
5209
} VkPhysicalDeviceExternalImageFormatInfo;
5211
typedef struct VkExternalImageFormatProperties {
5212
VkStructureType sType;
5214
VkExternalMemoryProperties externalMemoryProperties;
5215
} VkExternalImageFormatProperties;
5217
typedef struct VkPhysicalDeviceExternalBufferInfo {
5218
VkStructureType sType;
5220
VkBufferCreateFlags flags;
5221
VkBufferUsageFlags usage;
5222
VkExternalMemoryHandleTypeFlagBits handleType;
5223
} VkPhysicalDeviceExternalBufferInfo;
5225
typedef struct VkExternalBufferProperties {
5226
VkStructureType sType;
5228
VkExternalMemoryProperties externalMemoryProperties;
5229
} VkExternalBufferProperties;
5231
typedef struct VkPhysicalDeviceIDProperties {
5232
VkStructureType sType;
5234
uint8_t deviceUUID[VK_UUID_SIZE];
5235
uint8_t driverUUID[VK_UUID_SIZE];
5236
uint8_t deviceLUID[VK_LUID_SIZE];
5237
uint32_t deviceNodeMask;
5238
VkBool32 deviceLUIDValid;
5239
} VkPhysicalDeviceIDProperties;
5241
typedef struct VkExternalMemoryImageCreateInfo {
5242
VkStructureType sType;
5244
VkExternalMemoryHandleTypeFlags handleTypes;
5245
} VkExternalMemoryImageCreateInfo;
5247
typedef struct VkExternalMemoryBufferCreateInfo {
5248
VkStructureType sType;
5250
VkExternalMemoryHandleTypeFlags handleTypes;
5251
} VkExternalMemoryBufferCreateInfo;
5253
typedef struct VkExportMemoryAllocateInfo {
5254
VkStructureType sType;
5256
VkExternalMemoryHandleTypeFlags handleTypes;
5257
} VkExportMemoryAllocateInfo;
5259
typedef struct VkPhysicalDeviceExternalFenceInfo {
5260
VkStructureType sType;
5262
VkExternalFenceHandleTypeFlagBits handleType;
5263
} VkPhysicalDeviceExternalFenceInfo;
5265
typedef struct VkExternalFenceProperties {
5266
VkStructureType sType;
5268
VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes;
5269
VkExternalFenceHandleTypeFlags compatibleHandleTypes;
5270
VkExternalFenceFeatureFlags externalFenceFeatures;
5271
} VkExternalFenceProperties;
5273
typedef struct VkExportFenceCreateInfo {
5274
VkStructureType sType;
5276
VkExternalFenceHandleTypeFlags handleTypes;
5277
} VkExportFenceCreateInfo;
5279
typedef struct VkExportSemaphoreCreateInfo {
5280
VkStructureType sType;
5282
VkExternalSemaphoreHandleTypeFlags handleTypes;
5283
} VkExportSemaphoreCreateInfo;
5285
typedef struct VkPhysicalDeviceExternalSemaphoreInfo {
5286
VkStructureType sType;
5288
VkExternalSemaphoreHandleTypeFlagBits handleType;
5289
} VkPhysicalDeviceExternalSemaphoreInfo;
5291
typedef struct VkExternalSemaphoreProperties {
5292
VkStructureType sType;
5294
VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes;
5295
VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes;
5296
VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures;
5297
} VkExternalSemaphoreProperties;
5299
typedef struct VkPhysicalDeviceMaintenance3Properties {
5300
VkStructureType sType;
5302
uint32_t maxPerSetDescriptors;
5303
VkDeviceSize maxMemoryAllocationSize;
5304
} VkPhysicalDeviceMaintenance3Properties;
5306
typedef struct VkDescriptorSetLayoutSupport {
5307
VkStructureType sType;
5310
} VkDescriptorSetLayoutSupport;
5312
typedef struct VkPhysicalDeviceShaderDrawParametersFeatures {
5313
VkStructureType sType;
5315
VkBool32 shaderDrawParameters;
5316
} VkPhysicalDeviceShaderDrawParametersFeatures;
5318
typedef VkPhysicalDeviceShaderDrawParametersFeatures VkPhysicalDeviceShaderDrawParameterFeatures;
5320
typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceVersion)(uint32_t* pApiVersion);
5321
typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos);
5322
typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos);
5323
typedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeatures)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
5324
typedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMask)(VkCommandBuffer commandBuffer, uint32_t deviceMask);
5325
typedef void (VKAPI_PTR *PFN_vkCmdDispatchBase)(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);
5326
typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroups)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
5327
typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements2)(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);
5328
typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements2)(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);
5329
typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2)(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
5330
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures);
5331
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties);
5332
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties);
5333
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties);
5334
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties);
5335
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
5336
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties);
5337
typedef void (VKAPI_PTR *PFN_vkTrimCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags);
5338
typedef void (VKAPI_PTR *PFN_vkGetDeviceQueue2)(VkDevice device, const VkDeviceQueueInfo2* pQueueInfo, VkQueue* pQueue);
5339
typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversion)(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion);
5340
typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversion)(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator);
5341
typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplate)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
5342
typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplate)(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);
5343
typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplate)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData);
5344
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties);
5345
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFenceProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties);
5346
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
5347
typedef void (VKAPI_PTR *PFN_vkGetDescriptorSetLayoutSupport)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport);
5349
#ifndef VK_NO_PROTOTYPES
5350
VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceVersion(
5351
uint32_t* pApiVersion);
5353
VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2(
5355
uint32_t bindInfoCount,
5356
const VkBindBufferMemoryInfo* pBindInfos);
5358
VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2(
5360
uint32_t bindInfoCount,
5361
const VkBindImageMemoryInfo* pBindInfos);
5363
VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeatures(
5366
uint32_t localDeviceIndex,
5367
uint32_t remoteDeviceIndex,
5368
VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
5370
VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMask(
5371
VkCommandBuffer commandBuffer,
5372
uint32_t deviceMask);
5374
VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBase(
5375
VkCommandBuffer commandBuffer,
5376
uint32_t baseGroupX,
5377
uint32_t baseGroupY,
5378
uint32_t baseGroupZ,
5379
uint32_t groupCountX,
5380
uint32_t groupCountY,
5381
uint32_t groupCountZ);
5383
VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroups(
5384
VkInstance instance,
5385
uint32_t* pPhysicalDeviceGroupCount,
5386
VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
5388
VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2(
5390
const VkImageMemoryRequirementsInfo2* pInfo,
5391
VkMemoryRequirements2* pMemoryRequirements);
5393
VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2(
5395
const VkBufferMemoryRequirementsInfo2* pInfo,
5396
VkMemoryRequirements2* pMemoryRequirements);
5398
VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2(
5400
const VkImageSparseMemoryRequirementsInfo2* pInfo,
5401
uint32_t* pSparseMemoryRequirementCount,
5402
VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
5404
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2(
5405
VkPhysicalDevice physicalDevice,
5406
VkPhysicalDeviceFeatures2* pFeatures);
5408
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2(
5409
VkPhysicalDevice physicalDevice,
5410
VkPhysicalDeviceProperties2* pProperties);
5412
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2(
5413
VkPhysicalDevice physicalDevice,
5415
VkFormatProperties2* pFormatProperties);
5417
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2(
5418
VkPhysicalDevice physicalDevice,
5419
const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
5420
VkImageFormatProperties2* pImageFormatProperties);
5422
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2(
5423
VkPhysicalDevice physicalDevice,
5424
uint32_t* pQueueFamilyPropertyCount,
5425
VkQueueFamilyProperties2* pQueueFamilyProperties);
5427
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2(
5428
VkPhysicalDevice physicalDevice,
5429
VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
5431
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2(
5432
VkPhysicalDevice physicalDevice,
5433
const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
5434
uint32_t* pPropertyCount,
5435
VkSparseImageFormatProperties2* pProperties);
5437
VKAPI_ATTR void VKAPI_CALL vkTrimCommandPool(
5439
VkCommandPool commandPool,
5440
VkCommandPoolTrimFlags flags);
5442
VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue2(
5444
const VkDeviceQueueInfo2* pQueueInfo,
5447
VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversion(
5449
const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
5450
const VkAllocationCallbacks* pAllocator,
5451
VkSamplerYcbcrConversion* pYcbcrConversion);
5453
VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversion(
5455
VkSamplerYcbcrConversion ycbcrConversion,
5456
const VkAllocationCallbacks* pAllocator);
5458
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplate(
5460
const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
5461
const VkAllocationCallbacks* pAllocator,
5462
VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
5464
VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplate(
5466
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
5467
const VkAllocationCallbacks* pAllocator);
5469
VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplate(
5471
VkDescriptorSet descriptorSet,
5472
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
5475
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferProperties(
5476
VkPhysicalDevice physicalDevice,
5477
const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
5478
VkExternalBufferProperties* pExternalBufferProperties);
5480
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFenceProperties(
5481
VkPhysicalDevice physicalDevice,
5482
const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
5483
VkExternalFenceProperties* pExternalFenceProperties);
5485
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphoreProperties(
5486
VkPhysicalDevice physicalDevice,
5487
const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
5488
VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
5490
VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupport(
5492
const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
5493
VkDescriptorSetLayoutSupport* pSupport);
5497
#define VK_VERSION_1_2 1
5498
// Vulkan 1.2 version number
5499
#define VK_API_VERSION_1_2 VK_MAKE_API_VERSION(0, 1, 2, 0)// Patch version should always be set to 0
5501
#define VK_MAX_DRIVER_NAME_SIZE 256U
5502
#define VK_MAX_DRIVER_INFO_SIZE 256U
5504
typedef enum VkDriverId {
5505
VK_DRIVER_ID_AMD_PROPRIETARY = 1,
5506
VK_DRIVER_ID_AMD_OPEN_SOURCE = 2,
5507
VK_DRIVER_ID_MESA_RADV = 3,
5508
VK_DRIVER_ID_NVIDIA_PROPRIETARY = 4,
5509
VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS = 5,
5510
VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA = 6,
5511
VK_DRIVER_ID_IMAGINATION_PROPRIETARY = 7,
5512
VK_DRIVER_ID_QUALCOMM_PROPRIETARY = 8,
5513
VK_DRIVER_ID_ARM_PROPRIETARY = 9,
5514
VK_DRIVER_ID_GOOGLE_SWIFTSHADER = 10,
5515
VK_DRIVER_ID_GGP_PROPRIETARY = 11,
5516
VK_DRIVER_ID_BROADCOM_PROPRIETARY = 12,
5517
VK_DRIVER_ID_MESA_LLVMPIPE = 13,
5518
VK_DRIVER_ID_MOLTENVK = 14,
5519
VK_DRIVER_ID_COREAVI_PROPRIETARY = 15,
5520
VK_DRIVER_ID_JUICE_PROPRIETARY = 16,
5521
VK_DRIVER_ID_VERISILICON_PROPRIETARY = 17,
5522
VK_DRIVER_ID_MESA_TURNIP = 18,
5523
VK_DRIVER_ID_MESA_V3DV = 19,
5524
VK_DRIVER_ID_MESA_PANVK = 20,
5525
VK_DRIVER_ID_SAMSUNG_PROPRIETARY = 21,
5526
VK_DRIVER_ID_MESA_VENUS = 22,
5527
VK_DRIVER_ID_AMD_PROPRIETARY_KHR = VK_DRIVER_ID_AMD_PROPRIETARY,
5528
VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR = VK_DRIVER_ID_AMD_OPEN_SOURCE,
5529
VK_DRIVER_ID_MESA_RADV_KHR = VK_DRIVER_ID_MESA_RADV,
5530
VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR = VK_DRIVER_ID_NVIDIA_PROPRIETARY,
5531
VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR = VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS,
5532
VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR = VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA,
5533
VK_DRIVER_ID_IMAGINATION_PROPRIETARY_KHR = VK_DRIVER_ID_IMAGINATION_PROPRIETARY,
5534
VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR = VK_DRIVER_ID_QUALCOMM_PROPRIETARY,
5535
VK_DRIVER_ID_ARM_PROPRIETARY_KHR = VK_DRIVER_ID_ARM_PROPRIETARY,
5536
VK_DRIVER_ID_GOOGLE_SWIFTSHADER_KHR = VK_DRIVER_ID_GOOGLE_SWIFTSHADER,
5537
VK_DRIVER_ID_GGP_PROPRIETARY_KHR = VK_DRIVER_ID_GGP_PROPRIETARY,
5538
VK_DRIVER_ID_BROADCOM_PROPRIETARY_KHR = VK_DRIVER_ID_BROADCOM_PROPRIETARY,
5539
VK_DRIVER_ID_MAX_ENUM = 0x7FFFFFFF
5542
typedef enum VkShaderFloatControlsIndependence {
5543
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY = 0,
5544
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL = 1,
5545
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE = 2,
5546
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY_KHR = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY,
5547
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL_KHR = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL,
5548
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE_KHR = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE,
5549
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_MAX_ENUM = 0x7FFFFFFF
5550
} VkShaderFloatControlsIndependence;
5552
typedef enum VkSamplerReductionMode {
5553
VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE = 0,
5554
VK_SAMPLER_REDUCTION_MODE_MIN = 1,
5555
VK_SAMPLER_REDUCTION_MODE_MAX = 2,
5556
VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE,
5557
VK_SAMPLER_REDUCTION_MODE_MIN_EXT = VK_SAMPLER_REDUCTION_MODE_MIN,
5558
VK_SAMPLER_REDUCTION_MODE_MAX_EXT = VK_SAMPLER_REDUCTION_MODE_MAX,
5559
VK_SAMPLER_REDUCTION_MODE_MAX_ENUM = 0x7FFFFFFF
5560
} VkSamplerReductionMode;
5562
typedef enum VkSemaphoreType {
5563
VK_SEMAPHORE_TYPE_BINARY = 0,
5564
VK_SEMAPHORE_TYPE_TIMELINE = 1,
5565
VK_SEMAPHORE_TYPE_BINARY_KHR = VK_SEMAPHORE_TYPE_BINARY,
5566
VK_SEMAPHORE_TYPE_TIMELINE_KHR = VK_SEMAPHORE_TYPE_TIMELINE,
5567
VK_SEMAPHORE_TYPE_MAX_ENUM = 0x7FFFFFFF
5570
typedef enum VkResolveModeFlagBits {
5571
VK_RESOLVE_MODE_NONE = 0,
5572
VK_RESOLVE_MODE_SAMPLE_ZERO_BIT = 0x00000001,
5573
VK_RESOLVE_MODE_AVERAGE_BIT = 0x00000002,
5574
VK_RESOLVE_MODE_MIN_BIT = 0x00000004,
5575
VK_RESOLVE_MODE_MAX_BIT = 0x00000008,
5576
VK_RESOLVE_MODE_NONE_KHR = VK_RESOLVE_MODE_NONE,
5577
VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT,
5578
VK_RESOLVE_MODE_AVERAGE_BIT_KHR = VK_RESOLVE_MODE_AVERAGE_BIT,
5579
VK_RESOLVE_MODE_MIN_BIT_KHR = VK_RESOLVE_MODE_MIN_BIT,
5580
VK_RESOLVE_MODE_MAX_BIT_KHR = VK_RESOLVE_MODE_MAX_BIT,
5581
VK_RESOLVE_MODE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
5582
} VkResolveModeFlagBits;
5583
typedef VkFlags VkResolveModeFlags;
5585
typedef enum VkDescriptorBindingFlagBits {
5586
VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT = 0x00000001,
5587
VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT = 0x00000002,
5588
VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT = 0x00000004,
5589
VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT = 0x00000008,
5590
VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT = VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT,
5591
VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT = VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT,
5592
VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT = VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT,
5593
VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT = VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT,
5594
VK_DESCRIPTOR_BINDING_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
5595
} VkDescriptorBindingFlagBits;
5596
typedef VkFlags VkDescriptorBindingFlags;
5598
typedef enum VkSemaphoreWaitFlagBits {
5599
VK_SEMAPHORE_WAIT_ANY_BIT = 0x00000001,
5600
VK_SEMAPHORE_WAIT_ANY_BIT_KHR = VK_SEMAPHORE_WAIT_ANY_BIT,
5601
VK_SEMAPHORE_WAIT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
5602
} VkSemaphoreWaitFlagBits;
5603
typedef VkFlags VkSemaphoreWaitFlags;
5604
typedef struct VkPhysicalDeviceVulkan11Features {
5605
VkStructureType sType;
5607
VkBool32 storageBuffer16BitAccess;
5608
VkBool32 uniformAndStorageBuffer16BitAccess;
5609
VkBool32 storagePushConstant16;
5610
VkBool32 storageInputOutput16;
5612
VkBool32 multiviewGeometryShader;
5613
VkBool32 multiviewTessellationShader;
5614
VkBool32 variablePointersStorageBuffer;
5615
VkBool32 variablePointers;
5616
VkBool32 protectedMemory;
5617
VkBool32 samplerYcbcrConversion;
5618
VkBool32 shaderDrawParameters;
5619
} VkPhysicalDeviceVulkan11Features;
5621
typedef struct VkPhysicalDeviceVulkan11Properties {
5622
VkStructureType sType;
5624
uint8_t deviceUUID[VK_UUID_SIZE];
5625
uint8_t driverUUID[VK_UUID_SIZE];
5626
uint8_t deviceLUID[VK_LUID_SIZE];
5627
uint32_t deviceNodeMask;
5628
VkBool32 deviceLUIDValid;
5629
uint32_t subgroupSize;
5630
VkShaderStageFlags subgroupSupportedStages;
5631
VkSubgroupFeatureFlags subgroupSupportedOperations;
5632
VkBool32 subgroupQuadOperationsInAllStages;
5633
VkPointClippingBehavior pointClippingBehavior;
5634
uint32_t maxMultiviewViewCount;
5635
uint32_t maxMultiviewInstanceIndex;
5636
VkBool32 protectedNoFault;
5637
uint32_t maxPerSetDescriptors;
5638
VkDeviceSize maxMemoryAllocationSize;
5639
} VkPhysicalDeviceVulkan11Properties;
5641
typedef struct VkPhysicalDeviceVulkan12Features {
5642
VkStructureType sType;
5644
VkBool32 samplerMirrorClampToEdge;
5645
VkBool32 drawIndirectCount;
5646
VkBool32 storageBuffer8BitAccess;
5647
VkBool32 uniformAndStorageBuffer8BitAccess;
5648
VkBool32 storagePushConstant8;
5649
VkBool32 shaderBufferInt64Atomics;
5650
VkBool32 shaderSharedInt64Atomics;
5651
VkBool32 shaderFloat16;
5652
VkBool32 shaderInt8;
5653
VkBool32 descriptorIndexing;
5654
VkBool32 shaderInputAttachmentArrayDynamicIndexing;
5655
VkBool32 shaderUniformTexelBufferArrayDynamicIndexing;
5656
VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;
5657
VkBool32 shaderUniformBufferArrayNonUniformIndexing;
5658
VkBool32 shaderSampledImageArrayNonUniformIndexing;
5659
VkBool32 shaderStorageBufferArrayNonUniformIndexing;
5660
VkBool32 shaderStorageImageArrayNonUniformIndexing;
5661
VkBool32 shaderInputAttachmentArrayNonUniformIndexing;
5662
VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;
5663
VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;
5664
VkBool32 descriptorBindingUniformBufferUpdateAfterBind;
5665
VkBool32 descriptorBindingSampledImageUpdateAfterBind;
5666
VkBool32 descriptorBindingStorageImageUpdateAfterBind;
5667
VkBool32 descriptorBindingStorageBufferUpdateAfterBind;
5668
VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;
5669
VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;
5670
VkBool32 descriptorBindingUpdateUnusedWhilePending;
5671
VkBool32 descriptorBindingPartiallyBound;
5672
VkBool32 descriptorBindingVariableDescriptorCount;
5673
VkBool32 runtimeDescriptorArray;
5674
VkBool32 samplerFilterMinmax;
5675
VkBool32 scalarBlockLayout;
5676
VkBool32 imagelessFramebuffer;
5677
VkBool32 uniformBufferStandardLayout;
5678
VkBool32 shaderSubgroupExtendedTypes;
5679
VkBool32 separateDepthStencilLayouts;
5680
VkBool32 hostQueryReset;
5681
VkBool32 timelineSemaphore;
5682
VkBool32 bufferDeviceAddress;
5683
VkBool32 bufferDeviceAddressCaptureReplay;
5684
VkBool32 bufferDeviceAddressMultiDevice;
5685
VkBool32 vulkanMemoryModel;
5686
VkBool32 vulkanMemoryModelDeviceScope;
5687
VkBool32 vulkanMemoryModelAvailabilityVisibilityChains;
5688
VkBool32 shaderOutputViewportIndex;
5689
VkBool32 shaderOutputLayer;
5690
VkBool32 subgroupBroadcastDynamicId;
5691
} VkPhysicalDeviceVulkan12Features;
5693
typedef struct VkConformanceVersion {
5698
} VkConformanceVersion;
5700
typedef struct VkPhysicalDeviceVulkan12Properties {
5701
VkStructureType sType;
5703
VkDriverId driverID;
5704
char driverName[VK_MAX_DRIVER_NAME_SIZE];
5705
char driverInfo[VK_MAX_DRIVER_INFO_SIZE];
5706
VkConformanceVersion conformanceVersion;
5707
VkShaderFloatControlsIndependence denormBehaviorIndependence;
5708
VkShaderFloatControlsIndependence roundingModeIndependence;
5709
VkBool32 shaderSignedZeroInfNanPreserveFloat16;
5710
VkBool32 shaderSignedZeroInfNanPreserveFloat32;
5711
VkBool32 shaderSignedZeroInfNanPreserveFloat64;
5712
VkBool32 shaderDenormPreserveFloat16;
5713
VkBool32 shaderDenormPreserveFloat32;
5714
VkBool32 shaderDenormPreserveFloat64;
5715
VkBool32 shaderDenormFlushToZeroFloat16;
5716
VkBool32 shaderDenormFlushToZeroFloat32;
5717
VkBool32 shaderDenormFlushToZeroFloat64;
5718
VkBool32 shaderRoundingModeRTEFloat16;
5719
VkBool32 shaderRoundingModeRTEFloat32;
5720
VkBool32 shaderRoundingModeRTEFloat64;
5721
VkBool32 shaderRoundingModeRTZFloat16;
5722
VkBool32 shaderRoundingModeRTZFloat32;
5723
VkBool32 shaderRoundingModeRTZFloat64;
5724
uint32_t maxUpdateAfterBindDescriptorsInAllPools;
5725
VkBool32 shaderUniformBufferArrayNonUniformIndexingNative;
5726
VkBool32 shaderSampledImageArrayNonUniformIndexingNative;
5727
VkBool32 shaderStorageBufferArrayNonUniformIndexingNative;
5728
VkBool32 shaderStorageImageArrayNonUniformIndexingNative;
5729
VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative;
5730
VkBool32 robustBufferAccessUpdateAfterBind;
5731
VkBool32 quadDivergentImplicitLod;
5732
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers;
5733
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers;
5734
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers;
5735
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages;
5736
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages;
5737
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments;
5738
uint32_t maxPerStageUpdateAfterBindResources;
5739
uint32_t maxDescriptorSetUpdateAfterBindSamplers;
5740
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers;
5741
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
5742
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers;
5743
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
5744
uint32_t maxDescriptorSetUpdateAfterBindSampledImages;
5745
uint32_t maxDescriptorSetUpdateAfterBindStorageImages;
5746
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments;
5747
VkResolveModeFlags supportedDepthResolveModes;
5748
VkResolveModeFlags supportedStencilResolveModes;
5749
VkBool32 independentResolveNone;
5750
VkBool32 independentResolve;
5751
VkBool32 filterMinmaxSingleComponentFormats;
5752
VkBool32 filterMinmaxImageComponentMapping;
5753
uint64_t maxTimelineSemaphoreValueDifference;
5754
VkSampleCountFlags framebufferIntegerColorSampleCounts;
5755
} VkPhysicalDeviceVulkan12Properties;
5757
typedef struct VkImageFormatListCreateInfo {
5758
VkStructureType sType;
5760
uint32_t viewFormatCount;
5761
const VkFormat* pViewFormats;
5762
} VkImageFormatListCreateInfo;
5764
typedef struct VkAttachmentDescription2 {
5765
VkStructureType sType;
5767
VkAttachmentDescriptionFlags flags;
5769
VkSampleCountFlagBits samples;
5770
VkAttachmentLoadOp loadOp;
5771
VkAttachmentStoreOp storeOp;
5772
VkAttachmentLoadOp stencilLoadOp;
5773
VkAttachmentStoreOp stencilStoreOp;
5774
VkImageLayout initialLayout;
5775
VkImageLayout finalLayout;
5776
} VkAttachmentDescription2;
5778
typedef struct VkAttachmentReference2 {
5779
VkStructureType sType;
5781
uint32_t attachment;
5782
VkImageLayout layout;
5783
VkImageAspectFlags aspectMask;
5784
} VkAttachmentReference2;
5786
typedef struct VkSubpassDescription2 {
5787
VkStructureType sType;
5789
VkSubpassDescriptionFlags flags;
5790
VkPipelineBindPoint pipelineBindPoint;
5792
uint32_t inputAttachmentCount;
5793
const VkAttachmentReference2* pInputAttachments;
5794
uint32_t colorAttachmentCount;
5795
const VkAttachmentReference2* pColorAttachments;
5796
const VkAttachmentReference2* pResolveAttachments;
5797
const VkAttachmentReference2* pDepthStencilAttachment;
5798
uint32_t preserveAttachmentCount;
5799
const uint32_t* pPreserveAttachments;
5800
} VkSubpassDescription2;
5802
typedef struct VkSubpassDependency2 {
5803
VkStructureType sType;
5805
uint32_t srcSubpass;
5806
uint32_t dstSubpass;
5807
VkPipelineStageFlags srcStageMask;
5808
VkPipelineStageFlags dstStageMask;
5809
VkAccessFlags srcAccessMask;
5810
VkAccessFlags dstAccessMask;
5811
VkDependencyFlags dependencyFlags;
5813
} VkSubpassDependency2;
5815
typedef struct VkRenderPassCreateInfo2 {
5816
VkStructureType sType;
5818
VkRenderPassCreateFlags flags;
5819
uint32_t attachmentCount;
5820
const VkAttachmentDescription2* pAttachments;
5821
uint32_t subpassCount;
5822
const VkSubpassDescription2* pSubpasses;
5823
uint32_t dependencyCount;
5824
const VkSubpassDependency2* pDependencies;
5825
uint32_t correlatedViewMaskCount;
5826
const uint32_t* pCorrelatedViewMasks;
5827
} VkRenderPassCreateInfo2;
5829
typedef struct VkSubpassBeginInfo {
5830
VkStructureType sType;
5832
VkSubpassContents contents;
5833
} VkSubpassBeginInfo;
5835
typedef struct VkSubpassEndInfo {
5836
VkStructureType sType;
5840
typedef struct VkPhysicalDevice8BitStorageFeatures {
5841
VkStructureType sType;
5843
VkBool32 storageBuffer8BitAccess;
5844
VkBool32 uniformAndStorageBuffer8BitAccess;
5845
VkBool32 storagePushConstant8;
5846
} VkPhysicalDevice8BitStorageFeatures;
5848
typedef struct VkPhysicalDeviceDriverProperties {
5849
VkStructureType sType;
5851
VkDriverId driverID;
5852
char driverName[VK_MAX_DRIVER_NAME_SIZE];
5853
char driverInfo[VK_MAX_DRIVER_INFO_SIZE];
5854
VkConformanceVersion conformanceVersion;
5855
} VkPhysicalDeviceDriverProperties;
5857
typedef struct VkPhysicalDeviceShaderAtomicInt64Features {
5858
VkStructureType sType;
5860
VkBool32 shaderBufferInt64Atomics;
5861
VkBool32 shaderSharedInt64Atomics;
5862
} VkPhysicalDeviceShaderAtomicInt64Features;
5864
typedef struct VkPhysicalDeviceShaderFloat16Int8Features {
5865
VkStructureType sType;
5867
VkBool32 shaderFloat16;
5868
VkBool32 shaderInt8;
5869
} VkPhysicalDeviceShaderFloat16Int8Features;
5871
typedef struct VkPhysicalDeviceFloatControlsProperties {
5872
VkStructureType sType;
5874
VkShaderFloatControlsIndependence denormBehaviorIndependence;
5875
VkShaderFloatControlsIndependence roundingModeIndependence;
5876
VkBool32 shaderSignedZeroInfNanPreserveFloat16;
5877
VkBool32 shaderSignedZeroInfNanPreserveFloat32;
5878
VkBool32 shaderSignedZeroInfNanPreserveFloat64;
5879
VkBool32 shaderDenormPreserveFloat16;
5880
VkBool32 shaderDenormPreserveFloat32;
5881
VkBool32 shaderDenormPreserveFloat64;
5882
VkBool32 shaderDenormFlushToZeroFloat16;
5883
VkBool32 shaderDenormFlushToZeroFloat32;
5884
VkBool32 shaderDenormFlushToZeroFloat64;
5885
VkBool32 shaderRoundingModeRTEFloat16;
5886
VkBool32 shaderRoundingModeRTEFloat32;
5887
VkBool32 shaderRoundingModeRTEFloat64;
5888
VkBool32 shaderRoundingModeRTZFloat16;
5889
VkBool32 shaderRoundingModeRTZFloat32;
5890
VkBool32 shaderRoundingModeRTZFloat64;
5891
} VkPhysicalDeviceFloatControlsProperties;
5893
typedef struct VkDescriptorSetLayoutBindingFlagsCreateInfo {
5894
VkStructureType sType;
5896
uint32_t bindingCount;
5897
const VkDescriptorBindingFlags* pBindingFlags;
5898
} VkDescriptorSetLayoutBindingFlagsCreateInfo;
5900
typedef struct VkPhysicalDeviceDescriptorIndexingFeatures {
5901
VkStructureType sType;
5903
VkBool32 shaderInputAttachmentArrayDynamicIndexing;
5904
VkBool32 shaderUniformTexelBufferArrayDynamicIndexing;
5905
VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;
5906
VkBool32 shaderUniformBufferArrayNonUniformIndexing;
5907
VkBool32 shaderSampledImageArrayNonUniformIndexing;
5908
VkBool32 shaderStorageBufferArrayNonUniformIndexing;
5909
VkBool32 shaderStorageImageArrayNonUniformIndexing;
5910
VkBool32 shaderInputAttachmentArrayNonUniformIndexing;
5911
VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;
5912
VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;
5913
VkBool32 descriptorBindingUniformBufferUpdateAfterBind;
5914
VkBool32 descriptorBindingSampledImageUpdateAfterBind;
5915
VkBool32 descriptorBindingStorageImageUpdateAfterBind;
5916
VkBool32 descriptorBindingStorageBufferUpdateAfterBind;
5917
VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;
5918
VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;
5919
VkBool32 descriptorBindingUpdateUnusedWhilePending;
5920
VkBool32 descriptorBindingPartiallyBound;
5921
VkBool32 descriptorBindingVariableDescriptorCount;
5922
VkBool32 runtimeDescriptorArray;
5923
} VkPhysicalDeviceDescriptorIndexingFeatures;
5925
typedef struct VkPhysicalDeviceDescriptorIndexingProperties {
5926
VkStructureType sType;
5928
uint32_t maxUpdateAfterBindDescriptorsInAllPools;
5929
VkBool32 shaderUniformBufferArrayNonUniformIndexingNative;
5930
VkBool32 shaderSampledImageArrayNonUniformIndexingNative;
5931
VkBool32 shaderStorageBufferArrayNonUniformIndexingNative;
5932
VkBool32 shaderStorageImageArrayNonUniformIndexingNative;
5933
VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative;
5934
VkBool32 robustBufferAccessUpdateAfterBind;
5935
VkBool32 quadDivergentImplicitLod;
5936
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers;
5937
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers;
5938
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers;
5939
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages;
5940
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages;
5941
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments;
5942
uint32_t maxPerStageUpdateAfterBindResources;
5943
uint32_t maxDescriptorSetUpdateAfterBindSamplers;
5944
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers;
5945
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
5946
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers;
5947
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
5948
uint32_t maxDescriptorSetUpdateAfterBindSampledImages;
5949
uint32_t maxDescriptorSetUpdateAfterBindStorageImages;
5950
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments;
5951
} VkPhysicalDeviceDescriptorIndexingProperties;
5953
typedef struct VkDescriptorSetVariableDescriptorCountAllocateInfo {
5954
VkStructureType sType;
5956
uint32_t descriptorSetCount;
5957
const uint32_t* pDescriptorCounts;
5958
} VkDescriptorSetVariableDescriptorCountAllocateInfo;
5960
typedef struct VkDescriptorSetVariableDescriptorCountLayoutSupport {
5961
VkStructureType sType;
5963
uint32_t maxVariableDescriptorCount;
5964
} VkDescriptorSetVariableDescriptorCountLayoutSupport;
5966
typedef struct VkSubpassDescriptionDepthStencilResolve {
5967
VkStructureType sType;
5969
VkResolveModeFlagBits depthResolveMode;
5970
VkResolveModeFlagBits stencilResolveMode;
5971
const VkAttachmentReference2* pDepthStencilResolveAttachment;
5972
} VkSubpassDescriptionDepthStencilResolve;
5974
typedef struct VkPhysicalDeviceDepthStencilResolveProperties {
5975
VkStructureType sType;
5977
VkResolveModeFlags supportedDepthResolveModes;
5978
VkResolveModeFlags supportedStencilResolveModes;
5979
VkBool32 independentResolveNone;
5980
VkBool32 independentResolve;
5981
} VkPhysicalDeviceDepthStencilResolveProperties;
5983
typedef struct VkPhysicalDeviceScalarBlockLayoutFeatures {
5984
VkStructureType sType;
5986
VkBool32 scalarBlockLayout;
5987
} VkPhysicalDeviceScalarBlockLayoutFeatures;
5989
typedef struct VkImageStencilUsageCreateInfo {
5990
VkStructureType sType;
5992
VkImageUsageFlags stencilUsage;
5993
} VkImageStencilUsageCreateInfo;
5995
typedef struct VkSamplerReductionModeCreateInfo {
5996
VkStructureType sType;
5998
VkSamplerReductionMode reductionMode;
5999
} VkSamplerReductionModeCreateInfo;
6001
typedef struct VkPhysicalDeviceSamplerFilterMinmaxProperties {
6002
VkStructureType sType;
6004
VkBool32 filterMinmaxSingleComponentFormats;
6005
VkBool32 filterMinmaxImageComponentMapping;
6006
} VkPhysicalDeviceSamplerFilterMinmaxProperties;
6008
typedef struct VkPhysicalDeviceVulkanMemoryModelFeatures {
6009
VkStructureType sType;
6011
VkBool32 vulkanMemoryModel;
6012
VkBool32 vulkanMemoryModelDeviceScope;
6013
VkBool32 vulkanMemoryModelAvailabilityVisibilityChains;
6014
} VkPhysicalDeviceVulkanMemoryModelFeatures;
6016
typedef struct VkPhysicalDeviceImagelessFramebufferFeatures {
6017
VkStructureType sType;
6019
VkBool32 imagelessFramebuffer;
6020
} VkPhysicalDeviceImagelessFramebufferFeatures;
6022
typedef struct VkFramebufferAttachmentImageInfo {
6023
VkStructureType sType;
6025
VkImageCreateFlags flags;
6026
VkImageUsageFlags usage;
6029
uint32_t layerCount;
6030
uint32_t viewFormatCount;
6031
const VkFormat* pViewFormats;
6032
} VkFramebufferAttachmentImageInfo;
6034
typedef struct VkFramebufferAttachmentsCreateInfo {
6035
VkStructureType sType;
6037
uint32_t attachmentImageInfoCount;
6038
const VkFramebufferAttachmentImageInfo* pAttachmentImageInfos;
6039
} VkFramebufferAttachmentsCreateInfo;
6041
typedef struct VkRenderPassAttachmentBeginInfo {
6042
VkStructureType sType;
6044
uint32_t attachmentCount;
6045
const VkImageView* pAttachments;
6046
} VkRenderPassAttachmentBeginInfo;
6048
typedef struct VkPhysicalDeviceUniformBufferStandardLayoutFeatures {
6049
VkStructureType sType;
6051
VkBool32 uniformBufferStandardLayout;
6052
} VkPhysicalDeviceUniformBufferStandardLayoutFeatures;
6054
typedef struct VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures {
6055
VkStructureType sType;
6057
VkBool32 shaderSubgroupExtendedTypes;
6058
} VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures;
6060
typedef struct VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures {
6061
VkStructureType sType;
6063
VkBool32 separateDepthStencilLayouts;
6064
} VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures;
6066
typedef struct VkAttachmentReferenceStencilLayout {
6067
VkStructureType sType;
6069
VkImageLayout stencilLayout;
6070
} VkAttachmentReferenceStencilLayout;
6072
typedef struct VkAttachmentDescriptionStencilLayout {
6073
VkStructureType sType;
6075
VkImageLayout stencilInitialLayout;
6076
VkImageLayout stencilFinalLayout;
6077
} VkAttachmentDescriptionStencilLayout;
6079
typedef struct VkPhysicalDeviceHostQueryResetFeatures {
6080
VkStructureType sType;
6082
VkBool32 hostQueryReset;
6083
} VkPhysicalDeviceHostQueryResetFeatures;
6085
typedef struct VkPhysicalDeviceTimelineSemaphoreFeatures {
6086
VkStructureType sType;
6088
VkBool32 timelineSemaphore;
6089
} VkPhysicalDeviceTimelineSemaphoreFeatures;
6091
typedef struct VkPhysicalDeviceTimelineSemaphoreProperties {
6092
VkStructureType sType;
6094
uint64_t maxTimelineSemaphoreValueDifference;
6095
} VkPhysicalDeviceTimelineSemaphoreProperties;
6097
typedef struct VkSemaphoreTypeCreateInfo {
6098
VkStructureType sType;
6100
VkSemaphoreType semaphoreType;
6101
uint64_t initialValue;
6102
} VkSemaphoreTypeCreateInfo;
6104
typedef struct VkTimelineSemaphoreSubmitInfo {
6105
VkStructureType sType;
6107
uint32_t waitSemaphoreValueCount;
6108
const uint64_t* pWaitSemaphoreValues;
6109
uint32_t signalSemaphoreValueCount;
6110
const uint64_t* pSignalSemaphoreValues;
6111
} VkTimelineSemaphoreSubmitInfo;
6113
typedef struct VkSemaphoreWaitInfo {
6114
VkStructureType sType;
6116
VkSemaphoreWaitFlags flags;
6117
uint32_t semaphoreCount;
6118
const VkSemaphore* pSemaphores;
6119
const uint64_t* pValues;
6120
} VkSemaphoreWaitInfo;
6122
typedef struct VkSemaphoreSignalInfo {
6123
VkStructureType sType;
6125
VkSemaphore semaphore;
6127
} VkSemaphoreSignalInfo;
6129
typedef struct VkPhysicalDeviceBufferDeviceAddressFeatures {
6130
VkStructureType sType;
6132
VkBool32 bufferDeviceAddress;
6133
VkBool32 bufferDeviceAddressCaptureReplay;
6134
VkBool32 bufferDeviceAddressMultiDevice;
6135
} VkPhysicalDeviceBufferDeviceAddressFeatures;
6137
typedef struct VkBufferDeviceAddressInfo {
6138
VkStructureType sType;
6141
} VkBufferDeviceAddressInfo;
6143
typedef struct VkBufferOpaqueCaptureAddressCreateInfo {
6144
VkStructureType sType;
6146
uint64_t opaqueCaptureAddress;
6147
} VkBufferOpaqueCaptureAddressCreateInfo;
6149
typedef struct VkMemoryOpaqueCaptureAddressAllocateInfo {
6150
VkStructureType sType;
6152
uint64_t opaqueCaptureAddress;
6153
} VkMemoryOpaqueCaptureAddressAllocateInfo;
6155
typedef struct VkDeviceMemoryOpaqueCaptureAddressInfo {
6156
VkStructureType sType;
6158
VkDeviceMemory memory;
6159
} VkDeviceMemoryOpaqueCaptureAddressInfo;
6161
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCount)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
6162
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCount)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
6163
typedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass2)(VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);
6164
typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass2)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, const VkSubpassBeginInfo* pSubpassBeginInfo);
6165
typedef void (VKAPI_PTR *PFN_vkCmdNextSubpass2)(VkCommandBuffer commandBuffer, const VkSubpassBeginInfo* pSubpassBeginInfo, const VkSubpassEndInfo* pSubpassEndInfo);
6166
typedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass2)(VkCommandBuffer commandBuffer, const VkSubpassEndInfo* pSubpassEndInfo);
6167
typedef void (VKAPI_PTR *PFN_vkResetQueryPool)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount);
6168
typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreCounterValue)(VkDevice device, VkSemaphore semaphore, uint64_t* pValue);
6169
typedef VkResult (VKAPI_PTR *PFN_vkWaitSemaphores)(VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout);
6170
typedef VkResult (VKAPI_PTR *PFN_vkSignalSemaphore)(VkDevice device, const VkSemaphoreSignalInfo* pSignalInfo);
6171
typedef VkDeviceAddress (VKAPI_PTR *PFN_vkGetBufferDeviceAddress)(VkDevice device, const VkBufferDeviceAddressInfo* pInfo);
6172
typedef uint64_t (VKAPI_PTR *PFN_vkGetBufferOpaqueCaptureAddress)(VkDevice device, const VkBufferDeviceAddressInfo* pInfo);
6173
typedef uint64_t (VKAPI_PTR *PFN_vkGetDeviceMemoryOpaqueCaptureAddress)(VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
6175
#ifndef VK_NO_PROTOTYPES
6176
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCount(
6177
VkCommandBuffer commandBuffer,
6179
VkDeviceSize offset,
6180
VkBuffer countBuffer,
6181
VkDeviceSize countBufferOffset,
6182
uint32_t maxDrawCount,
6185
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCount(
6186
VkCommandBuffer commandBuffer,
6188
VkDeviceSize offset,
6189
VkBuffer countBuffer,
6190
VkDeviceSize countBufferOffset,
6191
uint32_t maxDrawCount,
6194
VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass2(
6196
const VkRenderPassCreateInfo2* pCreateInfo,
6197
const VkAllocationCallbacks* pAllocator,
6198
VkRenderPass* pRenderPass);
6200
VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass2(
6201
VkCommandBuffer commandBuffer,
6202
const VkRenderPassBeginInfo* pRenderPassBegin,
6203
const VkSubpassBeginInfo* pSubpassBeginInfo);
6205
VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass2(
6206
VkCommandBuffer commandBuffer,
6207
const VkSubpassBeginInfo* pSubpassBeginInfo,
6208
const VkSubpassEndInfo* pSubpassEndInfo);
6210
VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass2(
6211
VkCommandBuffer commandBuffer,
6212
const VkSubpassEndInfo* pSubpassEndInfo);
6214
VKAPI_ATTR void VKAPI_CALL vkResetQueryPool(
6216
VkQueryPool queryPool,
6217
uint32_t firstQuery,
6218
uint32_t queryCount);
6220
VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreCounterValue(
6222
VkSemaphore semaphore,
6225
VKAPI_ATTR VkResult VKAPI_CALL vkWaitSemaphores(
6227
const VkSemaphoreWaitInfo* pWaitInfo,
6230
VKAPI_ATTR VkResult VKAPI_CALL vkSignalSemaphore(
6232
const VkSemaphoreSignalInfo* pSignalInfo);
6234
VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetBufferDeviceAddress(
6236
const VkBufferDeviceAddressInfo* pInfo);
6238
VKAPI_ATTR uint64_t VKAPI_CALL vkGetBufferOpaqueCaptureAddress(
6240
const VkBufferDeviceAddressInfo* pInfo);
6242
VKAPI_ATTR uint64_t VKAPI_CALL vkGetDeviceMemoryOpaqueCaptureAddress(
6244
const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
6248
#define VK_VERSION_1_3 1
6249
// Vulkan 1.3 version number
6250
#define VK_API_VERSION_1_3 VK_MAKE_API_VERSION(0, 1, 3, 0)// Patch version should always be set to 0
6252
typedef uint64_t VkFlags64;
6253
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPrivateDataSlot)
6255
typedef enum VkPipelineCreationFeedbackFlagBits {
6256
VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT = 0x00000001,
6257
VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT = 0x00000002,
6258
VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT = 0x00000004,
6259
VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT = VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT,
6260
VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT = VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT,
6261
VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT = VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT,
6262
VK_PIPELINE_CREATION_FEEDBACK_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
6263
} VkPipelineCreationFeedbackFlagBits;
6264
typedef VkFlags VkPipelineCreationFeedbackFlags;
6266
typedef enum VkToolPurposeFlagBits {
6267
VK_TOOL_PURPOSE_VALIDATION_BIT = 0x00000001,
6268
VK_TOOL_PURPOSE_PROFILING_BIT = 0x00000002,
6269
VK_TOOL_PURPOSE_TRACING_BIT = 0x00000004,
6270
VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT = 0x00000008,
6271
VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT = 0x00000010,
6272
VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT = 0x00000020,
6273
VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT = 0x00000040,
6274
VK_TOOL_PURPOSE_VALIDATION_BIT_EXT = VK_TOOL_PURPOSE_VALIDATION_BIT,
6275
VK_TOOL_PURPOSE_PROFILING_BIT_EXT = VK_TOOL_PURPOSE_PROFILING_BIT,
6276
VK_TOOL_PURPOSE_TRACING_BIT_EXT = VK_TOOL_PURPOSE_TRACING_BIT,
6277
VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT = VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT,
6278
VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT = VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT,
6279
VK_TOOL_PURPOSE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
6280
} VkToolPurposeFlagBits;
6281
typedef VkFlags VkToolPurposeFlags;
6282
typedef VkFlags VkPrivateDataSlotCreateFlags;
6283
typedef VkFlags64 VkPipelineStageFlags2;
6285
// Flag bits for VkPipelineStageFlagBits2
6286
typedef VkFlags64 VkPipelineStageFlagBits2;
6287
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_NONE = 0ULL;
6288
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_NONE_KHR = 0ULL;
6289
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT = 0x00000001ULL;
6290
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR = 0x00000001ULL;
6291
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT = 0x00000002ULL;
6292
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR = 0x00000002ULL;
6293
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT = 0x00000004ULL;
6294
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR = 0x00000004ULL;
6295
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT = 0x00000008ULL;
6296
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR = 0x00000008ULL;
6297
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010ULL;
6298
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR = 0x00000010ULL;
6299
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020ULL;
6300
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR = 0x00000020ULL;
6301
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT = 0x00000040ULL;
6302
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR = 0x00000040ULL;
6303
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT = 0x00000080ULL;
6304
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR = 0x00000080ULL;
6305
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT = 0x00000100ULL;
6306
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR = 0x00000100ULL;
6307
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT = 0x00000200ULL;
6308
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR = 0x00000200ULL;
6309
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400ULL;
6310
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR = 0x00000400ULL;
6311
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT = 0x00000800ULL;
6312
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR = 0x00000800ULL;
6313
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT = 0x00001000ULL;
6314
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR = 0x00001000ULL;
6315
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TRANSFER_BIT = 0x00001000ULL;
6316
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TRANSFER_BIT_KHR = 0x00001000ULL;
6317
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT = 0x00002000ULL;
6318
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR = 0x00002000ULL;
6319
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_HOST_BIT = 0x00004000ULL;
6320
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_HOST_BIT_KHR = 0x00004000ULL;
6321
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT = 0x00008000ULL;
6322
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR = 0x00008000ULL;
6323
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT = 0x00010000ULL;
6324
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR = 0x00010000ULL;
6325
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COPY_BIT = 0x100000000ULL;
6326
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COPY_BIT_KHR = 0x100000000ULL;
6327
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_RESOLVE_BIT = 0x200000000ULL;
6328
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR = 0x200000000ULL;
6329
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_BLIT_BIT = 0x400000000ULL;
6330
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_BLIT_BIT_KHR = 0x400000000ULL;
6331
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_CLEAR_BIT = 0x800000000ULL;
6332
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR = 0x800000000ULL;
6333
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT = 0x1000000000ULL;
6334
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR = 0x1000000000ULL;
6335
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT = 0x2000000000ULL;
6336
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR = 0x2000000000ULL;
6337
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT = 0x4000000000ULL;
6338
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR = 0x4000000000ULL;
6339
#ifdef VK_ENABLE_BETA_EXTENSIONS
6340
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR = 0x04000000ULL;
6342
#ifdef VK_ENABLE_BETA_EXTENSIONS
6343
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR = 0x08000000ULL;
6345
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT = 0x01000000ULL;
6346
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000ULL;
6347
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV = 0x00020000ULL;
6348
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00400000ULL;
6349
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV = 0x00400000ULL;
6350
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR = 0x02000000ULL;
6351
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR = 0x00200000ULL;
6352
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV = 0x00200000ULL;
6353
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV = 0x02000000ULL;
6354
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT = 0x00800000ULL;
6355
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV = 0x00080000ULL;
6356
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV = 0x00100000ULL;
6357
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI = 0x8000000000ULL;
6358
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI = 0x10000000000ULL;
6360
typedef VkFlags64 VkAccessFlags2;
6362
// Flag bits for VkAccessFlagBits2
6363
typedef VkFlags64 VkAccessFlagBits2;
6364
static const VkAccessFlagBits2 VK_ACCESS_2_NONE = 0ULL;
6365
static const VkAccessFlagBits2 VK_ACCESS_2_NONE_KHR = 0ULL;
6366
static const VkAccessFlagBits2 VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT = 0x00000001ULL;
6367
static const VkAccessFlagBits2 VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR = 0x00000001ULL;
6368
static const VkAccessFlagBits2 VK_ACCESS_2_INDEX_READ_BIT = 0x00000002ULL;
6369
static const VkAccessFlagBits2 VK_ACCESS_2_INDEX_READ_BIT_KHR = 0x00000002ULL;
6370
static const VkAccessFlagBits2 VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004ULL;
6371
static const VkAccessFlagBits2 VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR = 0x00000004ULL;
6372
static const VkAccessFlagBits2 VK_ACCESS_2_UNIFORM_READ_BIT = 0x00000008ULL;
6373
static const VkAccessFlagBits2 VK_ACCESS_2_UNIFORM_READ_BIT_KHR = 0x00000008ULL;
6374
static const VkAccessFlagBits2 VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT = 0x00000010ULL;
6375
static const VkAccessFlagBits2 VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR = 0x00000010ULL;
6376
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_READ_BIT = 0x00000020ULL;
6377
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_READ_BIT_KHR = 0x00000020ULL;
6378
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_WRITE_BIT = 0x00000040ULL;
6379
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_WRITE_BIT_KHR = 0x00000040ULL;
6380
static const VkAccessFlagBits2 VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT = 0x00000080ULL;
6381
static const VkAccessFlagBits2 VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR = 0x00000080ULL;
6382
static const VkAccessFlagBits2 VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100ULL;
6383
static const VkAccessFlagBits2 VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR = 0x00000100ULL;
6384
static const VkAccessFlagBits2 VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200ULL;
6385
static const VkAccessFlagBits2 VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR = 0x00000200ULL;
6386
static const VkAccessFlagBits2 VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400ULL;
6387
static const VkAccessFlagBits2 VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR = 0x00000400ULL;
6388
static const VkAccessFlagBits2 VK_ACCESS_2_TRANSFER_READ_BIT = 0x00000800ULL;
6389
static const VkAccessFlagBits2 VK_ACCESS_2_TRANSFER_READ_BIT_KHR = 0x00000800ULL;
6390
static const VkAccessFlagBits2 VK_ACCESS_2_TRANSFER_WRITE_BIT = 0x00001000ULL;
6391
static const VkAccessFlagBits2 VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR = 0x00001000ULL;
6392
static const VkAccessFlagBits2 VK_ACCESS_2_HOST_READ_BIT = 0x00002000ULL;
6393
static const VkAccessFlagBits2 VK_ACCESS_2_HOST_READ_BIT_KHR = 0x00002000ULL;
6394
static const VkAccessFlagBits2 VK_ACCESS_2_HOST_WRITE_BIT = 0x00004000ULL;
6395
static const VkAccessFlagBits2 VK_ACCESS_2_HOST_WRITE_BIT_KHR = 0x00004000ULL;
6396
static const VkAccessFlagBits2 VK_ACCESS_2_MEMORY_READ_BIT = 0x00008000ULL;
6397
static const VkAccessFlagBits2 VK_ACCESS_2_MEMORY_READ_BIT_KHR = 0x00008000ULL;
6398
static const VkAccessFlagBits2 VK_ACCESS_2_MEMORY_WRITE_BIT = 0x00010000ULL;
6399
static const VkAccessFlagBits2 VK_ACCESS_2_MEMORY_WRITE_BIT_KHR = 0x00010000ULL;
6400
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_SAMPLED_READ_BIT = 0x100000000ULL;
6401
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR = 0x100000000ULL;
6402
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_STORAGE_READ_BIT = 0x200000000ULL;
6403
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR = 0x200000000ULL;
6404
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT = 0x400000000ULL;
6405
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR = 0x400000000ULL;
6406
#ifdef VK_ENABLE_BETA_EXTENSIONS
6407
static const VkAccessFlagBits2 VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR = 0x800000000ULL;
6409
#ifdef VK_ENABLE_BETA_EXTENSIONS
6410
static const VkAccessFlagBits2 VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR = 0x1000000000ULL;
6412
#ifdef VK_ENABLE_BETA_EXTENSIONS
6413
static const VkAccessFlagBits2 VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR = 0x2000000000ULL;
6415
#ifdef VK_ENABLE_BETA_EXTENSIONS
6416
static const VkAccessFlagBits2 VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR = 0x4000000000ULL;
6418
static const VkAccessFlagBits2 VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT = 0x02000000ULL;
6419
static const VkAccessFlagBits2 VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = 0x04000000ULL;
6420
static const VkAccessFlagBits2 VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = 0x08000000ULL;
6421
static const VkAccessFlagBits2 VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT = 0x00100000ULL;
6422
static const VkAccessFlagBits2 VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV = 0x00020000ULL;
6423
static const VkAccessFlagBits2 VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV = 0x00040000ULL;
6424
static const VkAccessFlagBits2 VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = 0x00800000ULL;
6425
static const VkAccessFlagBits2 VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV = 0x00800000ULL;
6426
static const VkAccessFlagBits2 VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR = 0x00200000ULL;
6427
static const VkAccessFlagBits2 VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000ULL;
6428
static const VkAccessFlagBits2 VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV = 0x00200000ULL;
6429
static const VkAccessFlagBits2 VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV = 0x00400000ULL;
6430
static const VkAccessFlagBits2 VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000ULL;
6431
static const VkAccessFlagBits2 VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000ULL;
6432
static const VkAccessFlagBits2 VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI = 0x8000000000ULL;
6435
typedef enum VkSubmitFlagBits {
6436
VK_SUBMIT_PROTECTED_BIT = 0x00000001,
6437
VK_SUBMIT_PROTECTED_BIT_KHR = VK_SUBMIT_PROTECTED_BIT,
6438
VK_SUBMIT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
6440
typedef VkFlags VkSubmitFlags;
6442
typedef enum VkRenderingFlagBits {
6443
VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT = 0x00000001,
6444
VK_RENDERING_SUSPENDING_BIT = 0x00000002,
6445
VK_RENDERING_RESUMING_BIT = 0x00000004,
6446
VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR = VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT,
6447
VK_RENDERING_SUSPENDING_BIT_KHR = VK_RENDERING_SUSPENDING_BIT,
6448
VK_RENDERING_RESUMING_BIT_KHR = VK_RENDERING_RESUMING_BIT,
6449
VK_RENDERING_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
6450
} VkRenderingFlagBits;
6451
typedef VkFlags VkRenderingFlags;
6452
typedef VkFlags64 VkFormatFeatureFlags2;
6454
// Flag bits for VkFormatFeatureFlagBits2
6455
typedef VkFlags64 VkFormatFeatureFlagBits2;
6456
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT = 0x00000001ULL;
6457
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT_KHR = 0x00000001ULL;
6458
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT = 0x00000002ULL;
6459
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT_KHR = 0x00000002ULL;
6460
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004ULL;
6461
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT_KHR = 0x00000004ULL;
6462
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008ULL;
6463
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR = 0x00000008ULL;
6464
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT = 0x00000010ULL;
6465
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT_KHR = 0x00000010ULL;
6466
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020ULL;
6467
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT_KHR = 0x00000020ULL;
6468
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT = 0x00000040ULL;
6469
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT_KHR = 0x00000040ULL;
6470
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT = 0x00000080ULL;
6471
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT_KHR = 0x00000080ULL;
6472
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100ULL;
6473
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT_KHR = 0x00000100ULL;
6474
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200ULL;
6475
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT_KHR = 0x00000200ULL;
6476
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLIT_SRC_BIT = 0x00000400ULL;
6477
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLIT_SRC_BIT_KHR = 0x00000400ULL;
6478
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLIT_DST_BIT = 0x00000800ULL;
6479
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLIT_DST_BIT_KHR = 0x00000800ULL;
6480
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000ULL;
6481
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT_KHR = 0x00001000ULL;
6482
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT = 0x00002000ULL;
6483
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT = 0x00002000ULL;
6484
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT = 0x00004000ULL;
6485
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT_KHR = 0x00004000ULL;
6486
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT = 0x00008000ULL;
6487
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT_KHR = 0x00008000ULL;
6488
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT = 0x00010000ULL;
6489
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT_KHR = 0x00010000ULL;
6490
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT = 0x00020000ULL;
6491
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT_KHR = 0x00020000ULL;
6492
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT = 0x00040000ULL;
6493
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR = 0x00040000ULL;
6494
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT = 0x00080000ULL;
6495
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR = 0x00080000ULL;
6496
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT = 0x00100000ULL;
6497
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR = 0x00100000ULL;
6498
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT = 0x00200000ULL;
6499
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR = 0x00200000ULL;
6500
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DISJOINT_BIT = 0x00400000ULL;
6501
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DISJOINT_BIT_KHR = 0x00400000ULL;
6502
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT = 0x00800000ULL;
6503
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT_KHR = 0x00800000ULL;
6504
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT = 0x80000000ULL;
6505
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT_KHR = 0x80000000ULL;
6506
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT = 0x100000000ULL;
6507
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT_KHR = 0x100000000ULL;
6508
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT = 0x200000000ULL;
6509
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT_KHR = 0x200000000ULL;
6510
#ifdef VK_ENABLE_BETA_EXTENSIONS
6511
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR = 0x02000000ULL;
6513
#ifdef VK_ENABLE_BETA_EXTENSIONS
6514
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR = 0x04000000ULL;
6516
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR = 0x20000000ULL;
6517
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x01000000ULL;
6518
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x40000000ULL;
6519
#ifdef VK_ENABLE_BETA_EXTENSIONS
6520
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR = 0x08000000ULL;
6522
#ifdef VK_ENABLE_BETA_EXTENSIONS
6523
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR = 0x10000000ULL;
6525
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV = 0x4000000000ULL;
6527
typedef struct VkPhysicalDeviceVulkan13Features {
6528
VkStructureType sType;
6530
VkBool32 robustImageAccess;
6531
VkBool32 inlineUniformBlock;
6532
VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind;
6533
VkBool32 pipelineCreationCacheControl;
6534
VkBool32 privateData;
6535
VkBool32 shaderDemoteToHelperInvocation;
6536
VkBool32 shaderTerminateInvocation;
6537
VkBool32 subgroupSizeControl;
6538
VkBool32 computeFullSubgroups;
6539
VkBool32 synchronization2;
6540
VkBool32 textureCompressionASTC_HDR;
6541
VkBool32 shaderZeroInitializeWorkgroupMemory;
6542
VkBool32 dynamicRendering;
6543
VkBool32 shaderIntegerDotProduct;
6544
VkBool32 maintenance4;
6545
} VkPhysicalDeviceVulkan13Features;
6547
typedef struct VkPhysicalDeviceVulkan13Properties {
6548
VkStructureType sType;
6550
uint32_t minSubgroupSize;
6551
uint32_t maxSubgroupSize;
6552
uint32_t maxComputeWorkgroupSubgroups;
6553
VkShaderStageFlags requiredSubgroupSizeStages;
6554
uint32_t maxInlineUniformBlockSize;
6555
uint32_t maxPerStageDescriptorInlineUniformBlocks;
6556
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;
6557
uint32_t maxDescriptorSetInlineUniformBlocks;
6558
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks;
6559
uint32_t maxInlineUniformTotalSize;
6560
VkBool32 integerDotProduct8BitUnsignedAccelerated;
6561
VkBool32 integerDotProduct8BitSignedAccelerated;
6562
VkBool32 integerDotProduct8BitMixedSignednessAccelerated;
6563
VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated;
6564
VkBool32 integerDotProduct4x8BitPackedSignedAccelerated;
6565
VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated;
6566
VkBool32 integerDotProduct16BitUnsignedAccelerated;
6567
VkBool32 integerDotProduct16BitSignedAccelerated;
6568
VkBool32 integerDotProduct16BitMixedSignednessAccelerated;
6569
VkBool32 integerDotProduct32BitUnsignedAccelerated;
6570
VkBool32 integerDotProduct32BitSignedAccelerated;
6571
VkBool32 integerDotProduct32BitMixedSignednessAccelerated;
6572
VkBool32 integerDotProduct64BitUnsignedAccelerated;
6573
VkBool32 integerDotProduct64BitSignedAccelerated;
6574
VkBool32 integerDotProduct64BitMixedSignednessAccelerated;
6575
VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated;
6576
VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated;
6577
VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated;
6578
VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated;
6579
VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated;
6580
VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated;
6581
VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated;
6582
VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated;
6583
VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated;
6584
VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated;
6585
VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated;
6586
VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated;
6587
VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated;
6588
VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated;
6589
VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated;
6590
VkDeviceSize storageTexelBufferOffsetAlignmentBytes;
6591
VkBool32 storageTexelBufferOffsetSingleTexelAlignment;
6592
VkDeviceSize uniformTexelBufferOffsetAlignmentBytes;
6593
VkBool32 uniformTexelBufferOffsetSingleTexelAlignment;
6594
VkDeviceSize maxBufferSize;
6595
} VkPhysicalDeviceVulkan13Properties;
6597
typedef struct VkPipelineCreationFeedback {
6598
VkPipelineCreationFeedbackFlags flags;
6600
} VkPipelineCreationFeedback;
6602
typedef struct VkPipelineCreationFeedbackCreateInfo {
6603
VkStructureType sType;
6605
VkPipelineCreationFeedback* pPipelineCreationFeedback;
6606
uint32_t pipelineStageCreationFeedbackCount;
6607
VkPipelineCreationFeedback* pPipelineStageCreationFeedbacks;
6608
} VkPipelineCreationFeedbackCreateInfo;
6610
typedef struct VkPhysicalDeviceShaderTerminateInvocationFeatures {
6611
VkStructureType sType;
6613
VkBool32 shaderTerminateInvocation;
6614
} VkPhysicalDeviceShaderTerminateInvocationFeatures;
6616
typedef struct VkPhysicalDeviceToolProperties {
6617
VkStructureType sType;
6619
char name[VK_MAX_EXTENSION_NAME_SIZE];
6620
char version[VK_MAX_EXTENSION_NAME_SIZE];
6621
VkToolPurposeFlags purposes;
6622
char description[VK_MAX_DESCRIPTION_SIZE];
6623
char layer[VK_MAX_EXTENSION_NAME_SIZE];
6624
} VkPhysicalDeviceToolProperties;
6626
typedef struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures {
6627
VkStructureType sType;
6629
VkBool32 shaderDemoteToHelperInvocation;
6630
} VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures;
6632
typedef struct VkPhysicalDevicePrivateDataFeatures {
6633
VkStructureType sType;
6635
VkBool32 privateData;
6636
} VkPhysicalDevicePrivateDataFeatures;
6638
typedef struct VkDevicePrivateDataCreateInfo {
6639
VkStructureType sType;
6641
uint32_t privateDataSlotRequestCount;
6642
} VkDevicePrivateDataCreateInfo;
6644
typedef struct VkPrivateDataSlotCreateInfo {
6645
VkStructureType sType;
6647
VkPrivateDataSlotCreateFlags flags;
6648
} VkPrivateDataSlotCreateInfo;
6650
typedef struct VkPhysicalDevicePipelineCreationCacheControlFeatures {
6651
VkStructureType sType;
6653
VkBool32 pipelineCreationCacheControl;
6654
} VkPhysicalDevicePipelineCreationCacheControlFeatures;
6656
typedef struct VkMemoryBarrier2 {
6657
VkStructureType sType;
6659
VkPipelineStageFlags2 srcStageMask;
6660
VkAccessFlags2 srcAccessMask;
6661
VkPipelineStageFlags2 dstStageMask;
6662
VkAccessFlags2 dstAccessMask;
6665
typedef struct VkBufferMemoryBarrier2 {
6666
VkStructureType sType;
6668
VkPipelineStageFlags2 srcStageMask;
6669
VkAccessFlags2 srcAccessMask;
6670
VkPipelineStageFlags2 dstStageMask;
6671
VkAccessFlags2 dstAccessMask;
6672
uint32_t srcQueueFamilyIndex;
6673
uint32_t dstQueueFamilyIndex;
6675
VkDeviceSize offset;
6677
} VkBufferMemoryBarrier2;
6679
typedef struct VkImageMemoryBarrier2 {
6680
VkStructureType sType;
6682
VkPipelineStageFlags2 srcStageMask;
6683
VkAccessFlags2 srcAccessMask;
6684
VkPipelineStageFlags2 dstStageMask;
6685
VkAccessFlags2 dstAccessMask;
6686
VkImageLayout oldLayout;
6687
VkImageLayout newLayout;
6688
uint32_t srcQueueFamilyIndex;
6689
uint32_t dstQueueFamilyIndex;
6691
VkImageSubresourceRange subresourceRange;
6692
} VkImageMemoryBarrier2;
6694
typedef struct VkDependencyInfo {
6695
VkStructureType sType;
6697
VkDependencyFlags dependencyFlags;
6698
uint32_t memoryBarrierCount;
6699
const VkMemoryBarrier2* pMemoryBarriers;
6700
uint32_t bufferMemoryBarrierCount;
6701
const VkBufferMemoryBarrier2* pBufferMemoryBarriers;
6702
uint32_t imageMemoryBarrierCount;
6703
const VkImageMemoryBarrier2* pImageMemoryBarriers;
6706
typedef struct VkSemaphoreSubmitInfo {
6707
VkStructureType sType;
6709
VkSemaphore semaphore;
6711
VkPipelineStageFlags2 stageMask;
6712
uint32_t deviceIndex;
6713
} VkSemaphoreSubmitInfo;
6715
typedef struct VkCommandBufferSubmitInfo {
6716
VkStructureType sType;
6718
VkCommandBuffer commandBuffer;
6719
uint32_t deviceMask;
6720
} VkCommandBufferSubmitInfo;
6722
typedef struct VkSubmitInfo2 {
6723
VkStructureType sType;
6725
VkSubmitFlags flags;
6726
uint32_t waitSemaphoreInfoCount;
6727
const VkSemaphoreSubmitInfo* pWaitSemaphoreInfos;
6728
uint32_t commandBufferInfoCount;
6729
const VkCommandBufferSubmitInfo* pCommandBufferInfos;
6730
uint32_t signalSemaphoreInfoCount;
6731
const VkSemaphoreSubmitInfo* pSignalSemaphoreInfos;
6734
typedef struct VkPhysicalDeviceSynchronization2Features {
6735
VkStructureType sType;
6737
VkBool32 synchronization2;
6738
} VkPhysicalDeviceSynchronization2Features;
6740
typedef struct VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures {
6741
VkStructureType sType;
6743
VkBool32 shaderZeroInitializeWorkgroupMemory;
6744
} VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures;
6746
typedef struct VkPhysicalDeviceImageRobustnessFeatures {
6747
VkStructureType sType;
6749
VkBool32 robustImageAccess;
6750
} VkPhysicalDeviceImageRobustnessFeatures;
6752
typedef struct VkBufferCopy2 {
6753
VkStructureType sType;
6755
VkDeviceSize srcOffset;
6756
VkDeviceSize dstOffset;
6760
typedef struct VkCopyBufferInfo2 {
6761
VkStructureType sType;
6765
uint32_t regionCount;
6766
const VkBufferCopy2* pRegions;
6767
} VkCopyBufferInfo2;
6769
typedef struct VkImageCopy2 {
6770
VkStructureType sType;
6772
VkImageSubresourceLayers srcSubresource;
6773
VkOffset3D srcOffset;
6774
VkImageSubresourceLayers dstSubresource;
6775
VkOffset3D dstOffset;
6779
typedef struct VkCopyImageInfo2 {
6780
VkStructureType sType;
6783
VkImageLayout srcImageLayout;
6785
VkImageLayout dstImageLayout;
6786
uint32_t regionCount;
6787
const VkImageCopy2* pRegions;
6790
typedef struct VkBufferImageCopy2 {
6791
VkStructureType sType;
6793
VkDeviceSize bufferOffset;
6794
uint32_t bufferRowLength;
6795
uint32_t bufferImageHeight;
6796
VkImageSubresourceLayers imageSubresource;
6797
VkOffset3D imageOffset;
6798
VkExtent3D imageExtent;
6799
} VkBufferImageCopy2;
6801
typedef struct VkCopyBufferToImageInfo2 {
6802
VkStructureType sType;
6806
VkImageLayout dstImageLayout;
6807
uint32_t regionCount;
6808
const VkBufferImageCopy2* pRegions;
6809
} VkCopyBufferToImageInfo2;
6811
typedef struct VkCopyImageToBufferInfo2 {
6812
VkStructureType sType;
6815
VkImageLayout srcImageLayout;
6817
uint32_t regionCount;
6818
const VkBufferImageCopy2* pRegions;
6819
} VkCopyImageToBufferInfo2;
6821
typedef struct VkImageBlit2 {
6822
VkStructureType sType;
6824
VkImageSubresourceLayers srcSubresource;
6825
VkOffset3D srcOffsets[2];
6826
VkImageSubresourceLayers dstSubresource;
6827
VkOffset3D dstOffsets[2];
6830
typedef struct VkBlitImageInfo2 {
6831
VkStructureType sType;
6834
VkImageLayout srcImageLayout;
6836
VkImageLayout dstImageLayout;
6837
uint32_t regionCount;
6838
const VkImageBlit2* pRegions;
6842
typedef struct VkImageResolve2 {
6843
VkStructureType sType;
6845
VkImageSubresourceLayers srcSubresource;
6846
VkOffset3D srcOffset;
6847
VkImageSubresourceLayers dstSubresource;
6848
VkOffset3D dstOffset;
6852
typedef struct VkResolveImageInfo2 {
6853
VkStructureType sType;
6856
VkImageLayout srcImageLayout;
6858
VkImageLayout dstImageLayout;
6859
uint32_t regionCount;
6860
const VkImageResolve2* pRegions;
6861
} VkResolveImageInfo2;
6863
typedef struct VkPhysicalDeviceSubgroupSizeControlFeatures {
6864
VkStructureType sType;
6866
VkBool32 subgroupSizeControl;
6867
VkBool32 computeFullSubgroups;
6868
} VkPhysicalDeviceSubgroupSizeControlFeatures;
6870
typedef struct VkPhysicalDeviceSubgroupSizeControlProperties {
6871
VkStructureType sType;
6873
uint32_t minSubgroupSize;
6874
uint32_t maxSubgroupSize;
6875
uint32_t maxComputeWorkgroupSubgroups;
6876
VkShaderStageFlags requiredSubgroupSizeStages;
6877
} VkPhysicalDeviceSubgroupSizeControlProperties;
6879
typedef struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfo {
6880
VkStructureType sType;
6882
uint32_t requiredSubgroupSize;
6883
} VkPipelineShaderStageRequiredSubgroupSizeCreateInfo;
6885
typedef struct VkPhysicalDeviceInlineUniformBlockFeatures {
6886
VkStructureType sType;
6888
VkBool32 inlineUniformBlock;
6889
VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind;
6890
} VkPhysicalDeviceInlineUniformBlockFeatures;
6892
typedef struct VkPhysicalDeviceInlineUniformBlockProperties {
6893
VkStructureType sType;
6895
uint32_t maxInlineUniformBlockSize;
6896
uint32_t maxPerStageDescriptorInlineUniformBlocks;
6897
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;
6898
uint32_t maxDescriptorSetInlineUniformBlocks;
6899
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks;
6900
} VkPhysicalDeviceInlineUniformBlockProperties;
6902
typedef struct VkWriteDescriptorSetInlineUniformBlock {
6903
VkStructureType sType;
6907
} VkWriteDescriptorSetInlineUniformBlock;
6909
typedef struct VkDescriptorPoolInlineUniformBlockCreateInfo {
6910
VkStructureType sType;
6912
uint32_t maxInlineUniformBlockBindings;
6913
} VkDescriptorPoolInlineUniformBlockCreateInfo;
6915
typedef struct VkPhysicalDeviceTextureCompressionASTCHDRFeatures {
6916
VkStructureType sType;
6918
VkBool32 textureCompressionASTC_HDR;
6919
} VkPhysicalDeviceTextureCompressionASTCHDRFeatures;
6921
typedef struct VkRenderingAttachmentInfo {
6922
VkStructureType sType;
6924
VkImageView imageView;
6925
VkImageLayout imageLayout;
6926
VkResolveModeFlagBits resolveMode;
6927
VkImageView resolveImageView;
6928
VkImageLayout resolveImageLayout;
6929
VkAttachmentLoadOp loadOp;
6930
VkAttachmentStoreOp storeOp;
6931
VkClearValue clearValue;
6932
} VkRenderingAttachmentInfo;
6934
typedef struct VkRenderingInfo {
6935
VkStructureType sType;
6937
VkRenderingFlags flags;
6938
VkRect2D renderArea;
6939
uint32_t layerCount;
6941
uint32_t colorAttachmentCount;
6942
const VkRenderingAttachmentInfo* pColorAttachments;
6943
const VkRenderingAttachmentInfo* pDepthAttachment;
6944
const VkRenderingAttachmentInfo* pStencilAttachment;
6947
typedef struct VkPipelineRenderingCreateInfo {
6948
VkStructureType sType;
6951
uint32_t colorAttachmentCount;
6952
const VkFormat* pColorAttachmentFormats;
6953
VkFormat depthAttachmentFormat;
6954
VkFormat stencilAttachmentFormat;
6955
} VkPipelineRenderingCreateInfo;
6957
typedef struct VkPhysicalDeviceDynamicRenderingFeatures {
6958
VkStructureType sType;
6960
VkBool32 dynamicRendering;
6961
} VkPhysicalDeviceDynamicRenderingFeatures;
6963
typedef struct VkCommandBufferInheritanceRenderingInfo {
6964
VkStructureType sType;
6966
VkRenderingFlags flags;
6968
uint32_t colorAttachmentCount;
6969
const VkFormat* pColorAttachmentFormats;
6970
VkFormat depthAttachmentFormat;
6971
VkFormat stencilAttachmentFormat;
6972
VkSampleCountFlagBits rasterizationSamples;
6973
} VkCommandBufferInheritanceRenderingInfo;
6975
typedef struct VkPhysicalDeviceShaderIntegerDotProductFeatures {
6976
VkStructureType sType;
6978
VkBool32 shaderIntegerDotProduct;
6979
} VkPhysicalDeviceShaderIntegerDotProductFeatures;
6981
typedef struct VkPhysicalDeviceShaderIntegerDotProductProperties {
6982
VkStructureType sType;
6984
VkBool32 integerDotProduct8BitUnsignedAccelerated;
6985
VkBool32 integerDotProduct8BitSignedAccelerated;
6986
VkBool32 integerDotProduct8BitMixedSignednessAccelerated;
6987
VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated;
6988
VkBool32 integerDotProduct4x8BitPackedSignedAccelerated;
6989
VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated;
6990
VkBool32 integerDotProduct16BitUnsignedAccelerated;
6991
VkBool32 integerDotProduct16BitSignedAccelerated;
6992
VkBool32 integerDotProduct16BitMixedSignednessAccelerated;
6993
VkBool32 integerDotProduct32BitUnsignedAccelerated;
6994
VkBool32 integerDotProduct32BitSignedAccelerated;
6995
VkBool32 integerDotProduct32BitMixedSignednessAccelerated;
6996
VkBool32 integerDotProduct64BitUnsignedAccelerated;
6997
VkBool32 integerDotProduct64BitSignedAccelerated;
6998
VkBool32 integerDotProduct64BitMixedSignednessAccelerated;
6999
VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated;
7000
VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated;
7001
VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated;
7002
VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated;
7003
VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated;
7004
VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated;
7005
VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated;
7006
VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated;
7007
VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated;
7008
VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated;
7009
VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated;
7010
VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated;
7011
VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated;
7012
VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated;
7013
VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated;
7014
} VkPhysicalDeviceShaderIntegerDotProductProperties;
7016
typedef struct VkPhysicalDeviceTexelBufferAlignmentProperties {
7017
VkStructureType sType;
7019
VkDeviceSize storageTexelBufferOffsetAlignmentBytes;
7020
VkBool32 storageTexelBufferOffsetSingleTexelAlignment;
7021
VkDeviceSize uniformTexelBufferOffsetAlignmentBytes;
7022
VkBool32 uniformTexelBufferOffsetSingleTexelAlignment;
7023
} VkPhysicalDeviceTexelBufferAlignmentProperties;
7025
typedef struct VkFormatProperties3 {
7026
VkStructureType sType;
7028
VkFormatFeatureFlags2 linearTilingFeatures;
7029
VkFormatFeatureFlags2 optimalTilingFeatures;
7030
VkFormatFeatureFlags2 bufferFeatures;
7031
} VkFormatProperties3;
7033
typedef struct VkPhysicalDeviceMaintenance4Features {
7034
VkStructureType sType;
7036
VkBool32 maintenance4;
7037
} VkPhysicalDeviceMaintenance4Features;
7039
typedef struct VkPhysicalDeviceMaintenance4Properties {
7040
VkStructureType sType;
7042
VkDeviceSize maxBufferSize;
7043
} VkPhysicalDeviceMaintenance4Properties;
7045
typedef struct VkDeviceBufferMemoryRequirements {
7046
VkStructureType sType;
7048
const VkBufferCreateInfo* pCreateInfo;
7049
} VkDeviceBufferMemoryRequirements;
7051
typedef struct VkDeviceImageMemoryRequirements {
7052
VkStructureType sType;
7054
const VkImageCreateInfo* pCreateInfo;
7055
VkImageAspectFlagBits planeAspect;
7056
} VkDeviceImageMemoryRequirements;
7058
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceToolProperties)(VkPhysicalDevice physicalDevice, uint32_t* pToolCount, VkPhysicalDeviceToolProperties* pToolProperties);
7059
typedef VkResult (VKAPI_PTR *PFN_vkCreatePrivateDataSlot)(VkDevice device, const VkPrivateDataSlotCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlot* pPrivateDataSlot);
7060
typedef void (VKAPI_PTR *PFN_vkDestroyPrivateDataSlot)(VkDevice device, VkPrivateDataSlot privateDataSlot, const VkAllocationCallbacks* pAllocator);
7061
typedef VkResult (VKAPI_PTR *PFN_vkSetPrivateData)(VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data);
7062
typedef void (VKAPI_PTR *PFN_vkGetPrivateData)(VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t* pData);
7063
typedef void (VKAPI_PTR *PFN_vkCmdSetEvent2)(VkCommandBuffer commandBuffer, VkEvent event, const VkDependencyInfo* pDependencyInfo);
7064
typedef void (VKAPI_PTR *PFN_vkCmdResetEvent2)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags2 stageMask);
7065
typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents2)(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, const VkDependencyInfo* pDependencyInfos);
7066
typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier2)(VkCommandBuffer commandBuffer, const VkDependencyInfo* pDependencyInfo);
7067
typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp2)(VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage, VkQueryPool queryPool, uint32_t query);
7068
typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit2)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo2* pSubmits, VkFence fence);
7069
typedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer2)(VkCommandBuffer commandBuffer, const VkCopyBufferInfo2* pCopyBufferInfo);
7070
typedef void (VKAPI_PTR *PFN_vkCmdCopyImage2)(VkCommandBuffer commandBuffer, const VkCopyImageInfo2* pCopyImageInfo);
7071
typedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage2)(VkCommandBuffer commandBuffer, const VkCopyBufferToImageInfo2* pCopyBufferToImageInfo);
7072
typedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer2)(VkCommandBuffer commandBuffer, const VkCopyImageToBufferInfo2* pCopyImageToBufferInfo);
7073
typedef void (VKAPI_PTR *PFN_vkCmdBlitImage2)(VkCommandBuffer commandBuffer, const VkBlitImageInfo2* pBlitImageInfo);
7074
typedef void (VKAPI_PTR *PFN_vkCmdResolveImage2)(VkCommandBuffer commandBuffer, const VkResolveImageInfo2* pResolveImageInfo);
7075
typedef void (VKAPI_PTR *PFN_vkCmdBeginRendering)(VkCommandBuffer commandBuffer, const VkRenderingInfo* pRenderingInfo);
7076
typedef void (VKAPI_PTR *PFN_vkCmdEndRendering)(VkCommandBuffer commandBuffer);
7077
typedef void (VKAPI_PTR *PFN_vkCmdSetCullMode)(VkCommandBuffer commandBuffer, VkCullModeFlags cullMode);
7078
typedef void (VKAPI_PTR *PFN_vkCmdSetFrontFace)(VkCommandBuffer commandBuffer, VkFrontFace frontFace);
7079
typedef void (VKAPI_PTR *PFN_vkCmdSetPrimitiveTopology)(VkCommandBuffer commandBuffer, VkPrimitiveTopology primitiveTopology);
7080
typedef void (VKAPI_PTR *PFN_vkCmdSetViewportWithCount)(VkCommandBuffer commandBuffer, uint32_t viewportCount, const VkViewport* pViewports);
7081
typedef void (VKAPI_PTR *PFN_vkCmdSetScissorWithCount)(VkCommandBuffer commandBuffer, uint32_t scissorCount, const VkRect2D* pScissors);
7082
typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers2)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes, const VkDeviceSize* pStrides);
7083
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthTestEnable)(VkCommandBuffer commandBuffer, VkBool32 depthTestEnable);
7084
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthWriteEnable)(VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable);
7085
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthCompareOp)(VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp);
7086
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBoundsTestEnable)(VkCommandBuffer commandBuffer, VkBool32 depthBoundsTestEnable);
7087
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilTestEnable)(VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable);
7088
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilOp)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp, VkCompareOp compareOp);
7089
typedef void (VKAPI_PTR *PFN_vkCmdSetRasterizerDiscardEnable)(VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable);
7090
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBiasEnable)(VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable);
7091
typedef void (VKAPI_PTR *PFN_vkCmdSetPrimitiveRestartEnable)(VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable);
7092
typedef void (VKAPI_PTR *PFN_vkGetDeviceBufferMemoryRequirements)(VkDevice device, const VkDeviceBufferMemoryRequirements* pInfo, VkMemoryRequirements2* pMemoryRequirements);
7093
typedef void (VKAPI_PTR *PFN_vkGetDeviceImageMemoryRequirements)(VkDevice device, const VkDeviceImageMemoryRequirements* pInfo, VkMemoryRequirements2* pMemoryRequirements);
7094
typedef void (VKAPI_PTR *PFN_vkGetDeviceImageSparseMemoryRequirements)(VkDevice device, const VkDeviceImageMemoryRequirements* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
7096
#ifndef VK_NO_PROTOTYPES
7097
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceToolProperties(
7098
VkPhysicalDevice physicalDevice,
7099
uint32_t* pToolCount,
7100
VkPhysicalDeviceToolProperties* pToolProperties);
7102
VKAPI_ATTR VkResult VKAPI_CALL vkCreatePrivateDataSlot(
7104
const VkPrivateDataSlotCreateInfo* pCreateInfo,
7105
const VkAllocationCallbacks* pAllocator,
7106
VkPrivateDataSlot* pPrivateDataSlot);
7108
VKAPI_ATTR void VKAPI_CALL vkDestroyPrivateDataSlot(
7110
VkPrivateDataSlot privateDataSlot,
7111
const VkAllocationCallbacks* pAllocator);
7113
VKAPI_ATTR VkResult VKAPI_CALL vkSetPrivateData(
7115
VkObjectType objectType,
7116
uint64_t objectHandle,
7117
VkPrivateDataSlot privateDataSlot,
7120
VKAPI_ATTR void VKAPI_CALL vkGetPrivateData(
7122
VkObjectType objectType,
7123
uint64_t objectHandle,
7124
VkPrivateDataSlot privateDataSlot,
7127
VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent2(
7128
VkCommandBuffer commandBuffer,
7130
const VkDependencyInfo* pDependencyInfo);
7132
VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent2(
7133
VkCommandBuffer commandBuffer,
7135
VkPipelineStageFlags2 stageMask);
7137
VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents2(
7138
VkCommandBuffer commandBuffer,
7139
uint32_t eventCount,
7140
const VkEvent* pEvents,
7141
const VkDependencyInfo* pDependencyInfos);
7143
VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier2(
7144
VkCommandBuffer commandBuffer,
7145
const VkDependencyInfo* pDependencyInfo);
7147
VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp2(
7148
VkCommandBuffer commandBuffer,
7149
VkPipelineStageFlags2 stage,
7150
VkQueryPool queryPool,
7153
VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit2(
7155
uint32_t submitCount,
7156
const VkSubmitInfo2* pSubmits,
7159
VKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer2(
7160
VkCommandBuffer commandBuffer,
7161
const VkCopyBufferInfo2* pCopyBufferInfo);
7163
VKAPI_ATTR void VKAPI_CALL vkCmdCopyImage2(
7164
VkCommandBuffer commandBuffer,
7165
const VkCopyImageInfo2* pCopyImageInfo);
7167
VKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage2(
7168
VkCommandBuffer commandBuffer,
7169
const VkCopyBufferToImageInfo2* pCopyBufferToImageInfo);
7171
VKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer2(
7172
VkCommandBuffer commandBuffer,
7173
const VkCopyImageToBufferInfo2* pCopyImageToBufferInfo);
7175
VKAPI_ATTR void VKAPI_CALL vkCmdBlitImage2(
7176
VkCommandBuffer commandBuffer,
7177
const VkBlitImageInfo2* pBlitImageInfo);
7179
VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage2(
7180
VkCommandBuffer commandBuffer,
7181
const VkResolveImageInfo2* pResolveImageInfo);
7183
VKAPI_ATTR void VKAPI_CALL vkCmdBeginRendering(
7184
VkCommandBuffer commandBuffer,
7185
const VkRenderingInfo* pRenderingInfo);
7187
VKAPI_ATTR void VKAPI_CALL vkCmdEndRendering(
7188
VkCommandBuffer commandBuffer);
7190
VKAPI_ATTR void VKAPI_CALL vkCmdSetCullMode(
7191
VkCommandBuffer commandBuffer,
7192
VkCullModeFlags cullMode);
7194
VKAPI_ATTR void VKAPI_CALL vkCmdSetFrontFace(
7195
VkCommandBuffer commandBuffer,
7196
VkFrontFace frontFace);
7198
VKAPI_ATTR void VKAPI_CALL vkCmdSetPrimitiveTopology(
7199
VkCommandBuffer commandBuffer,
7200
VkPrimitiveTopology primitiveTopology);
7202
VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWithCount(
7203
VkCommandBuffer commandBuffer,
7204
uint32_t viewportCount,
7205
const VkViewport* pViewports);
7207
VKAPI_ATTR void VKAPI_CALL vkCmdSetScissorWithCount(
7208
VkCommandBuffer commandBuffer,
7209
uint32_t scissorCount,
7210
const VkRect2D* pScissors);
7212
VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers2(
7213
VkCommandBuffer commandBuffer,
7214
uint32_t firstBinding,
7215
uint32_t bindingCount,
7216
const VkBuffer* pBuffers,
7217
const VkDeviceSize* pOffsets,
7218
const VkDeviceSize* pSizes,
7219
const VkDeviceSize* pStrides);
7221
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthTestEnable(
7222
VkCommandBuffer commandBuffer,
7223
VkBool32 depthTestEnable);
7225
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthWriteEnable(
7226
VkCommandBuffer commandBuffer,
7227
VkBool32 depthWriteEnable);
7229
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthCompareOp(
7230
VkCommandBuffer commandBuffer,
7231
VkCompareOp depthCompareOp);
7233
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBoundsTestEnable(
7234
VkCommandBuffer commandBuffer,
7235
VkBool32 depthBoundsTestEnable);
7237
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilTestEnable(
7238
VkCommandBuffer commandBuffer,
7239
VkBool32 stencilTestEnable);
7241
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilOp(
7242
VkCommandBuffer commandBuffer,
7243
VkStencilFaceFlags faceMask,
7246
VkStencilOp depthFailOp,
7247
VkCompareOp compareOp);
7249
VKAPI_ATTR void VKAPI_CALL vkCmdSetRasterizerDiscardEnable(
7250
VkCommandBuffer commandBuffer,
7251
VkBool32 rasterizerDiscardEnable);
7253
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBiasEnable(
7254
VkCommandBuffer commandBuffer,
7255
VkBool32 depthBiasEnable);
7257
VKAPI_ATTR void VKAPI_CALL vkCmdSetPrimitiveRestartEnable(
7258
VkCommandBuffer commandBuffer,
7259
VkBool32 primitiveRestartEnable);
7261
VKAPI_ATTR void VKAPI_CALL vkGetDeviceBufferMemoryRequirements(
7263
const VkDeviceBufferMemoryRequirements* pInfo,
7264
VkMemoryRequirements2* pMemoryRequirements);
7266
VKAPI_ATTR void VKAPI_CALL vkGetDeviceImageMemoryRequirements(
7268
const VkDeviceImageMemoryRequirements* pInfo,
7269
VkMemoryRequirements2* pMemoryRequirements);
7271
VKAPI_ATTR void VKAPI_CALL vkGetDeviceImageSparseMemoryRequirements(
7273
const VkDeviceImageMemoryRequirements* pInfo,
7274
uint32_t* pSparseMemoryRequirementCount,
7275
VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
7279
#define VK_KHR_surface 1
7280
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR)
7281
#define VK_KHR_SURFACE_SPEC_VERSION 25
7282
#define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface"
7284
typedef enum VkPresentModeKHR {
7285
VK_PRESENT_MODE_IMMEDIATE_KHR = 0,
7286
VK_PRESENT_MODE_MAILBOX_KHR = 1,
7287
VK_PRESENT_MODE_FIFO_KHR = 2,
7288
VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3,
7289
VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR = 1000111000,
7290
VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR = 1000111001,
7291
VK_PRESENT_MODE_MAX_ENUM_KHR = 0x7FFFFFFF
7294
typedef enum VkColorSpaceKHR {
7295
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0,
7296
VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT = 1000104001,
7297
VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT = 1000104002,
7298
VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT = 1000104003,
7299
VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT = 1000104004,
7300
VK_COLOR_SPACE_BT709_LINEAR_EXT = 1000104005,
7301
VK_COLOR_SPACE_BT709_NONLINEAR_EXT = 1000104006,
7302
VK_COLOR_SPACE_BT2020_LINEAR_EXT = 1000104007,
7303
VK_COLOR_SPACE_HDR10_ST2084_EXT = 1000104008,
7304
VK_COLOR_SPACE_DOLBYVISION_EXT = 1000104009,
7305
VK_COLOR_SPACE_HDR10_HLG_EXT = 1000104010,
7306
VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT = 1000104011,
7307
VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT = 1000104012,
7308
VK_COLOR_SPACE_PASS_THROUGH_EXT = 1000104013,
7309
VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT = 1000104014,
7310
VK_COLOR_SPACE_DISPLAY_NATIVE_AMD = 1000213000,
7311
VK_COLORSPACE_SRGB_NONLINEAR_KHR = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,
7312
VK_COLOR_SPACE_DCI_P3_LINEAR_EXT = VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT,
7313
VK_COLOR_SPACE_MAX_ENUM_KHR = 0x7FFFFFFF
7316
typedef enum VkSurfaceTransformFlagBitsKHR {
7317
VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 0x00000001,
7318
VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002,
7319
VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004,
7320
VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008,
7321
VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010,
7322
VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020,
7323
VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040,
7324
VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080,
7325
VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100,
7326
VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
7327
} VkSurfaceTransformFlagBitsKHR;
7329
typedef enum VkCompositeAlphaFlagBitsKHR {
7330
VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,
7331
VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 0x00000002,
7332
VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 0x00000004,
7333
VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 0x00000008,
7334
VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
7335
} VkCompositeAlphaFlagBitsKHR;
7336
typedef VkFlags VkCompositeAlphaFlagsKHR;
7337
typedef VkFlags VkSurfaceTransformFlagsKHR;
7338
typedef struct VkSurfaceCapabilitiesKHR {
7339
uint32_t minImageCount;
7340
uint32_t maxImageCount;
7341
VkExtent2D currentExtent;
7342
VkExtent2D minImageExtent;
7343
VkExtent2D maxImageExtent;
7344
uint32_t maxImageArrayLayers;
7345
VkSurfaceTransformFlagsKHR supportedTransforms;
7346
VkSurfaceTransformFlagBitsKHR currentTransform;
7347
VkCompositeAlphaFlagsKHR supportedCompositeAlpha;
7348
VkImageUsageFlags supportedUsageFlags;
7349
} VkSurfaceCapabilitiesKHR;
7351
typedef struct VkSurfaceFormatKHR {
7353
VkColorSpaceKHR colorSpace;
7354
} VkSurfaceFormatKHR;
7356
typedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator);
7357
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported);
7358
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);
7359
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats);
7360
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes);
7362
#ifndef VK_NO_PROTOTYPES
7363
VKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR(
7364
VkInstance instance,
7365
VkSurfaceKHR surface,
7366
const VkAllocationCallbacks* pAllocator);
7368
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR(
7369
VkPhysicalDevice physicalDevice,
7370
uint32_t queueFamilyIndex,
7371
VkSurfaceKHR surface,
7372
VkBool32* pSupported);
7374
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
7375
VkPhysicalDevice physicalDevice,
7376
VkSurfaceKHR surface,
7377
VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);
7379
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR(
7380
VkPhysicalDevice physicalDevice,
7381
VkSurfaceKHR surface,
7382
uint32_t* pSurfaceFormatCount,
7383
VkSurfaceFormatKHR* pSurfaceFormats);
7385
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR(
7386
VkPhysicalDevice physicalDevice,
7387
VkSurfaceKHR surface,
7388
uint32_t* pPresentModeCount,
7389
VkPresentModeKHR* pPresentModes);
7393
#define VK_KHR_swapchain 1
7394
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR)
7395
#define VK_KHR_SWAPCHAIN_SPEC_VERSION 70
7396
#define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain"
7398
typedef enum VkSwapchainCreateFlagBitsKHR {
7399
VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = 0x00000001,
7400
VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR = 0x00000002,
7401
VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR = 0x00000004,
7402
VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
7403
} VkSwapchainCreateFlagBitsKHR;
7404
typedef VkFlags VkSwapchainCreateFlagsKHR;
7406
typedef enum VkDeviceGroupPresentModeFlagBitsKHR {
7407
VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR = 0x00000001,
7408
VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR = 0x00000002,
7409
VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR = 0x00000004,
7410
VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR = 0x00000008,
7411
VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
7412
} VkDeviceGroupPresentModeFlagBitsKHR;
7413
typedef VkFlags VkDeviceGroupPresentModeFlagsKHR;
7414
typedef struct VkSwapchainCreateInfoKHR {
7415
VkStructureType sType;
7417
VkSwapchainCreateFlagsKHR flags;
7418
VkSurfaceKHR surface;
7419
uint32_t minImageCount;
7420
VkFormat imageFormat;
7421
VkColorSpaceKHR imageColorSpace;
7422
VkExtent2D imageExtent;
7423
uint32_t imageArrayLayers;
7424
VkImageUsageFlags imageUsage;
7425
VkSharingMode imageSharingMode;
7426
uint32_t queueFamilyIndexCount;
7427
const uint32_t* pQueueFamilyIndices;
7428
VkSurfaceTransformFlagBitsKHR preTransform;
7429
VkCompositeAlphaFlagBitsKHR compositeAlpha;
7430
VkPresentModeKHR presentMode;
7432
VkSwapchainKHR oldSwapchain;
7433
} VkSwapchainCreateInfoKHR;
7435
typedef struct VkPresentInfoKHR {
7436
VkStructureType sType;
7438
uint32_t waitSemaphoreCount;
7439
const VkSemaphore* pWaitSemaphores;
7440
uint32_t swapchainCount;
7441
const VkSwapchainKHR* pSwapchains;
7442
const uint32_t* pImageIndices;
7446
typedef struct VkImageSwapchainCreateInfoKHR {
7447
VkStructureType sType;
7449
VkSwapchainKHR swapchain;
7450
} VkImageSwapchainCreateInfoKHR;
7452
typedef struct VkBindImageMemorySwapchainInfoKHR {
7453
VkStructureType sType;
7455
VkSwapchainKHR swapchain;
7456
uint32_t imageIndex;
7457
} VkBindImageMemorySwapchainInfoKHR;
7459
typedef struct VkAcquireNextImageInfoKHR {
7460
VkStructureType sType;
7462
VkSwapchainKHR swapchain;
7464
VkSemaphore semaphore;
7466
uint32_t deviceMask;
7467
} VkAcquireNextImageInfoKHR;
7469
typedef struct VkDeviceGroupPresentCapabilitiesKHR {
7470
VkStructureType sType;
7472
uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE];
7473
VkDeviceGroupPresentModeFlagsKHR modes;
7474
} VkDeviceGroupPresentCapabilitiesKHR;
7476
typedef struct VkDeviceGroupPresentInfoKHR {
7477
VkStructureType sType;
7479
uint32_t swapchainCount;
7480
const uint32_t* pDeviceMasks;
7481
VkDeviceGroupPresentModeFlagBitsKHR mode;
7482
} VkDeviceGroupPresentInfoKHR;
7484
typedef struct VkDeviceGroupSwapchainCreateInfoKHR {
7485
VkStructureType sType;
7487
VkDeviceGroupPresentModeFlagsKHR modes;
7488
} VkDeviceGroupSwapchainCreateInfoKHR;
7490
typedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain);
7491
typedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator);
7492
typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainImagesKHR)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages);
7493
typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex);
7494
typedef VkResult (VKAPI_PTR *PFN_vkQueuePresentKHR)(VkQueue queue, const VkPresentInfoKHR* pPresentInfo);
7495
typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupPresentCapabilitiesKHR)(VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);
7496
typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupSurfacePresentModesKHR)(VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR* pModes);
7497
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDevicePresentRectanglesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects);
7498
typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImage2KHR)(VkDevice device, const VkAcquireNextImageInfoKHR* pAcquireInfo, uint32_t* pImageIndex);
7500
#ifndef VK_NO_PROTOTYPES
7501
VKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR(
7503
const VkSwapchainCreateInfoKHR* pCreateInfo,
7504
const VkAllocationCallbacks* pAllocator,
7505
VkSwapchainKHR* pSwapchain);
7507
VKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR(
7509
VkSwapchainKHR swapchain,
7510
const VkAllocationCallbacks* pAllocator);
7512
VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR(
7514
VkSwapchainKHR swapchain,
7515
uint32_t* pSwapchainImageCount,
7516
VkImage* pSwapchainImages);
7518
VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR(
7520
VkSwapchainKHR swapchain,
7522
VkSemaphore semaphore,
7524
uint32_t* pImageIndex);
7526
VKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR(
7528
const VkPresentInfoKHR* pPresentInfo);
7530
VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupPresentCapabilitiesKHR(
7532
VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);
7534
VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupSurfacePresentModesKHR(
7536
VkSurfaceKHR surface,
7537
VkDeviceGroupPresentModeFlagsKHR* pModes);
7539
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDevicePresentRectanglesKHR(
7540
VkPhysicalDevice physicalDevice,
7541
VkSurfaceKHR surface,
7542
uint32_t* pRectCount,
7545
VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImage2KHR(
7547
const VkAcquireNextImageInfoKHR* pAcquireInfo,
7548
uint32_t* pImageIndex);
7552
#define VK_KHR_display 1
7553
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR)
7554
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayModeKHR)
7555
#define VK_KHR_DISPLAY_SPEC_VERSION 23
7556
#define VK_KHR_DISPLAY_EXTENSION_NAME "VK_KHR_display"
7557
typedef VkFlags VkDisplayModeCreateFlagsKHR;
7559
typedef enum VkDisplayPlaneAlphaFlagBitsKHR {
7560
VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,
7561
VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 0x00000002,
7562
VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004,
7563
VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008,
7564
VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
7565
} VkDisplayPlaneAlphaFlagBitsKHR;
7566
typedef VkFlags VkDisplayPlaneAlphaFlagsKHR;
7567
typedef VkFlags VkDisplaySurfaceCreateFlagsKHR;
7568
typedef struct VkDisplayModeParametersKHR {
7569
VkExtent2D visibleRegion;
7570
uint32_t refreshRate;
7571
} VkDisplayModeParametersKHR;
7573
typedef struct VkDisplayModeCreateInfoKHR {
7574
VkStructureType sType;
7576
VkDisplayModeCreateFlagsKHR flags;
7577
VkDisplayModeParametersKHR parameters;
7578
} VkDisplayModeCreateInfoKHR;
7580
typedef struct VkDisplayModePropertiesKHR {
7581
VkDisplayModeKHR displayMode;
7582
VkDisplayModeParametersKHR parameters;
7583
} VkDisplayModePropertiesKHR;
7585
typedef struct VkDisplayPlaneCapabilitiesKHR {
7586
VkDisplayPlaneAlphaFlagsKHR supportedAlpha;
7587
VkOffset2D minSrcPosition;
7588
VkOffset2D maxSrcPosition;
7589
VkExtent2D minSrcExtent;
7590
VkExtent2D maxSrcExtent;
7591
VkOffset2D minDstPosition;
7592
VkOffset2D maxDstPosition;
7593
VkExtent2D minDstExtent;
7594
VkExtent2D maxDstExtent;
7595
} VkDisplayPlaneCapabilitiesKHR;
7597
typedef struct VkDisplayPlanePropertiesKHR {
7598
VkDisplayKHR currentDisplay;
7599
uint32_t currentStackIndex;
7600
} VkDisplayPlanePropertiesKHR;
7602
typedef struct VkDisplayPropertiesKHR {
7603
VkDisplayKHR display;
7604
const char* displayName;
7605
VkExtent2D physicalDimensions;
7606
VkExtent2D physicalResolution;
7607
VkSurfaceTransformFlagsKHR supportedTransforms;
7608
VkBool32 planeReorderPossible;
7609
VkBool32 persistentContent;
7610
} VkDisplayPropertiesKHR;
7612
typedef struct VkDisplaySurfaceCreateInfoKHR {
7613
VkStructureType sType;
7615
VkDisplaySurfaceCreateFlagsKHR flags;
7616
VkDisplayModeKHR displayMode;
7617
uint32_t planeIndex;
7618
uint32_t planeStackIndex;
7619
VkSurfaceTransformFlagBitsKHR transform;
7621
VkDisplayPlaneAlphaFlagBitsKHR alphaMode;
7622
VkExtent2D imageExtent;
7623
} VkDisplaySurfaceCreateInfoKHR;
7625
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties);
7626
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties);
7627
typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays);
7628
typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties);
7629
typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode);
7630
typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities);
7631
typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
7633
#ifndef VK_NO_PROTOTYPES
7634
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR(
7635
VkPhysicalDevice physicalDevice,
7636
uint32_t* pPropertyCount,
7637
VkDisplayPropertiesKHR* pProperties);
7639
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
7640
VkPhysicalDevice physicalDevice,
7641
uint32_t* pPropertyCount,
7642
VkDisplayPlanePropertiesKHR* pProperties);
7644
VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR(
7645
VkPhysicalDevice physicalDevice,
7646
uint32_t planeIndex,
7647
uint32_t* pDisplayCount,
7648
VkDisplayKHR* pDisplays);
7650
VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR(
7651
VkPhysicalDevice physicalDevice,
7652
VkDisplayKHR display,
7653
uint32_t* pPropertyCount,
7654
VkDisplayModePropertiesKHR* pProperties);
7656
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR(
7657
VkPhysicalDevice physicalDevice,
7658
VkDisplayKHR display,
7659
const VkDisplayModeCreateInfoKHR* pCreateInfo,
7660
const VkAllocationCallbacks* pAllocator,
7661
VkDisplayModeKHR* pMode);
7663
VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR(
7664
VkPhysicalDevice physicalDevice,
7665
VkDisplayModeKHR mode,
7666
uint32_t planeIndex,
7667
VkDisplayPlaneCapabilitiesKHR* pCapabilities);
7669
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR(
7670
VkInstance instance,
7671
const VkDisplaySurfaceCreateInfoKHR* pCreateInfo,
7672
const VkAllocationCallbacks* pAllocator,
7673
VkSurfaceKHR* pSurface);
7677
#define VK_KHR_display_swapchain 1
7678
#define VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION 10
7679
#define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain"
7680
typedef struct VkDisplayPresentInfoKHR {
7681
VkStructureType sType;
7685
VkBool32 persistent;
7686
} VkDisplayPresentInfoKHR;
7688
typedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains);
7690
#ifndef VK_NO_PROTOTYPES
7691
VKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR(
7693
uint32_t swapchainCount,
7694
const VkSwapchainCreateInfoKHR* pCreateInfos,
7695
const VkAllocationCallbacks* pAllocator,
7696
VkSwapchainKHR* pSwapchains);
7700
#define VK_KHR_sampler_mirror_clamp_to_edge 1
7701
#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION 3
7702
#define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge"
7705
#define VK_KHR_dynamic_rendering 1
7706
#define VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION 1
7707
#define VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME "VK_KHR_dynamic_rendering"
7708
typedef VkRenderingFlags VkRenderingFlagsKHR;
7710
typedef VkRenderingFlagBits VkRenderingFlagBitsKHR;
7712
typedef VkRenderingInfo VkRenderingInfoKHR;
7714
typedef VkRenderingAttachmentInfo VkRenderingAttachmentInfoKHR;
7716
typedef VkPipelineRenderingCreateInfo VkPipelineRenderingCreateInfoKHR;
7718
typedef VkPhysicalDeviceDynamicRenderingFeatures VkPhysicalDeviceDynamicRenderingFeaturesKHR;
7720
typedef VkCommandBufferInheritanceRenderingInfo VkCommandBufferInheritanceRenderingInfoKHR;
7722
typedef struct VkRenderingFragmentShadingRateAttachmentInfoKHR {
7723
VkStructureType sType;
7725
VkImageView imageView;
7726
VkImageLayout imageLayout;
7727
VkExtent2D shadingRateAttachmentTexelSize;
7728
} VkRenderingFragmentShadingRateAttachmentInfoKHR;
7730
typedef struct VkRenderingFragmentDensityMapAttachmentInfoEXT {
7731
VkStructureType sType;
7733
VkImageView imageView;
7734
VkImageLayout imageLayout;
7735
} VkRenderingFragmentDensityMapAttachmentInfoEXT;
7737
typedef struct VkAttachmentSampleCountInfoAMD {
7738
VkStructureType sType;
7740
uint32_t colorAttachmentCount;
7741
const VkSampleCountFlagBits* pColorAttachmentSamples;
7742
VkSampleCountFlagBits depthStencilAttachmentSamples;
7743
} VkAttachmentSampleCountInfoAMD;
7745
typedef VkAttachmentSampleCountInfoAMD VkAttachmentSampleCountInfoNV;
7747
typedef struct VkMultiviewPerViewAttributesInfoNVX {
7748
VkStructureType sType;
7750
VkBool32 perViewAttributes;
7751
VkBool32 perViewAttributesPositionXOnly;
7752
} VkMultiviewPerViewAttributesInfoNVX;
7754
typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderingKHR)(VkCommandBuffer commandBuffer, const VkRenderingInfo* pRenderingInfo);
7755
typedef void (VKAPI_PTR *PFN_vkCmdEndRenderingKHR)(VkCommandBuffer commandBuffer);
7757
#ifndef VK_NO_PROTOTYPES
7758
VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderingKHR(
7759
VkCommandBuffer commandBuffer,
7760
const VkRenderingInfo* pRenderingInfo);
7762
VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderingKHR(
7763
VkCommandBuffer commandBuffer);
7767
#define VK_KHR_multiview 1
7768
#define VK_KHR_MULTIVIEW_SPEC_VERSION 1
7769
#define VK_KHR_MULTIVIEW_EXTENSION_NAME "VK_KHR_multiview"
7770
typedef VkRenderPassMultiviewCreateInfo VkRenderPassMultiviewCreateInfoKHR;
7772
typedef VkPhysicalDeviceMultiviewFeatures VkPhysicalDeviceMultiviewFeaturesKHR;
7774
typedef VkPhysicalDeviceMultiviewProperties VkPhysicalDeviceMultiviewPropertiesKHR;
7778
#define VK_KHR_get_physical_device_properties2 1
7779
#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION 2
7780
#define VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME "VK_KHR_get_physical_device_properties2"
7781
typedef VkPhysicalDeviceFeatures2 VkPhysicalDeviceFeatures2KHR;
7783
typedef VkPhysicalDeviceProperties2 VkPhysicalDeviceProperties2KHR;
7785
typedef VkFormatProperties2 VkFormatProperties2KHR;
7787
typedef VkImageFormatProperties2 VkImageFormatProperties2KHR;
7789
typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR;
7791
typedef VkQueueFamilyProperties2 VkQueueFamilyProperties2KHR;
7793
typedef VkPhysicalDeviceMemoryProperties2 VkPhysicalDeviceMemoryProperties2KHR;
7795
typedef VkSparseImageFormatProperties2 VkSparseImageFormatProperties2KHR;
7797
typedef VkPhysicalDeviceSparseImageFormatInfo2 VkPhysicalDeviceSparseImageFormatInfo2KHR;
7799
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures);
7800
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties);
7801
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties2KHR)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties);
7802
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties);
7803
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties);
7804
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
7805
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties);
7807
#ifndef VK_NO_PROTOTYPES
7808
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2KHR(
7809
VkPhysicalDevice physicalDevice,
7810
VkPhysicalDeviceFeatures2* pFeatures);
7812
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2KHR(
7813
VkPhysicalDevice physicalDevice,
7814
VkPhysicalDeviceProperties2* pProperties);
7816
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2KHR(
7817
VkPhysicalDevice physicalDevice,
7819
VkFormatProperties2* pFormatProperties);
7821
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2KHR(
7822
VkPhysicalDevice physicalDevice,
7823
const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
7824
VkImageFormatProperties2* pImageFormatProperties);
7826
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2KHR(
7827
VkPhysicalDevice physicalDevice,
7828
uint32_t* pQueueFamilyPropertyCount,
7829
VkQueueFamilyProperties2* pQueueFamilyProperties);
7831
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2KHR(
7832
VkPhysicalDevice physicalDevice,
7833
VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
7835
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
7836
VkPhysicalDevice physicalDevice,
7837
const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
7838
uint32_t* pPropertyCount,
7839
VkSparseImageFormatProperties2* pProperties);
7843
#define VK_KHR_device_group 1
7844
#define VK_KHR_DEVICE_GROUP_SPEC_VERSION 4
7845
#define VK_KHR_DEVICE_GROUP_EXTENSION_NAME "VK_KHR_device_group"
7846
typedef VkPeerMemoryFeatureFlags VkPeerMemoryFeatureFlagsKHR;
7848
typedef VkPeerMemoryFeatureFlagBits VkPeerMemoryFeatureFlagBitsKHR;
7850
typedef VkMemoryAllocateFlags VkMemoryAllocateFlagsKHR;
7852
typedef VkMemoryAllocateFlagBits VkMemoryAllocateFlagBitsKHR;
7854
typedef VkMemoryAllocateFlagsInfo VkMemoryAllocateFlagsInfoKHR;
7856
typedef VkDeviceGroupRenderPassBeginInfo VkDeviceGroupRenderPassBeginInfoKHR;
7858
typedef VkDeviceGroupCommandBufferBeginInfo VkDeviceGroupCommandBufferBeginInfoKHR;
7860
typedef VkDeviceGroupSubmitInfo VkDeviceGroupSubmitInfoKHR;
7862
typedef VkDeviceGroupBindSparseInfo VkDeviceGroupBindSparseInfoKHR;
7864
typedef VkBindBufferMemoryDeviceGroupInfo VkBindBufferMemoryDeviceGroupInfoKHR;
7866
typedef VkBindImageMemoryDeviceGroupInfo VkBindImageMemoryDeviceGroupInfoKHR;
7868
typedef void (VKAPI_PTR *PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
7869
typedef void (VKAPI_PTR *PFN_vkCmdSetDeviceMaskKHR)(VkCommandBuffer commandBuffer, uint32_t deviceMask);
7870
typedef void (VKAPI_PTR *PFN_vkCmdDispatchBaseKHR)(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);
7872
#ifndef VK_NO_PROTOTYPES
7873
VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeaturesKHR(
7876
uint32_t localDeviceIndex,
7877
uint32_t remoteDeviceIndex,
7878
VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
7880
VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMaskKHR(
7881
VkCommandBuffer commandBuffer,
7882
uint32_t deviceMask);
7884
VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBaseKHR(
7885
VkCommandBuffer commandBuffer,
7886
uint32_t baseGroupX,
7887
uint32_t baseGroupY,
7888
uint32_t baseGroupZ,
7889
uint32_t groupCountX,
7890
uint32_t groupCountY,
7891
uint32_t groupCountZ);
7895
#define VK_KHR_shader_draw_parameters 1
7896
#define VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION 1
7897
#define VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME "VK_KHR_shader_draw_parameters"
7900
#define VK_KHR_maintenance1 1
7901
#define VK_KHR_MAINTENANCE_1_SPEC_VERSION 2
7902
#define VK_KHR_MAINTENANCE_1_EXTENSION_NAME "VK_KHR_maintenance1"
7903
#define VK_KHR_MAINTENANCE1_SPEC_VERSION VK_KHR_MAINTENANCE_1_SPEC_VERSION
7904
#define VK_KHR_MAINTENANCE1_EXTENSION_NAME VK_KHR_MAINTENANCE_1_EXTENSION_NAME
7905
typedef VkCommandPoolTrimFlags VkCommandPoolTrimFlagsKHR;
7907
typedef void (VKAPI_PTR *PFN_vkTrimCommandPoolKHR)(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags);
7909
#ifndef VK_NO_PROTOTYPES
7910
VKAPI_ATTR void VKAPI_CALL vkTrimCommandPoolKHR(
7912
VkCommandPool commandPool,
7913
VkCommandPoolTrimFlags flags);
7917
#define VK_KHR_device_group_creation 1
7918
#define VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION 1
7919
#define VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME "VK_KHR_device_group_creation"
7920
#define VK_MAX_DEVICE_GROUP_SIZE_KHR VK_MAX_DEVICE_GROUP_SIZE
7921
typedef VkPhysicalDeviceGroupProperties VkPhysicalDeviceGroupPropertiesKHR;
7923
typedef VkDeviceGroupDeviceCreateInfo VkDeviceGroupDeviceCreateInfoKHR;
7925
typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceGroupsKHR)(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
7927
#ifndef VK_NO_PROTOTYPES
7928
VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroupsKHR(
7929
VkInstance instance,
7930
uint32_t* pPhysicalDeviceGroupCount,
7931
VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
7935
#define VK_KHR_external_memory_capabilities 1
7936
#define VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1
7937
#define VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_memory_capabilities"
7938
#define VK_LUID_SIZE_KHR VK_LUID_SIZE
7939
typedef VkExternalMemoryHandleTypeFlags VkExternalMemoryHandleTypeFlagsKHR;
7941
typedef VkExternalMemoryHandleTypeFlagBits VkExternalMemoryHandleTypeFlagBitsKHR;
7943
typedef VkExternalMemoryFeatureFlags VkExternalMemoryFeatureFlagsKHR;
7945
typedef VkExternalMemoryFeatureFlagBits VkExternalMemoryFeatureFlagBitsKHR;
7947
typedef VkExternalMemoryProperties VkExternalMemoryPropertiesKHR;
7949
typedef VkPhysicalDeviceExternalImageFormatInfo VkPhysicalDeviceExternalImageFormatInfoKHR;
7951
typedef VkExternalImageFormatProperties VkExternalImageFormatPropertiesKHR;
7953
typedef VkPhysicalDeviceExternalBufferInfo VkPhysicalDeviceExternalBufferInfoKHR;
7955
typedef VkExternalBufferProperties VkExternalBufferPropertiesKHR;
7957
typedef VkPhysicalDeviceIDProperties VkPhysicalDeviceIDPropertiesKHR;
7959
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties);
7961
#ifndef VK_NO_PROTOTYPES
7962
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferPropertiesKHR(
7963
VkPhysicalDevice physicalDevice,
7964
const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
7965
VkExternalBufferProperties* pExternalBufferProperties);
7969
#define VK_KHR_external_memory 1
7970
#define VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION 1
7971
#define VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME "VK_KHR_external_memory"
7972
#define VK_QUEUE_FAMILY_EXTERNAL_KHR VK_QUEUE_FAMILY_EXTERNAL
7973
typedef VkExternalMemoryImageCreateInfo VkExternalMemoryImageCreateInfoKHR;
7975
typedef VkExternalMemoryBufferCreateInfo VkExternalMemoryBufferCreateInfoKHR;
7977
typedef VkExportMemoryAllocateInfo VkExportMemoryAllocateInfoKHR;
7981
#define VK_KHR_external_memory_fd 1
7982
#define VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION 1
7983
#define VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME "VK_KHR_external_memory_fd"
7984
typedef struct VkImportMemoryFdInfoKHR {
7985
VkStructureType sType;
7987
VkExternalMemoryHandleTypeFlagBits handleType;
7989
} VkImportMemoryFdInfoKHR;
7991
typedef struct VkMemoryFdPropertiesKHR {
7992
VkStructureType sType;
7994
uint32_t memoryTypeBits;
7995
} VkMemoryFdPropertiesKHR;
7997
typedef struct VkMemoryGetFdInfoKHR {
7998
VkStructureType sType;
8000
VkDeviceMemory memory;
8001
VkExternalMemoryHandleTypeFlagBits handleType;
8002
} VkMemoryGetFdInfoKHR;
8004
typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdKHR)(VkDevice device, const VkMemoryGetFdInfoKHR* pGetFdInfo, int* pFd);
8005
typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryFdPropertiesKHR)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties);
8007
#ifndef VK_NO_PROTOTYPES
8008
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdKHR(
8010
const VkMemoryGetFdInfoKHR* pGetFdInfo,
8013
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryFdPropertiesKHR(
8015
VkExternalMemoryHandleTypeFlagBits handleType,
8017
VkMemoryFdPropertiesKHR* pMemoryFdProperties);
8021
#define VK_KHR_external_semaphore_capabilities 1
8022
#define VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION 1
8023
#define VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_semaphore_capabilities"
8024
typedef VkExternalSemaphoreHandleTypeFlags VkExternalSemaphoreHandleTypeFlagsKHR;
8026
typedef VkExternalSemaphoreHandleTypeFlagBits VkExternalSemaphoreHandleTypeFlagBitsKHR;
8028
typedef VkExternalSemaphoreFeatureFlags VkExternalSemaphoreFeatureFlagsKHR;
8030
typedef VkExternalSemaphoreFeatureFlagBits VkExternalSemaphoreFeatureFlagBitsKHR;
8032
typedef VkPhysicalDeviceExternalSemaphoreInfo VkPhysicalDeviceExternalSemaphoreInfoKHR;
8034
typedef VkExternalSemaphoreProperties VkExternalSemaphorePropertiesKHR;
8036
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
8038
#ifndef VK_NO_PROTOTYPES
8039
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
8040
VkPhysicalDevice physicalDevice,
8041
const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
8042
VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
8046
#define VK_KHR_external_semaphore 1
8047
#define VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION 1
8048
#define VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME "VK_KHR_external_semaphore"
8049
typedef VkSemaphoreImportFlags VkSemaphoreImportFlagsKHR;
8051
typedef VkSemaphoreImportFlagBits VkSemaphoreImportFlagBitsKHR;
8053
typedef VkExportSemaphoreCreateInfo VkExportSemaphoreCreateInfoKHR;
8057
#define VK_KHR_external_semaphore_fd 1
8058
#define VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION 1
8059
#define VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME "VK_KHR_external_semaphore_fd"
8060
typedef struct VkImportSemaphoreFdInfoKHR {
8061
VkStructureType sType;
8063
VkSemaphore semaphore;
8064
VkSemaphoreImportFlags flags;
8065
VkExternalSemaphoreHandleTypeFlagBits handleType;
8067
} VkImportSemaphoreFdInfoKHR;
8069
typedef struct VkSemaphoreGetFdInfoKHR {
8070
VkStructureType sType;
8072
VkSemaphore semaphore;
8073
VkExternalSemaphoreHandleTypeFlagBits handleType;
8074
} VkSemaphoreGetFdInfoKHR;
8076
typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreFdKHR)(VkDevice device, const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);
8077
typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreFdKHR)(VkDevice device, const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd);
8079
#ifndef VK_NO_PROTOTYPES
8080
VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreFdKHR(
8082
const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);
8084
VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreFdKHR(
8086
const VkSemaphoreGetFdInfoKHR* pGetFdInfo,
8091
#define VK_KHR_push_descriptor 1
8092
#define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 2
8093
#define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor"
8094
typedef struct VkPhysicalDevicePushDescriptorPropertiesKHR {
8095
VkStructureType sType;
8097
uint32_t maxPushDescriptors;
8098
} VkPhysicalDevicePushDescriptorPropertiesKHR;
8100
typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetKHR)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites);
8101
typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplate descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData);
8103
#ifndef VK_NO_PROTOTYPES
8104
VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetKHR(
8105
VkCommandBuffer commandBuffer,
8106
VkPipelineBindPoint pipelineBindPoint,
8107
VkPipelineLayout layout,
8109
uint32_t descriptorWriteCount,
8110
const VkWriteDescriptorSet* pDescriptorWrites);
8112
VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetWithTemplateKHR(
8113
VkCommandBuffer commandBuffer,
8114
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
8115
VkPipelineLayout layout,
8121
#define VK_KHR_shader_float16_int8 1
8122
#define VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION 1
8123
#define VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME "VK_KHR_shader_float16_int8"
8124
typedef VkPhysicalDeviceShaderFloat16Int8Features VkPhysicalDeviceShaderFloat16Int8FeaturesKHR;
8126
typedef VkPhysicalDeviceShaderFloat16Int8Features VkPhysicalDeviceFloat16Int8FeaturesKHR;
8130
#define VK_KHR_16bit_storage 1
8131
#define VK_KHR_16BIT_STORAGE_SPEC_VERSION 1
8132
#define VK_KHR_16BIT_STORAGE_EXTENSION_NAME "VK_KHR_16bit_storage"
8133
typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR;
8137
#define VK_KHR_incremental_present 1
8138
#define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 2
8139
#define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present"
8140
typedef struct VkRectLayerKHR {
8146
typedef struct VkPresentRegionKHR {
8147
uint32_t rectangleCount;
8148
const VkRectLayerKHR* pRectangles;
8149
} VkPresentRegionKHR;
8151
typedef struct VkPresentRegionsKHR {
8152
VkStructureType sType;
8154
uint32_t swapchainCount;
8155
const VkPresentRegionKHR* pRegions;
8156
} VkPresentRegionsKHR;
8160
#define VK_KHR_descriptor_update_template 1
8161
typedef VkDescriptorUpdateTemplate VkDescriptorUpdateTemplateKHR;
8163
#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 1
8164
#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template"
8165
typedef VkDescriptorUpdateTemplateType VkDescriptorUpdateTemplateTypeKHR;
8167
typedef VkDescriptorUpdateTemplateCreateFlags VkDescriptorUpdateTemplateCreateFlagsKHR;
8169
typedef VkDescriptorUpdateTemplateEntry VkDescriptorUpdateTemplateEntryKHR;
8171
typedef VkDescriptorUpdateTemplateCreateInfo VkDescriptorUpdateTemplateCreateInfoKHR;
8173
typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplateKHR)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
8174
typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);
8175
typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData);
8177
#ifndef VK_NO_PROTOTYPES
8178
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR(
8180
const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
8181
const VkAllocationCallbacks* pAllocator,
8182
VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
8184
VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR(
8186
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
8187
const VkAllocationCallbacks* pAllocator);
8189
VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR(
8191
VkDescriptorSet descriptorSet,
8192
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
8197
#define VK_KHR_imageless_framebuffer 1
8198
#define VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION 1
8199
#define VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME "VK_KHR_imageless_framebuffer"
8200
typedef VkPhysicalDeviceImagelessFramebufferFeatures VkPhysicalDeviceImagelessFramebufferFeaturesKHR;
8202
typedef VkFramebufferAttachmentsCreateInfo VkFramebufferAttachmentsCreateInfoKHR;
8204
typedef VkFramebufferAttachmentImageInfo VkFramebufferAttachmentImageInfoKHR;
8206
typedef VkRenderPassAttachmentBeginInfo VkRenderPassAttachmentBeginInfoKHR;
8210
#define VK_KHR_create_renderpass2 1
8211
#define VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION 1
8212
#define VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME "VK_KHR_create_renderpass2"
8213
typedef VkRenderPassCreateInfo2 VkRenderPassCreateInfo2KHR;
8215
typedef VkAttachmentDescription2 VkAttachmentDescription2KHR;
8217
typedef VkAttachmentReference2 VkAttachmentReference2KHR;
8219
typedef VkSubpassDescription2 VkSubpassDescription2KHR;
8221
typedef VkSubpassDependency2 VkSubpassDependency2KHR;
8223
typedef VkSubpassBeginInfo VkSubpassBeginInfoKHR;
8225
typedef VkSubpassEndInfo VkSubpassEndInfoKHR;
8227
typedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass2KHR)(VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);
8228
typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass2KHR)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, const VkSubpassBeginInfo* pSubpassBeginInfo);
8229
typedef void (VKAPI_PTR *PFN_vkCmdNextSubpass2KHR)(VkCommandBuffer commandBuffer, const VkSubpassBeginInfo* pSubpassBeginInfo, const VkSubpassEndInfo* pSubpassEndInfo);
8230
typedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass2KHR)(VkCommandBuffer commandBuffer, const VkSubpassEndInfo* pSubpassEndInfo);
8232
#ifndef VK_NO_PROTOTYPES
8233
VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass2KHR(
8235
const VkRenderPassCreateInfo2* pCreateInfo,
8236
const VkAllocationCallbacks* pAllocator,
8237
VkRenderPass* pRenderPass);
8239
VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass2KHR(
8240
VkCommandBuffer commandBuffer,
8241
const VkRenderPassBeginInfo* pRenderPassBegin,
8242
const VkSubpassBeginInfo* pSubpassBeginInfo);
8244
VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass2KHR(
8245
VkCommandBuffer commandBuffer,
8246
const VkSubpassBeginInfo* pSubpassBeginInfo,
8247
const VkSubpassEndInfo* pSubpassEndInfo);
8249
VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass2KHR(
8250
VkCommandBuffer commandBuffer,
8251
const VkSubpassEndInfo* pSubpassEndInfo);
8255
#define VK_KHR_shared_presentable_image 1
8256
#define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1
8257
#define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image"
8258
typedef struct VkSharedPresentSurfaceCapabilitiesKHR {
8259
VkStructureType sType;
8261
VkImageUsageFlags sharedPresentSupportedUsageFlags;
8262
} VkSharedPresentSurfaceCapabilitiesKHR;
8264
typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain);
8266
#ifndef VK_NO_PROTOTYPES
8267
VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR(
8269
VkSwapchainKHR swapchain);
8273
#define VK_KHR_external_fence_capabilities 1
8274
#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION 1
8275
#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_fence_capabilities"
8276
typedef VkExternalFenceHandleTypeFlags VkExternalFenceHandleTypeFlagsKHR;
8278
typedef VkExternalFenceHandleTypeFlagBits VkExternalFenceHandleTypeFlagBitsKHR;
8280
typedef VkExternalFenceFeatureFlags VkExternalFenceFeatureFlagsKHR;
8282
typedef VkExternalFenceFeatureFlagBits VkExternalFenceFeatureFlagBitsKHR;
8284
typedef VkPhysicalDeviceExternalFenceInfo VkPhysicalDeviceExternalFenceInfoKHR;
8286
typedef VkExternalFenceProperties VkExternalFencePropertiesKHR;
8288
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties);
8290
#ifndef VK_NO_PROTOTYPES
8291
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFencePropertiesKHR(
8292
VkPhysicalDevice physicalDevice,
8293
const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
8294
VkExternalFenceProperties* pExternalFenceProperties);
8298
#define VK_KHR_external_fence 1
8299
#define VK_KHR_EXTERNAL_FENCE_SPEC_VERSION 1
8300
#define VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME "VK_KHR_external_fence"
8301
typedef VkFenceImportFlags VkFenceImportFlagsKHR;
8303
typedef VkFenceImportFlagBits VkFenceImportFlagBitsKHR;
8305
typedef VkExportFenceCreateInfo VkExportFenceCreateInfoKHR;
8309
#define VK_KHR_external_fence_fd 1
8310
#define VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION 1
8311
#define VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME "VK_KHR_external_fence_fd"
8312
typedef struct VkImportFenceFdInfoKHR {
8313
VkStructureType sType;
8316
VkFenceImportFlags flags;
8317
VkExternalFenceHandleTypeFlagBits handleType;
8319
} VkImportFenceFdInfoKHR;
8321
typedef struct VkFenceGetFdInfoKHR {
8322
VkStructureType sType;
8325
VkExternalFenceHandleTypeFlagBits handleType;
8326
} VkFenceGetFdInfoKHR;
8328
typedef VkResult (VKAPI_PTR *PFN_vkImportFenceFdKHR)(VkDevice device, const VkImportFenceFdInfoKHR* pImportFenceFdInfo);
8329
typedef VkResult (VKAPI_PTR *PFN_vkGetFenceFdKHR)(VkDevice device, const VkFenceGetFdInfoKHR* pGetFdInfo, int* pFd);
8331
#ifndef VK_NO_PROTOTYPES
8332
VKAPI_ATTR VkResult VKAPI_CALL vkImportFenceFdKHR(
8334
const VkImportFenceFdInfoKHR* pImportFenceFdInfo);
8336
VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceFdKHR(
8338
const VkFenceGetFdInfoKHR* pGetFdInfo,
8343
#define VK_KHR_performance_query 1
8344
#define VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION 1
8345
#define VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME "VK_KHR_performance_query"
8347
typedef enum VkPerformanceCounterUnitKHR {
8348
VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR = 0,
8349
VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR = 1,
8350
VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR = 2,
8351
VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR = 3,
8352
VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR = 4,
8353
VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR = 5,
8354
VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR = 6,
8355
VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR = 7,
8356
VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR = 8,
8357
VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR = 9,
8358
VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR = 10,
8359
VK_PERFORMANCE_COUNTER_UNIT_MAX_ENUM_KHR = 0x7FFFFFFF
8360
} VkPerformanceCounterUnitKHR;
8362
typedef enum VkPerformanceCounterScopeKHR {
8363
VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR = 0,
8364
VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR = 1,
8365
VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR = 2,
8366
VK_QUERY_SCOPE_COMMAND_BUFFER_KHR = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR,
8367
VK_QUERY_SCOPE_RENDER_PASS_KHR = VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR,
8368
VK_QUERY_SCOPE_COMMAND_KHR = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR,
8369
VK_PERFORMANCE_COUNTER_SCOPE_MAX_ENUM_KHR = 0x7FFFFFFF
8370
} VkPerformanceCounterScopeKHR;
8372
typedef enum VkPerformanceCounterStorageKHR {
8373
VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR = 0,
8374
VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR = 1,
8375
VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR = 2,
8376
VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR = 3,
8377
VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR = 4,
8378
VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR = 5,
8379
VK_PERFORMANCE_COUNTER_STORAGE_MAX_ENUM_KHR = 0x7FFFFFFF
8380
} VkPerformanceCounterStorageKHR;
8382
typedef enum VkPerformanceCounterDescriptionFlagBitsKHR {
8383
VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR = 0x00000001,
8384
VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR = 0x00000002,
8385
VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR = VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR,
8386
VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR = VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR,
8387
VK_PERFORMANCE_COUNTER_DESCRIPTION_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
8388
} VkPerformanceCounterDescriptionFlagBitsKHR;
8389
typedef VkFlags VkPerformanceCounterDescriptionFlagsKHR;
8391
typedef enum VkAcquireProfilingLockFlagBitsKHR {
8392
VK_ACQUIRE_PROFILING_LOCK_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
8393
} VkAcquireProfilingLockFlagBitsKHR;
8394
typedef VkFlags VkAcquireProfilingLockFlagsKHR;
8395
typedef struct VkPhysicalDevicePerformanceQueryFeaturesKHR {
8396
VkStructureType sType;
8398
VkBool32 performanceCounterQueryPools;
8399
VkBool32 performanceCounterMultipleQueryPools;
8400
} VkPhysicalDevicePerformanceQueryFeaturesKHR;
8402
typedef struct VkPhysicalDevicePerformanceQueryPropertiesKHR {
8403
VkStructureType sType;
8405
VkBool32 allowCommandBufferQueryCopies;
8406
} VkPhysicalDevicePerformanceQueryPropertiesKHR;
8408
typedef struct VkPerformanceCounterKHR {
8409
VkStructureType sType;
8411
VkPerformanceCounterUnitKHR unit;
8412
VkPerformanceCounterScopeKHR scope;
8413
VkPerformanceCounterStorageKHR storage;
8414
uint8_t uuid[VK_UUID_SIZE];
8415
} VkPerformanceCounterKHR;
8417
typedef struct VkPerformanceCounterDescriptionKHR {
8418
VkStructureType sType;
8420
VkPerformanceCounterDescriptionFlagsKHR flags;
8421
char name[VK_MAX_DESCRIPTION_SIZE];
8422
char category[VK_MAX_DESCRIPTION_SIZE];
8423
char description[VK_MAX_DESCRIPTION_SIZE];
8424
} VkPerformanceCounterDescriptionKHR;
8426
typedef struct VkQueryPoolPerformanceCreateInfoKHR {
8427
VkStructureType sType;
8429
uint32_t queueFamilyIndex;
8430
uint32_t counterIndexCount;
8431
const uint32_t* pCounterIndices;
8432
} VkQueryPoolPerformanceCreateInfoKHR;
8434
typedef union VkPerformanceCounterResultKHR {
8441
} VkPerformanceCounterResultKHR;
8443
typedef struct VkAcquireProfilingLockInfoKHR {
8444
VkStructureType sType;
8446
VkAcquireProfilingLockFlagsKHR flags;
8448
} VkAcquireProfilingLockInfoKHR;
8450
typedef struct VkPerformanceQuerySubmitInfoKHR {
8451
VkStructureType sType;
8453
uint32_t counterPassIndex;
8454
} VkPerformanceQuerySubmitInfoKHR;
8456
typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, uint32_t* pCounterCount, VkPerformanceCounterKHR* pCounters, VkPerformanceCounterDescriptionKHR* pCounterDescriptions);
8457
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)(VkPhysicalDevice physicalDevice, const VkQueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo, uint32_t* pNumPasses);
8458
typedef VkResult (VKAPI_PTR *PFN_vkAcquireProfilingLockKHR)(VkDevice device, const VkAcquireProfilingLockInfoKHR* pInfo);
8459
typedef void (VKAPI_PTR *PFN_vkReleaseProfilingLockKHR)(VkDevice device);
8461
#ifndef VK_NO_PROTOTYPES
8462
VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
8463
VkPhysicalDevice physicalDevice,
8464
uint32_t queueFamilyIndex,
8465
uint32_t* pCounterCount,
8466
VkPerformanceCounterKHR* pCounters,
8467
VkPerformanceCounterDescriptionKHR* pCounterDescriptions);
8469
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
8470
VkPhysicalDevice physicalDevice,
8471
const VkQueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo,
8472
uint32_t* pNumPasses);
8474
VKAPI_ATTR VkResult VKAPI_CALL vkAcquireProfilingLockKHR(
8476
const VkAcquireProfilingLockInfoKHR* pInfo);
8478
VKAPI_ATTR void VKAPI_CALL vkReleaseProfilingLockKHR(
8483
#define VK_KHR_maintenance2 1
8484
#define VK_KHR_MAINTENANCE_2_SPEC_VERSION 1
8485
#define VK_KHR_MAINTENANCE_2_EXTENSION_NAME "VK_KHR_maintenance2"
8486
#define VK_KHR_MAINTENANCE2_SPEC_VERSION VK_KHR_MAINTENANCE_2_SPEC_VERSION
8487
#define VK_KHR_MAINTENANCE2_EXTENSION_NAME VK_KHR_MAINTENANCE_2_EXTENSION_NAME
8488
typedef VkPointClippingBehavior VkPointClippingBehaviorKHR;
8490
typedef VkTessellationDomainOrigin VkTessellationDomainOriginKHR;
8492
typedef VkPhysicalDevicePointClippingProperties VkPhysicalDevicePointClippingPropertiesKHR;
8494
typedef VkRenderPassInputAttachmentAspectCreateInfo VkRenderPassInputAttachmentAspectCreateInfoKHR;
8496
typedef VkInputAttachmentAspectReference VkInputAttachmentAspectReferenceKHR;
8498
typedef VkImageViewUsageCreateInfo VkImageViewUsageCreateInfoKHR;
8500
typedef VkPipelineTessellationDomainOriginStateCreateInfo VkPipelineTessellationDomainOriginStateCreateInfoKHR;
8504
#define VK_KHR_get_surface_capabilities2 1
8505
#define VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION 1
8506
#define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2"
8507
typedef struct VkPhysicalDeviceSurfaceInfo2KHR {
8508
VkStructureType sType;
8510
VkSurfaceKHR surface;
8511
} VkPhysicalDeviceSurfaceInfo2KHR;
8513
typedef struct VkSurfaceCapabilities2KHR {
8514
VkStructureType sType;
8516
VkSurfaceCapabilitiesKHR surfaceCapabilities;
8517
} VkSurfaceCapabilities2KHR;
8519
typedef struct VkSurfaceFormat2KHR {
8520
VkStructureType sType;
8522
VkSurfaceFormatKHR surfaceFormat;
8523
} VkSurfaceFormat2KHR;
8525
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities);
8526
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats);
8528
#ifndef VK_NO_PROTOTYPES
8529
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2KHR(
8530
VkPhysicalDevice physicalDevice,
8531
const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
8532
VkSurfaceCapabilities2KHR* pSurfaceCapabilities);
8534
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormats2KHR(
8535
VkPhysicalDevice physicalDevice,
8536
const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
8537
uint32_t* pSurfaceFormatCount,
8538
VkSurfaceFormat2KHR* pSurfaceFormats);
8542
#define VK_KHR_variable_pointers 1
8543
#define VK_KHR_VARIABLE_POINTERS_SPEC_VERSION 1
8544
#define VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME "VK_KHR_variable_pointers"
8545
typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeaturesKHR;
8547
typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointersFeaturesKHR;
8551
#define VK_KHR_get_display_properties2 1
8552
#define VK_KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION 1
8553
#define VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME "VK_KHR_get_display_properties2"
8554
typedef struct VkDisplayProperties2KHR {
8555
VkStructureType sType;
8557
VkDisplayPropertiesKHR displayProperties;
8558
} VkDisplayProperties2KHR;
8560
typedef struct VkDisplayPlaneProperties2KHR {
8561
VkStructureType sType;
8563
VkDisplayPlanePropertiesKHR displayPlaneProperties;
8564
} VkDisplayPlaneProperties2KHR;
8566
typedef struct VkDisplayModeProperties2KHR {
8567
VkStructureType sType;
8569
VkDisplayModePropertiesKHR displayModeProperties;
8570
} VkDisplayModeProperties2KHR;
8572
typedef struct VkDisplayPlaneInfo2KHR {
8573
VkStructureType sType;
8575
VkDisplayModeKHR mode;
8576
uint32_t planeIndex;
8577
} VkDisplayPlaneInfo2KHR;
8579
typedef struct VkDisplayPlaneCapabilities2KHR {
8580
VkStructureType sType;
8582
VkDisplayPlaneCapabilitiesKHR capabilities;
8583
} VkDisplayPlaneCapabilities2KHR;
8585
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayProperties2KHR* pProperties);
8586
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlaneProperties2KHR* pProperties);
8587
typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModeProperties2KHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModeProperties2KHR* pProperties);
8588
typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilities2KHR)(VkPhysicalDevice physicalDevice, const VkDisplayPlaneInfo2KHR* pDisplayPlaneInfo, VkDisplayPlaneCapabilities2KHR* pCapabilities);
8590
#ifndef VK_NO_PROTOTYPES
8591
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayProperties2KHR(
8592
VkPhysicalDevice physicalDevice,
8593
uint32_t* pPropertyCount,
8594
VkDisplayProperties2KHR* pProperties);
8596
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
8597
VkPhysicalDevice physicalDevice,
8598
uint32_t* pPropertyCount,
8599
VkDisplayPlaneProperties2KHR* pProperties);
8601
VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModeProperties2KHR(
8602
VkPhysicalDevice physicalDevice,
8603
VkDisplayKHR display,
8604
uint32_t* pPropertyCount,
8605
VkDisplayModeProperties2KHR* pProperties);
8607
VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilities2KHR(
8608
VkPhysicalDevice physicalDevice,
8609
const VkDisplayPlaneInfo2KHR* pDisplayPlaneInfo,
8610
VkDisplayPlaneCapabilities2KHR* pCapabilities);
8614
#define VK_KHR_dedicated_allocation 1
8615
#define VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION 3
8616
#define VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_KHR_dedicated_allocation"
8617
typedef VkMemoryDedicatedRequirements VkMemoryDedicatedRequirementsKHR;
8619
typedef VkMemoryDedicatedAllocateInfo VkMemoryDedicatedAllocateInfoKHR;
8623
#define VK_KHR_storage_buffer_storage_class 1
8624
#define VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION 1
8625
#define VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME "VK_KHR_storage_buffer_storage_class"
8628
#define VK_KHR_relaxed_block_layout 1
8629
#define VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION 1
8630
#define VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME "VK_KHR_relaxed_block_layout"
8633
#define VK_KHR_get_memory_requirements2 1
8634
#define VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION 1
8635
#define VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME "VK_KHR_get_memory_requirements2"
8636
typedef VkBufferMemoryRequirementsInfo2 VkBufferMemoryRequirementsInfo2KHR;
8638
typedef VkImageMemoryRequirementsInfo2 VkImageMemoryRequirementsInfo2KHR;
8640
typedef VkImageSparseMemoryRequirementsInfo2 VkImageSparseMemoryRequirementsInfo2KHR;
8642
typedef VkMemoryRequirements2 VkMemoryRequirements2KHR;
8644
typedef VkSparseImageMemoryRequirements2 VkSparseImageMemoryRequirements2KHR;
8646
typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements2KHR)(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);
8647
typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements2KHR)(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements);
8648
typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2KHR)(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
8650
#ifndef VK_NO_PROTOTYPES
8651
VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2KHR(
8653
const VkImageMemoryRequirementsInfo2* pInfo,
8654
VkMemoryRequirements2* pMemoryRequirements);
8656
VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2KHR(
8658
const VkBufferMemoryRequirementsInfo2* pInfo,
8659
VkMemoryRequirements2* pMemoryRequirements);
8661
VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2KHR(
8663
const VkImageSparseMemoryRequirementsInfo2* pInfo,
8664
uint32_t* pSparseMemoryRequirementCount,
8665
VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
8669
#define VK_KHR_image_format_list 1
8670
#define VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION 1
8671
#define VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME "VK_KHR_image_format_list"
8672
typedef VkImageFormatListCreateInfo VkImageFormatListCreateInfoKHR;
8676
#define VK_KHR_sampler_ycbcr_conversion 1
8677
typedef VkSamplerYcbcrConversion VkSamplerYcbcrConversionKHR;
8679
#define VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION 14
8680
#define VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME "VK_KHR_sampler_ycbcr_conversion"
8681
typedef VkSamplerYcbcrModelConversion VkSamplerYcbcrModelConversionKHR;
8683
typedef VkSamplerYcbcrRange VkSamplerYcbcrRangeKHR;
8685
typedef VkChromaLocation VkChromaLocationKHR;
8687
typedef VkSamplerYcbcrConversionCreateInfo VkSamplerYcbcrConversionCreateInfoKHR;
8689
typedef VkSamplerYcbcrConversionInfo VkSamplerYcbcrConversionInfoKHR;
8691
typedef VkBindImagePlaneMemoryInfo VkBindImagePlaneMemoryInfoKHR;
8693
typedef VkImagePlaneMemoryRequirementsInfo VkImagePlaneMemoryRequirementsInfoKHR;
8695
typedef VkPhysicalDeviceSamplerYcbcrConversionFeatures VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR;
8697
typedef VkSamplerYcbcrConversionImageFormatProperties VkSamplerYcbcrConversionImageFormatPropertiesKHR;
8699
typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversionKHR)(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion);
8700
typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversionKHR)(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator);
8702
#ifndef VK_NO_PROTOTYPES
8703
VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversionKHR(
8705
const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
8706
const VkAllocationCallbacks* pAllocator,
8707
VkSamplerYcbcrConversion* pYcbcrConversion);
8709
VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversionKHR(
8711
VkSamplerYcbcrConversion ycbcrConversion,
8712
const VkAllocationCallbacks* pAllocator);
8716
#define VK_KHR_bind_memory2 1
8717
#define VK_KHR_BIND_MEMORY_2_SPEC_VERSION 1
8718
#define VK_KHR_BIND_MEMORY_2_EXTENSION_NAME "VK_KHR_bind_memory2"
8719
typedef VkBindBufferMemoryInfo VkBindBufferMemoryInfoKHR;
8721
typedef VkBindImageMemoryInfo VkBindImageMemoryInfoKHR;
8723
typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory2KHR)(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos);
8724
typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory2KHR)(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos);
8726
#ifndef VK_NO_PROTOTYPES
8727
VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2KHR(
8729
uint32_t bindInfoCount,
8730
const VkBindBufferMemoryInfo* pBindInfos);
8732
VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2KHR(
8734
uint32_t bindInfoCount,
8735
const VkBindImageMemoryInfo* pBindInfos);
8739
#define VK_KHR_maintenance3 1
8740
#define VK_KHR_MAINTENANCE_3_SPEC_VERSION 1
8741
#define VK_KHR_MAINTENANCE_3_EXTENSION_NAME "VK_KHR_maintenance3"
8742
#define VK_KHR_MAINTENANCE3_SPEC_VERSION VK_KHR_MAINTENANCE_3_SPEC_VERSION
8743
#define VK_KHR_MAINTENANCE3_EXTENSION_NAME VK_KHR_MAINTENANCE_3_EXTENSION_NAME
8744
typedef VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance3PropertiesKHR;
8746
typedef VkDescriptorSetLayoutSupport VkDescriptorSetLayoutSupportKHR;
8748
typedef void (VKAPI_PTR *PFN_vkGetDescriptorSetLayoutSupportKHR)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport);
8750
#ifndef VK_NO_PROTOTYPES
8751
VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupportKHR(
8753
const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
8754
VkDescriptorSetLayoutSupport* pSupport);
8758
#define VK_KHR_draw_indirect_count 1
8759
#define VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION 1
8760
#define VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_KHR_draw_indirect_count"
8761
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountKHR)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
8762
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountKHR)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
8764
#ifndef VK_NO_PROTOTYPES
8765
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountKHR(
8766
VkCommandBuffer commandBuffer,
8768
VkDeviceSize offset,
8769
VkBuffer countBuffer,
8770
VkDeviceSize countBufferOffset,
8771
uint32_t maxDrawCount,
8774
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountKHR(
8775
VkCommandBuffer commandBuffer,
8777
VkDeviceSize offset,
8778
VkBuffer countBuffer,
8779
VkDeviceSize countBufferOffset,
8780
uint32_t maxDrawCount,
8785
#define VK_KHR_shader_subgroup_extended_types 1
8786
#define VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION 1
8787
#define VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME "VK_KHR_shader_subgroup_extended_types"
8788
typedef VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR;
8792
#define VK_KHR_8bit_storage 1
8793
#define VK_KHR_8BIT_STORAGE_SPEC_VERSION 1
8794
#define VK_KHR_8BIT_STORAGE_EXTENSION_NAME "VK_KHR_8bit_storage"
8795
typedef VkPhysicalDevice8BitStorageFeatures VkPhysicalDevice8BitStorageFeaturesKHR;
8799
#define VK_KHR_shader_atomic_int64 1
8800
#define VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION 1
8801
#define VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME "VK_KHR_shader_atomic_int64"
8802
typedef VkPhysicalDeviceShaderAtomicInt64Features VkPhysicalDeviceShaderAtomicInt64FeaturesKHR;
8806
#define VK_KHR_shader_clock 1
8807
#define VK_KHR_SHADER_CLOCK_SPEC_VERSION 1
8808
#define VK_KHR_SHADER_CLOCK_EXTENSION_NAME "VK_KHR_shader_clock"
8809
typedef struct VkPhysicalDeviceShaderClockFeaturesKHR {
8810
VkStructureType sType;
8812
VkBool32 shaderSubgroupClock;
8813
VkBool32 shaderDeviceClock;
8814
} VkPhysicalDeviceShaderClockFeaturesKHR;
8818
#define VK_KHR_global_priority 1
8819
#define VK_MAX_GLOBAL_PRIORITY_SIZE_KHR 16U
8820
#define VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION 1
8821
#define VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME "VK_KHR_global_priority"
8823
typedef enum VkQueueGlobalPriorityKHR {
8824
VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR = 128,
8825
VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR = 256,
8826
VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR = 512,
8827
VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR = 1024,
8828
VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT = VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR,
8829
VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT = VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR,
8830
VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT = VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR,
8831
VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR,
8832
VK_QUEUE_GLOBAL_PRIORITY_MAX_ENUM_KHR = 0x7FFFFFFF
8833
} VkQueueGlobalPriorityKHR;
8834
typedef struct VkDeviceQueueGlobalPriorityCreateInfoKHR {
8835
VkStructureType sType;
8837
VkQueueGlobalPriorityKHR globalPriority;
8838
} VkDeviceQueueGlobalPriorityCreateInfoKHR;
8840
typedef struct VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR {
8841
VkStructureType sType;
8843
VkBool32 globalPriorityQuery;
8844
} VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR;
8846
typedef struct VkQueueFamilyGlobalPriorityPropertiesKHR {
8847
VkStructureType sType;
8849
uint32_t priorityCount;
8850
VkQueueGlobalPriorityKHR priorities[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR];
8851
} VkQueueFamilyGlobalPriorityPropertiesKHR;
8855
#define VK_KHR_driver_properties 1
8856
#define VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION 1
8857
#define VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME "VK_KHR_driver_properties"
8858
#define VK_MAX_DRIVER_NAME_SIZE_KHR VK_MAX_DRIVER_NAME_SIZE
8859
#define VK_MAX_DRIVER_INFO_SIZE_KHR VK_MAX_DRIVER_INFO_SIZE
8860
typedef VkDriverId VkDriverIdKHR;
8862
typedef VkConformanceVersion VkConformanceVersionKHR;
8864
typedef VkPhysicalDeviceDriverProperties VkPhysicalDeviceDriverPropertiesKHR;
8868
#define VK_KHR_shader_float_controls 1
8869
#define VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION 4
8870
#define VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME "VK_KHR_shader_float_controls"
8871
typedef VkShaderFloatControlsIndependence VkShaderFloatControlsIndependenceKHR;
8873
typedef VkPhysicalDeviceFloatControlsProperties VkPhysicalDeviceFloatControlsPropertiesKHR;
8877
#define VK_KHR_depth_stencil_resolve 1
8878
#define VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION 1
8879
#define VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME "VK_KHR_depth_stencil_resolve"
8880
typedef VkResolveModeFlagBits VkResolveModeFlagBitsKHR;
8882
typedef VkResolveModeFlags VkResolveModeFlagsKHR;
8884
typedef VkSubpassDescriptionDepthStencilResolve VkSubpassDescriptionDepthStencilResolveKHR;
8886
typedef VkPhysicalDeviceDepthStencilResolveProperties VkPhysicalDeviceDepthStencilResolvePropertiesKHR;
8890
#define VK_KHR_swapchain_mutable_format 1
8891
#define VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION 1
8892
#define VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME "VK_KHR_swapchain_mutable_format"
8895
#define VK_KHR_timeline_semaphore 1
8896
#define VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION 2
8897
#define VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME "VK_KHR_timeline_semaphore"
8898
typedef VkSemaphoreType VkSemaphoreTypeKHR;
8900
typedef VkSemaphoreWaitFlagBits VkSemaphoreWaitFlagBitsKHR;
8902
typedef VkSemaphoreWaitFlags VkSemaphoreWaitFlagsKHR;
8904
typedef VkPhysicalDeviceTimelineSemaphoreFeatures VkPhysicalDeviceTimelineSemaphoreFeaturesKHR;
8906
typedef VkPhysicalDeviceTimelineSemaphoreProperties VkPhysicalDeviceTimelineSemaphorePropertiesKHR;
8908
typedef VkSemaphoreTypeCreateInfo VkSemaphoreTypeCreateInfoKHR;
8910
typedef VkTimelineSemaphoreSubmitInfo VkTimelineSemaphoreSubmitInfoKHR;
8912
typedef VkSemaphoreWaitInfo VkSemaphoreWaitInfoKHR;
8914
typedef VkSemaphoreSignalInfo VkSemaphoreSignalInfoKHR;
8916
typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreCounterValueKHR)(VkDevice device, VkSemaphore semaphore, uint64_t* pValue);
8917
typedef VkResult (VKAPI_PTR *PFN_vkWaitSemaphoresKHR)(VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout);
8918
typedef VkResult (VKAPI_PTR *PFN_vkSignalSemaphoreKHR)(VkDevice device, const VkSemaphoreSignalInfo* pSignalInfo);
8920
#ifndef VK_NO_PROTOTYPES
8921
VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreCounterValueKHR(
8923
VkSemaphore semaphore,
8926
VKAPI_ATTR VkResult VKAPI_CALL vkWaitSemaphoresKHR(
8928
const VkSemaphoreWaitInfo* pWaitInfo,
8931
VKAPI_ATTR VkResult VKAPI_CALL vkSignalSemaphoreKHR(
8933
const VkSemaphoreSignalInfo* pSignalInfo);
8937
#define VK_KHR_vulkan_memory_model 1
8938
#define VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION 3
8939
#define VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME "VK_KHR_vulkan_memory_model"
8940
typedef VkPhysicalDeviceVulkanMemoryModelFeatures VkPhysicalDeviceVulkanMemoryModelFeaturesKHR;
8944
#define VK_KHR_shader_terminate_invocation 1
8945
#define VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION 1
8946
#define VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME "VK_KHR_shader_terminate_invocation"
8947
typedef VkPhysicalDeviceShaderTerminateInvocationFeatures VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR;
8951
#define VK_KHR_fragment_shading_rate 1
8952
#define VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION 2
8953
#define VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME "VK_KHR_fragment_shading_rate"
8955
typedef enum VkFragmentShadingRateCombinerOpKHR {
8956
VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR = 0,
8957
VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR = 1,
8958
VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR = 2,
8959
VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR = 3,
8960
VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR = 4,
8961
VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_ENUM_KHR = 0x7FFFFFFF
8962
} VkFragmentShadingRateCombinerOpKHR;
8963
typedef struct VkFragmentShadingRateAttachmentInfoKHR {
8964
VkStructureType sType;
8966
const VkAttachmentReference2* pFragmentShadingRateAttachment;
8967
VkExtent2D shadingRateAttachmentTexelSize;
8968
} VkFragmentShadingRateAttachmentInfoKHR;
8970
typedef struct VkPipelineFragmentShadingRateStateCreateInfoKHR {
8971
VkStructureType sType;
8973
VkExtent2D fragmentSize;
8974
VkFragmentShadingRateCombinerOpKHR combinerOps[2];
8975
} VkPipelineFragmentShadingRateStateCreateInfoKHR;
8977
typedef struct VkPhysicalDeviceFragmentShadingRateFeaturesKHR {
8978
VkStructureType sType;
8980
VkBool32 pipelineFragmentShadingRate;
8981
VkBool32 primitiveFragmentShadingRate;
8982
VkBool32 attachmentFragmentShadingRate;
8983
} VkPhysicalDeviceFragmentShadingRateFeaturesKHR;
8985
typedef struct VkPhysicalDeviceFragmentShadingRatePropertiesKHR {
8986
VkStructureType sType;
8988
VkExtent2D minFragmentShadingRateAttachmentTexelSize;
8989
VkExtent2D maxFragmentShadingRateAttachmentTexelSize;
8990
uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio;
8991
VkBool32 primitiveFragmentShadingRateWithMultipleViewports;
8992
VkBool32 layeredShadingRateAttachments;
8993
VkBool32 fragmentShadingRateNonTrivialCombinerOps;
8994
VkExtent2D maxFragmentSize;
8995
uint32_t maxFragmentSizeAspectRatio;
8996
uint32_t maxFragmentShadingRateCoverageSamples;
8997
VkSampleCountFlagBits maxFragmentShadingRateRasterizationSamples;
8998
VkBool32 fragmentShadingRateWithShaderDepthStencilWrites;
8999
VkBool32 fragmentShadingRateWithSampleMask;
9000
VkBool32 fragmentShadingRateWithShaderSampleMask;
9001
VkBool32 fragmentShadingRateWithConservativeRasterization;
9002
VkBool32 fragmentShadingRateWithFragmentShaderInterlock;
9003
VkBool32 fragmentShadingRateWithCustomSampleLocations;
9004
VkBool32 fragmentShadingRateStrictMultiplyCombiner;
9005
} VkPhysicalDeviceFragmentShadingRatePropertiesKHR;
9007
typedef struct VkPhysicalDeviceFragmentShadingRateKHR {
9008
VkStructureType sType;
9010
VkSampleCountFlags sampleCounts;
9011
VkExtent2D fragmentSize;
9012
} VkPhysicalDeviceFragmentShadingRateKHR;
9014
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pFragmentShadingRateCount, VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates);
9015
typedef void (VKAPI_PTR *PFN_vkCmdSetFragmentShadingRateKHR)(VkCommandBuffer commandBuffer, const VkExtent2D* pFragmentSize, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
9017
#ifndef VK_NO_PROTOTYPES
9018
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceFragmentShadingRatesKHR(
9019
VkPhysicalDevice physicalDevice,
9020
uint32_t* pFragmentShadingRateCount,
9021
VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates);
9023
VKAPI_ATTR void VKAPI_CALL vkCmdSetFragmentShadingRateKHR(
9024
VkCommandBuffer commandBuffer,
9025
const VkExtent2D* pFragmentSize,
9026
const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
9030
#define VK_KHR_spirv_1_4 1
9031
#define VK_KHR_SPIRV_1_4_SPEC_VERSION 1
9032
#define VK_KHR_SPIRV_1_4_EXTENSION_NAME "VK_KHR_spirv_1_4"
9035
#define VK_KHR_surface_protected_capabilities 1
9036
#define VK_KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION 1
9037
#define VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME "VK_KHR_surface_protected_capabilities"
9038
typedef struct VkSurfaceProtectedCapabilitiesKHR {
9039
VkStructureType sType;
9041
VkBool32 supportsProtected;
9042
} VkSurfaceProtectedCapabilitiesKHR;
9046
#define VK_KHR_separate_depth_stencil_layouts 1
9047
#define VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION 1
9048
#define VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME "VK_KHR_separate_depth_stencil_layouts"
9049
typedef VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR;
9051
typedef VkAttachmentReferenceStencilLayout VkAttachmentReferenceStencilLayoutKHR;
9053
typedef VkAttachmentDescriptionStencilLayout VkAttachmentDescriptionStencilLayoutKHR;
9057
#define VK_KHR_present_wait 1
9058
#define VK_KHR_PRESENT_WAIT_SPEC_VERSION 1
9059
#define VK_KHR_PRESENT_WAIT_EXTENSION_NAME "VK_KHR_present_wait"
9060
typedef struct VkPhysicalDevicePresentWaitFeaturesKHR {
9061
VkStructureType sType;
9063
VkBool32 presentWait;
9064
} VkPhysicalDevicePresentWaitFeaturesKHR;
9066
typedef VkResult (VKAPI_PTR *PFN_vkWaitForPresentKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t presentId, uint64_t timeout);
9068
#ifndef VK_NO_PROTOTYPES
9069
VKAPI_ATTR VkResult VKAPI_CALL vkWaitForPresentKHR(
9071
VkSwapchainKHR swapchain,
9077
#define VK_KHR_uniform_buffer_standard_layout 1
9078
#define VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION 1
9079
#define VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME "VK_KHR_uniform_buffer_standard_layout"
9080
typedef VkPhysicalDeviceUniformBufferStandardLayoutFeatures VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR;
9084
#define VK_KHR_buffer_device_address 1
9085
#define VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION 1
9086
#define VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME "VK_KHR_buffer_device_address"
9087
typedef VkPhysicalDeviceBufferDeviceAddressFeatures VkPhysicalDeviceBufferDeviceAddressFeaturesKHR;
9089
typedef VkBufferDeviceAddressInfo VkBufferDeviceAddressInfoKHR;
9091
typedef VkBufferOpaqueCaptureAddressCreateInfo VkBufferOpaqueCaptureAddressCreateInfoKHR;
9093
typedef VkMemoryOpaqueCaptureAddressAllocateInfo VkMemoryOpaqueCaptureAddressAllocateInfoKHR;
9095
typedef VkDeviceMemoryOpaqueCaptureAddressInfo VkDeviceMemoryOpaqueCaptureAddressInfoKHR;
9097
typedef VkDeviceAddress (VKAPI_PTR *PFN_vkGetBufferDeviceAddressKHR)(VkDevice device, const VkBufferDeviceAddressInfo* pInfo);
9098
typedef uint64_t (VKAPI_PTR *PFN_vkGetBufferOpaqueCaptureAddressKHR)(VkDevice device, const VkBufferDeviceAddressInfo* pInfo);
9099
typedef uint64_t (VKAPI_PTR *PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)(VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
9101
#ifndef VK_NO_PROTOTYPES
9102
VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetBufferDeviceAddressKHR(
9104
const VkBufferDeviceAddressInfo* pInfo);
9106
VKAPI_ATTR uint64_t VKAPI_CALL vkGetBufferOpaqueCaptureAddressKHR(
9108
const VkBufferDeviceAddressInfo* pInfo);
9110
VKAPI_ATTR uint64_t VKAPI_CALL vkGetDeviceMemoryOpaqueCaptureAddressKHR(
9112
const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
9116
#define VK_KHR_deferred_host_operations 1
9117
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeferredOperationKHR)
9118
#define VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION 4
9119
#define VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME "VK_KHR_deferred_host_operations"
9120
typedef VkResult (VKAPI_PTR *PFN_vkCreateDeferredOperationKHR)(VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation);
9121
typedef void (VKAPI_PTR *PFN_vkDestroyDeferredOperationKHR)(VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator);
9122
typedef uint32_t (VKAPI_PTR *PFN_vkGetDeferredOperationMaxConcurrencyKHR)(VkDevice device, VkDeferredOperationKHR operation);
9123
typedef VkResult (VKAPI_PTR *PFN_vkGetDeferredOperationResultKHR)(VkDevice device, VkDeferredOperationKHR operation);
9124
typedef VkResult (VKAPI_PTR *PFN_vkDeferredOperationJoinKHR)(VkDevice device, VkDeferredOperationKHR operation);
9126
#ifndef VK_NO_PROTOTYPES
9127
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDeferredOperationKHR(
9129
const VkAllocationCallbacks* pAllocator,
9130
VkDeferredOperationKHR* pDeferredOperation);
9132
VKAPI_ATTR void VKAPI_CALL vkDestroyDeferredOperationKHR(
9134
VkDeferredOperationKHR operation,
9135
const VkAllocationCallbacks* pAllocator);
9137
VKAPI_ATTR uint32_t VKAPI_CALL vkGetDeferredOperationMaxConcurrencyKHR(
9139
VkDeferredOperationKHR operation);
9141
VKAPI_ATTR VkResult VKAPI_CALL vkGetDeferredOperationResultKHR(
9143
VkDeferredOperationKHR operation);
9145
VKAPI_ATTR VkResult VKAPI_CALL vkDeferredOperationJoinKHR(
9147
VkDeferredOperationKHR operation);
9151
#define VK_KHR_pipeline_executable_properties 1
9152
#define VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION 1
9153
#define VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME "VK_KHR_pipeline_executable_properties"
9155
typedef enum VkPipelineExecutableStatisticFormatKHR {
9156
VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR = 0,
9157
VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR = 1,
9158
VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR = 2,
9159
VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR = 3,
9160
VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_MAX_ENUM_KHR = 0x7FFFFFFF
9161
} VkPipelineExecutableStatisticFormatKHR;
9162
typedef struct VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR {
9163
VkStructureType sType;
9165
VkBool32 pipelineExecutableInfo;
9166
} VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
9168
typedef struct VkPipelineInfoKHR {
9169
VkStructureType sType;
9171
VkPipeline pipeline;
9172
} VkPipelineInfoKHR;
9174
typedef struct VkPipelineExecutablePropertiesKHR {
9175
VkStructureType sType;
9177
VkShaderStageFlags stages;
9178
char name[VK_MAX_DESCRIPTION_SIZE];
9179
char description[VK_MAX_DESCRIPTION_SIZE];
9180
uint32_t subgroupSize;
9181
} VkPipelineExecutablePropertiesKHR;
9183
typedef struct VkPipelineExecutableInfoKHR {
9184
VkStructureType sType;
9186
VkPipeline pipeline;
9187
uint32_t executableIndex;
9188
} VkPipelineExecutableInfoKHR;
9190
typedef union VkPipelineExecutableStatisticValueKHR {
9195
} VkPipelineExecutableStatisticValueKHR;
9197
typedef struct VkPipelineExecutableStatisticKHR {
9198
VkStructureType sType;
9200
char name[VK_MAX_DESCRIPTION_SIZE];
9201
char description[VK_MAX_DESCRIPTION_SIZE];
9202
VkPipelineExecutableStatisticFormatKHR format;
9203
VkPipelineExecutableStatisticValueKHR value;
9204
} VkPipelineExecutableStatisticKHR;
9206
typedef struct VkPipelineExecutableInternalRepresentationKHR {
9207
VkStructureType sType;
9209
char name[VK_MAX_DESCRIPTION_SIZE];
9210
char description[VK_MAX_DESCRIPTION_SIZE];
9214
} VkPipelineExecutableInternalRepresentationKHR;
9216
typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineExecutablePropertiesKHR)(VkDevice device, const VkPipelineInfoKHR* pPipelineInfo, uint32_t* pExecutableCount, VkPipelineExecutablePropertiesKHR* pProperties);
9217
typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineExecutableStatisticsKHR)(VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pStatisticCount, VkPipelineExecutableStatisticKHR* pStatistics);
9218
typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineExecutableInternalRepresentationsKHR)(VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pInternalRepresentationCount, VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations);
9220
#ifndef VK_NO_PROTOTYPES
9221
VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineExecutablePropertiesKHR(
9223
const VkPipelineInfoKHR* pPipelineInfo,
9224
uint32_t* pExecutableCount,
9225
VkPipelineExecutablePropertiesKHR* pProperties);
9227
VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineExecutableStatisticsKHR(
9229
const VkPipelineExecutableInfoKHR* pExecutableInfo,
9230
uint32_t* pStatisticCount,
9231
VkPipelineExecutableStatisticKHR* pStatistics);
9233
VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineExecutableInternalRepresentationsKHR(
9235
const VkPipelineExecutableInfoKHR* pExecutableInfo,
9236
uint32_t* pInternalRepresentationCount,
9237
VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations);
9241
#define VK_KHR_shader_integer_dot_product 1
9242
#define VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION 1
9243
#define VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME "VK_KHR_shader_integer_dot_product"
9244
typedef VkPhysicalDeviceShaderIntegerDotProductFeatures VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR;
9246
typedef VkPhysicalDeviceShaderIntegerDotProductProperties VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR;
9250
#define VK_KHR_pipeline_library 1
9251
#define VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION 1
9252
#define VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME "VK_KHR_pipeline_library"
9253
typedef struct VkPipelineLibraryCreateInfoKHR {
9254
VkStructureType sType;
9256
uint32_t libraryCount;
9257
const VkPipeline* pLibraries;
9258
} VkPipelineLibraryCreateInfoKHR;
9262
#define VK_KHR_shader_non_semantic_info 1
9263
#define VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION 1
9264
#define VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME "VK_KHR_shader_non_semantic_info"
9267
#define VK_KHR_present_id 1
9268
#define VK_KHR_PRESENT_ID_SPEC_VERSION 1
9269
#define VK_KHR_PRESENT_ID_EXTENSION_NAME "VK_KHR_present_id"
9270
typedef struct VkPresentIdKHR {
9271
VkStructureType sType;
9273
uint32_t swapchainCount;
9274
const uint64_t* pPresentIds;
9277
typedef struct VkPhysicalDevicePresentIdFeaturesKHR {
9278
VkStructureType sType;
9281
} VkPhysicalDevicePresentIdFeaturesKHR;
9285
#define VK_KHR_synchronization2 1
9286
#define VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION 1
9287
#define VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME "VK_KHR_synchronization2"
9288
typedef VkPipelineStageFlags2 VkPipelineStageFlags2KHR;
9290
typedef VkPipelineStageFlagBits2 VkPipelineStageFlagBits2KHR;
9292
typedef VkAccessFlags2 VkAccessFlags2KHR;
9294
typedef VkAccessFlagBits2 VkAccessFlagBits2KHR;
9296
typedef VkSubmitFlagBits VkSubmitFlagBitsKHR;
9298
typedef VkSubmitFlags VkSubmitFlagsKHR;
9300
typedef VkMemoryBarrier2 VkMemoryBarrier2KHR;
9302
typedef VkBufferMemoryBarrier2 VkBufferMemoryBarrier2KHR;
9304
typedef VkImageMemoryBarrier2 VkImageMemoryBarrier2KHR;
9306
typedef VkDependencyInfo VkDependencyInfoKHR;
9308
typedef VkSubmitInfo2 VkSubmitInfo2KHR;
9310
typedef VkSemaphoreSubmitInfo VkSemaphoreSubmitInfoKHR;
9312
typedef VkCommandBufferSubmitInfo VkCommandBufferSubmitInfoKHR;
9314
typedef VkPhysicalDeviceSynchronization2Features VkPhysicalDeviceSynchronization2FeaturesKHR;
9316
typedef struct VkQueueFamilyCheckpointProperties2NV {
9317
VkStructureType sType;
9319
VkPipelineStageFlags2 checkpointExecutionStageMask;
9320
} VkQueueFamilyCheckpointProperties2NV;
9322
typedef struct VkCheckpointData2NV {
9323
VkStructureType sType;
9325
VkPipelineStageFlags2 stage;
9326
void* pCheckpointMarker;
9327
} VkCheckpointData2NV;
9329
typedef void (VKAPI_PTR *PFN_vkCmdSetEvent2KHR)(VkCommandBuffer commandBuffer, VkEvent event, const VkDependencyInfo* pDependencyInfo);
9330
typedef void (VKAPI_PTR *PFN_vkCmdResetEvent2KHR)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags2 stageMask);
9331
typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents2KHR)(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, const VkDependencyInfo* pDependencyInfos);
9332
typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier2KHR)(VkCommandBuffer commandBuffer, const VkDependencyInfo* pDependencyInfo);
9333
typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp2KHR)(VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage, VkQueryPool queryPool, uint32_t query);
9334
typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit2KHR)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo2* pSubmits, VkFence fence);
9335
typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarker2AMD)(VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker);
9336
typedef void (VKAPI_PTR *PFN_vkGetQueueCheckpointData2NV)(VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointData2NV* pCheckpointData);
9338
#ifndef VK_NO_PROTOTYPES
9339
VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent2KHR(
9340
VkCommandBuffer commandBuffer,
9342
const VkDependencyInfo* pDependencyInfo);
9344
VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent2KHR(
9345
VkCommandBuffer commandBuffer,
9347
VkPipelineStageFlags2 stageMask);
9349
VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents2KHR(
9350
VkCommandBuffer commandBuffer,
9351
uint32_t eventCount,
9352
const VkEvent* pEvents,
9353
const VkDependencyInfo* pDependencyInfos);
9355
VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier2KHR(
9356
VkCommandBuffer commandBuffer,
9357
const VkDependencyInfo* pDependencyInfo);
9359
VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp2KHR(
9360
VkCommandBuffer commandBuffer,
9361
VkPipelineStageFlags2 stage,
9362
VkQueryPool queryPool,
9365
VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit2KHR(
9367
uint32_t submitCount,
9368
const VkSubmitInfo2* pSubmits,
9371
VKAPI_ATTR void VKAPI_CALL vkCmdWriteBufferMarker2AMD(
9372
VkCommandBuffer commandBuffer,
9373
VkPipelineStageFlags2 stage,
9375
VkDeviceSize dstOffset,
9378
VKAPI_ATTR void VKAPI_CALL vkGetQueueCheckpointData2NV(
9380
uint32_t* pCheckpointDataCount,
9381
VkCheckpointData2NV* pCheckpointData);
9385
#define VK_KHR_shader_subgroup_uniform_control_flow 1
9386
#define VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION 1
9387
#define VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME "VK_KHR_shader_subgroup_uniform_control_flow"
9388
typedef struct VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR {
9389
VkStructureType sType;
9391
VkBool32 shaderSubgroupUniformControlFlow;
9392
} VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
9396
#define VK_KHR_zero_initialize_workgroup_memory 1
9397
#define VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION 1
9398
#define VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME "VK_KHR_zero_initialize_workgroup_memory"
9399
typedef VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR;
9403
#define VK_KHR_workgroup_memory_explicit_layout 1
9404
#define VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION 1
9405
#define VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME "VK_KHR_workgroup_memory_explicit_layout"
9406
typedef struct VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR {
9407
VkStructureType sType;
9409
VkBool32 workgroupMemoryExplicitLayout;
9410
VkBool32 workgroupMemoryExplicitLayoutScalarBlockLayout;
9411
VkBool32 workgroupMemoryExplicitLayout8BitAccess;
9412
VkBool32 workgroupMemoryExplicitLayout16BitAccess;
9413
} VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
9417
#define VK_KHR_copy_commands2 1
9418
#define VK_KHR_COPY_COMMANDS_2_SPEC_VERSION 1
9419
#define VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME "VK_KHR_copy_commands2"
9420
typedef VkCopyBufferInfo2 VkCopyBufferInfo2KHR;
9422
typedef VkCopyImageInfo2 VkCopyImageInfo2KHR;
9424
typedef VkCopyBufferToImageInfo2 VkCopyBufferToImageInfo2KHR;
9426
typedef VkCopyImageToBufferInfo2 VkCopyImageToBufferInfo2KHR;
9428
typedef VkBlitImageInfo2 VkBlitImageInfo2KHR;
9430
typedef VkResolveImageInfo2 VkResolveImageInfo2KHR;
9432
typedef VkBufferCopy2 VkBufferCopy2KHR;
9434
typedef VkImageCopy2 VkImageCopy2KHR;
9436
typedef VkImageBlit2 VkImageBlit2KHR;
9438
typedef VkBufferImageCopy2 VkBufferImageCopy2KHR;
9440
typedef VkImageResolve2 VkImageResolve2KHR;
9442
typedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer2KHR)(VkCommandBuffer commandBuffer, const VkCopyBufferInfo2* pCopyBufferInfo);
9443
typedef void (VKAPI_PTR *PFN_vkCmdCopyImage2KHR)(VkCommandBuffer commandBuffer, const VkCopyImageInfo2* pCopyImageInfo);
9444
typedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage2KHR)(VkCommandBuffer commandBuffer, const VkCopyBufferToImageInfo2* pCopyBufferToImageInfo);
9445
typedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer2KHR)(VkCommandBuffer commandBuffer, const VkCopyImageToBufferInfo2* pCopyImageToBufferInfo);
9446
typedef void (VKAPI_PTR *PFN_vkCmdBlitImage2KHR)(VkCommandBuffer commandBuffer, const VkBlitImageInfo2* pBlitImageInfo);
9447
typedef void (VKAPI_PTR *PFN_vkCmdResolveImage2KHR)(VkCommandBuffer commandBuffer, const VkResolveImageInfo2* pResolveImageInfo);
9449
#ifndef VK_NO_PROTOTYPES
9450
VKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer2KHR(
9451
VkCommandBuffer commandBuffer,
9452
const VkCopyBufferInfo2* pCopyBufferInfo);
9454
VKAPI_ATTR void VKAPI_CALL vkCmdCopyImage2KHR(
9455
VkCommandBuffer commandBuffer,
9456
const VkCopyImageInfo2* pCopyImageInfo);
9458
VKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage2KHR(
9459
VkCommandBuffer commandBuffer,
9460
const VkCopyBufferToImageInfo2* pCopyBufferToImageInfo);
9462
VKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer2KHR(
9463
VkCommandBuffer commandBuffer,
9464
const VkCopyImageToBufferInfo2* pCopyImageToBufferInfo);
9466
VKAPI_ATTR void VKAPI_CALL vkCmdBlitImage2KHR(
9467
VkCommandBuffer commandBuffer,
9468
const VkBlitImageInfo2* pBlitImageInfo);
9470
VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage2KHR(
9471
VkCommandBuffer commandBuffer,
9472
const VkResolveImageInfo2* pResolveImageInfo);
9476
#define VK_KHR_format_feature_flags2 1
9477
#define VK_KHR_FORMAT_FEATURE_FLAGS_2_SPEC_VERSION 1
9478
#define VK_KHR_FORMAT_FEATURE_FLAGS_2_EXTENSION_NAME "VK_KHR_format_feature_flags2"
9479
typedef VkFormatFeatureFlags2 VkFormatFeatureFlags2KHR;
9481
typedef VkFormatFeatureFlagBits2 VkFormatFeatureFlagBits2KHR;
9483
typedef VkFormatProperties3 VkFormatProperties3KHR;
9487
#define VK_KHR_portability_enumeration 1
9488
#define VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION 1
9489
#define VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME "VK_KHR_portability_enumeration"
9492
#define VK_KHR_maintenance4 1
9493
#define VK_KHR_MAINTENANCE_4_SPEC_VERSION 2
9494
#define VK_KHR_MAINTENANCE_4_EXTENSION_NAME "VK_KHR_maintenance4"
9495
typedef VkPhysicalDeviceMaintenance4Features VkPhysicalDeviceMaintenance4FeaturesKHR;
9497
typedef VkPhysicalDeviceMaintenance4Properties VkPhysicalDeviceMaintenance4PropertiesKHR;
9499
typedef VkDeviceBufferMemoryRequirements VkDeviceBufferMemoryRequirementsKHR;
9501
typedef VkDeviceImageMemoryRequirements VkDeviceImageMemoryRequirementsKHR;
9503
typedef void (VKAPI_PTR *PFN_vkGetDeviceBufferMemoryRequirementsKHR)(VkDevice device, const VkDeviceBufferMemoryRequirements* pInfo, VkMemoryRequirements2* pMemoryRequirements);
9504
typedef void (VKAPI_PTR *PFN_vkGetDeviceImageMemoryRequirementsKHR)(VkDevice device, const VkDeviceImageMemoryRequirements* pInfo, VkMemoryRequirements2* pMemoryRequirements);
9505
typedef void (VKAPI_PTR *PFN_vkGetDeviceImageSparseMemoryRequirementsKHR)(VkDevice device, const VkDeviceImageMemoryRequirements* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
9507
#ifndef VK_NO_PROTOTYPES
9508
VKAPI_ATTR void VKAPI_CALL vkGetDeviceBufferMemoryRequirementsKHR(
9510
const VkDeviceBufferMemoryRequirements* pInfo,
9511
VkMemoryRequirements2* pMemoryRequirements);
9513
VKAPI_ATTR void VKAPI_CALL vkGetDeviceImageMemoryRequirementsKHR(
9515
const VkDeviceImageMemoryRequirements* pInfo,
9516
VkMemoryRequirements2* pMemoryRequirements);
9518
VKAPI_ATTR void VKAPI_CALL vkGetDeviceImageSparseMemoryRequirementsKHR(
9520
const VkDeviceImageMemoryRequirements* pInfo,
9521
uint32_t* pSparseMemoryRequirementCount,
9522
VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
9526
#define VK_EXT_debug_report 1
9527
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)
9528
#define VK_EXT_DEBUG_REPORT_SPEC_VERSION 10
9529
#define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report"
9531
typedef enum VkDebugReportObjectTypeEXT {
9532
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0,
9533
VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1,
9534
VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2,
9535
VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT = 3,
9536
VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT = 4,
9537
VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT = 5,
9538
VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT = 6,
9539
VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT = 7,
9540
VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT = 8,
9541
VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT = 9,
9542
VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT = 10,
9543
VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT = 11,
9544
VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT = 12,
9545
VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT = 13,
9546
VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT = 14,
9547
VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT = 15,
9548
VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT = 16,
9549
VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT = 17,
9550
VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT = 18,
9551
VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT = 19,
9552
VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT = 20,
9553
VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT = 21,
9554
VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT = 22,
9555
VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT = 23,
9556
VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT = 24,
9557
VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT = 25,
9558
VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26,
9559
VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27,
9560
VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT = 28,
9561
VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29,
9562
VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30,
9563
VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33,
9564
VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT = 1000156000,
9565
VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT = 1000085000,
9566
VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT = 1000029000,
9567
VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT = 1000029001,
9568
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000150000,
9569
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000,
9570
VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT = 1000366000,
9571
VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
9572
VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
9573
VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,
9574
VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,
9575
VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
9576
} VkDebugReportObjectTypeEXT;
9578
typedef enum VkDebugReportFlagBitsEXT {
9579
VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 0x00000001,
9580
VK_DEBUG_REPORT_WARNING_BIT_EXT = 0x00000002,
9581
VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 0x00000004,
9582
VK_DEBUG_REPORT_ERROR_BIT_EXT = 0x00000008,
9583
VK_DEBUG_REPORT_DEBUG_BIT_EXT = 0x00000010,
9584
VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
9585
} VkDebugReportFlagBitsEXT;
9586
typedef VkFlags VkDebugReportFlagsEXT;
9587
typedef VkBool32 (VKAPI_PTR *PFN_vkDebugReportCallbackEXT)(
9588
VkDebugReportFlagsEXT flags,
9589
VkDebugReportObjectTypeEXT objectType,
9592
int32_t messageCode,
9593
const char* pLayerPrefix,
9594
const char* pMessage,
9597
typedef struct VkDebugReportCallbackCreateInfoEXT {
9598
VkStructureType sType;
9600
VkDebugReportFlagsEXT flags;
9601
PFN_vkDebugReportCallbackEXT pfnCallback;
9603
} VkDebugReportCallbackCreateInfoEXT;
9605
typedef VkResult (VKAPI_PTR *PFN_vkCreateDebugReportCallbackEXT)(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback);
9606
typedef void (VKAPI_PTR *PFN_vkDestroyDebugReportCallbackEXT)(VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator);
9607
typedef 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);
9609
#ifndef VK_NO_PROTOTYPES
9610
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugReportCallbackEXT(
9611
VkInstance instance,
9612
const VkDebugReportCallbackCreateInfoEXT* pCreateInfo,
9613
const VkAllocationCallbacks* pAllocator,
9614
VkDebugReportCallbackEXT* pCallback);
9616
VKAPI_ATTR void VKAPI_CALL vkDestroyDebugReportCallbackEXT(
9617
VkInstance instance,
9618
VkDebugReportCallbackEXT callback,
9619
const VkAllocationCallbacks* pAllocator);
9621
VKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT(
9622
VkInstance instance,
9623
VkDebugReportFlagsEXT flags,
9624
VkDebugReportObjectTypeEXT objectType,
9627
int32_t messageCode,
9628
const char* pLayerPrefix,
9629
const char* pMessage);
9633
#define VK_NV_glsl_shader 1
9634
#define VK_NV_GLSL_SHADER_SPEC_VERSION 1
9635
#define VK_NV_GLSL_SHADER_EXTENSION_NAME "VK_NV_glsl_shader"
9638
#define VK_EXT_depth_range_unrestricted 1
9639
#define VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION 1
9640
#define VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME "VK_EXT_depth_range_unrestricted"
9643
#define VK_IMG_filter_cubic 1
9644
#define VK_IMG_FILTER_CUBIC_SPEC_VERSION 1
9645
#define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic"
9648
#define VK_AMD_rasterization_order 1
9649
#define VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION 1
9650
#define VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME "VK_AMD_rasterization_order"
9652
typedef enum VkRasterizationOrderAMD {
9653
VK_RASTERIZATION_ORDER_STRICT_AMD = 0,
9654
VK_RASTERIZATION_ORDER_RELAXED_AMD = 1,
9655
VK_RASTERIZATION_ORDER_MAX_ENUM_AMD = 0x7FFFFFFF
9656
} VkRasterizationOrderAMD;
9657
typedef struct VkPipelineRasterizationStateRasterizationOrderAMD {
9658
VkStructureType sType;
9660
VkRasterizationOrderAMD rasterizationOrder;
9661
} VkPipelineRasterizationStateRasterizationOrderAMD;
9665
#define VK_AMD_shader_trinary_minmax 1
9666
#define VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION 1
9667
#define VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME "VK_AMD_shader_trinary_minmax"
9670
#define VK_AMD_shader_explicit_vertex_parameter 1
9671
#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION 1
9672
#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME "VK_AMD_shader_explicit_vertex_parameter"
9675
#define VK_EXT_debug_marker 1
9676
#define VK_EXT_DEBUG_MARKER_SPEC_VERSION 4
9677
#define VK_EXT_DEBUG_MARKER_EXTENSION_NAME "VK_EXT_debug_marker"
9678
typedef struct VkDebugMarkerObjectNameInfoEXT {
9679
VkStructureType sType;
9681
VkDebugReportObjectTypeEXT objectType;
9683
const char* pObjectName;
9684
} VkDebugMarkerObjectNameInfoEXT;
9686
typedef struct VkDebugMarkerObjectTagInfoEXT {
9687
VkStructureType sType;
9689
VkDebugReportObjectTypeEXT objectType;
9694
} VkDebugMarkerObjectTagInfoEXT;
9696
typedef struct VkDebugMarkerMarkerInfoEXT {
9697
VkStructureType sType;
9699
const char* pMarkerName;
9701
} VkDebugMarkerMarkerInfoEXT;
9703
typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectTagEXT)(VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo);
9704
typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectNameEXT)(VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo);
9705
typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerBeginEXT)(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
9706
typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerEndEXT)(VkCommandBuffer commandBuffer);
9707
typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerInsertEXT)(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
9709
#ifndef VK_NO_PROTOTYPES
9710
VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectTagEXT(
9712
const VkDebugMarkerObjectTagInfoEXT* pTagInfo);
9714
VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectNameEXT(
9716
const VkDebugMarkerObjectNameInfoEXT* pNameInfo);
9718
VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerBeginEXT(
9719
VkCommandBuffer commandBuffer,
9720
const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
9722
VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerEndEXT(
9723
VkCommandBuffer commandBuffer);
9725
VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerInsertEXT(
9726
VkCommandBuffer commandBuffer,
9727
const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
9731
#define VK_AMD_gcn_shader 1
9732
#define VK_AMD_GCN_SHADER_SPEC_VERSION 1
9733
#define VK_AMD_GCN_SHADER_EXTENSION_NAME "VK_AMD_gcn_shader"
9736
#define VK_NV_dedicated_allocation 1
9737
#define VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION 1
9738
#define VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_NV_dedicated_allocation"
9739
typedef struct VkDedicatedAllocationImageCreateInfoNV {
9740
VkStructureType sType;
9742
VkBool32 dedicatedAllocation;
9743
} VkDedicatedAllocationImageCreateInfoNV;
9745
typedef struct VkDedicatedAllocationBufferCreateInfoNV {
9746
VkStructureType sType;
9748
VkBool32 dedicatedAllocation;
9749
} VkDedicatedAllocationBufferCreateInfoNV;
9751
typedef struct VkDedicatedAllocationMemoryAllocateInfoNV {
9752
VkStructureType sType;
9756
} VkDedicatedAllocationMemoryAllocateInfoNV;
9760
#define VK_EXT_transform_feedback 1
9761
#define VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION 1
9762
#define VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME "VK_EXT_transform_feedback"
9763
typedef VkFlags VkPipelineRasterizationStateStreamCreateFlagsEXT;
9764
typedef struct VkPhysicalDeviceTransformFeedbackFeaturesEXT {
9765
VkStructureType sType;
9767
VkBool32 transformFeedback;
9768
VkBool32 geometryStreams;
9769
} VkPhysicalDeviceTransformFeedbackFeaturesEXT;
9771
typedef struct VkPhysicalDeviceTransformFeedbackPropertiesEXT {
9772
VkStructureType sType;
9774
uint32_t maxTransformFeedbackStreams;
9775
uint32_t maxTransformFeedbackBuffers;
9776
VkDeviceSize maxTransformFeedbackBufferSize;
9777
uint32_t maxTransformFeedbackStreamDataSize;
9778
uint32_t maxTransformFeedbackBufferDataSize;
9779
uint32_t maxTransformFeedbackBufferDataStride;
9780
VkBool32 transformFeedbackQueries;
9781
VkBool32 transformFeedbackStreamsLinesTriangles;
9782
VkBool32 transformFeedbackRasterizationStreamSelect;
9783
VkBool32 transformFeedbackDraw;
9784
} VkPhysicalDeviceTransformFeedbackPropertiesEXT;
9786
typedef struct VkPipelineRasterizationStateStreamCreateInfoEXT {
9787
VkStructureType sType;
9789
VkPipelineRasterizationStateStreamCreateFlagsEXT flags;
9790
uint32_t rasterizationStream;
9791
} VkPipelineRasterizationStateStreamCreateInfoEXT;
9793
typedef void (VKAPI_PTR *PFN_vkCmdBindTransformFeedbackBuffersEXT)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes);
9794
typedef void (VKAPI_PTR *PFN_vkCmdBeginTransformFeedbackEXT)(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer* pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets);
9795
typedef void (VKAPI_PTR *PFN_vkCmdEndTransformFeedbackEXT)(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer* pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets);
9796
typedef void (VKAPI_PTR *PFN_vkCmdBeginQueryIndexedEXT)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags, uint32_t index);
9797
typedef void (VKAPI_PTR *PFN_vkCmdEndQueryIndexedEXT)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, uint32_t index);
9798
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectByteCountEXT)(VkCommandBuffer commandBuffer, uint32_t instanceCount, uint32_t firstInstance, VkBuffer counterBuffer, VkDeviceSize counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride);
9800
#ifndef VK_NO_PROTOTYPES
9801
VKAPI_ATTR void VKAPI_CALL vkCmdBindTransformFeedbackBuffersEXT(
9802
VkCommandBuffer commandBuffer,
9803
uint32_t firstBinding,
9804
uint32_t bindingCount,
9805
const VkBuffer* pBuffers,
9806
const VkDeviceSize* pOffsets,
9807
const VkDeviceSize* pSizes);
9809
VKAPI_ATTR void VKAPI_CALL vkCmdBeginTransformFeedbackEXT(
9810
VkCommandBuffer commandBuffer,
9811
uint32_t firstCounterBuffer,
9812
uint32_t counterBufferCount,
9813
const VkBuffer* pCounterBuffers,
9814
const VkDeviceSize* pCounterBufferOffsets);
9816
VKAPI_ATTR void VKAPI_CALL vkCmdEndTransformFeedbackEXT(
9817
VkCommandBuffer commandBuffer,
9818
uint32_t firstCounterBuffer,
9819
uint32_t counterBufferCount,
9820
const VkBuffer* pCounterBuffers,
9821
const VkDeviceSize* pCounterBufferOffsets);
9823
VKAPI_ATTR void VKAPI_CALL vkCmdBeginQueryIndexedEXT(
9824
VkCommandBuffer commandBuffer,
9825
VkQueryPool queryPool,
9827
VkQueryControlFlags flags,
9830
VKAPI_ATTR void VKAPI_CALL vkCmdEndQueryIndexedEXT(
9831
VkCommandBuffer commandBuffer,
9832
VkQueryPool queryPool,
9836
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectByteCountEXT(
9837
VkCommandBuffer commandBuffer,
9838
uint32_t instanceCount,
9839
uint32_t firstInstance,
9840
VkBuffer counterBuffer,
9841
VkDeviceSize counterBufferOffset,
9842
uint32_t counterOffset,
9843
uint32_t vertexStride);
9847
#define VK_NVX_binary_import 1
9848
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCuModuleNVX)
9849
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCuFunctionNVX)
9850
#define VK_NVX_BINARY_IMPORT_SPEC_VERSION 1
9851
#define VK_NVX_BINARY_IMPORT_EXTENSION_NAME "VK_NVX_binary_import"
9852
typedef struct VkCuModuleCreateInfoNVX {
9853
VkStructureType sType;
9857
} VkCuModuleCreateInfoNVX;
9859
typedef struct VkCuFunctionCreateInfoNVX {
9860
VkStructureType sType;
9862
VkCuModuleNVX module;
9864
} VkCuFunctionCreateInfoNVX;
9866
typedef struct VkCuLaunchInfoNVX {
9867
VkStructureType sType;
9869
VkCuFunctionNVX function;
9876
uint32_t sharedMemBytes;
9878
const void* const * pParams;
9880
const void* const * pExtras;
9881
} VkCuLaunchInfoNVX;
9883
typedef VkResult (VKAPI_PTR *PFN_vkCreateCuModuleNVX)(VkDevice device, const VkCuModuleCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCuModuleNVX* pModule);
9884
typedef VkResult (VKAPI_PTR *PFN_vkCreateCuFunctionNVX)(VkDevice device, const VkCuFunctionCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCuFunctionNVX* pFunction);
9885
typedef void (VKAPI_PTR *PFN_vkDestroyCuModuleNVX)(VkDevice device, VkCuModuleNVX module, const VkAllocationCallbacks* pAllocator);
9886
typedef void (VKAPI_PTR *PFN_vkDestroyCuFunctionNVX)(VkDevice device, VkCuFunctionNVX function, const VkAllocationCallbacks* pAllocator);
9887
typedef void (VKAPI_PTR *PFN_vkCmdCuLaunchKernelNVX)(VkCommandBuffer commandBuffer, const VkCuLaunchInfoNVX* pLaunchInfo);
9889
#ifndef VK_NO_PROTOTYPES
9890
VKAPI_ATTR VkResult VKAPI_CALL vkCreateCuModuleNVX(
9892
const VkCuModuleCreateInfoNVX* pCreateInfo,
9893
const VkAllocationCallbacks* pAllocator,
9894
VkCuModuleNVX* pModule);
9896
VKAPI_ATTR VkResult VKAPI_CALL vkCreateCuFunctionNVX(
9898
const VkCuFunctionCreateInfoNVX* pCreateInfo,
9899
const VkAllocationCallbacks* pAllocator,
9900
VkCuFunctionNVX* pFunction);
9902
VKAPI_ATTR void VKAPI_CALL vkDestroyCuModuleNVX(
9904
VkCuModuleNVX module,
9905
const VkAllocationCallbacks* pAllocator);
9907
VKAPI_ATTR void VKAPI_CALL vkDestroyCuFunctionNVX(
9909
VkCuFunctionNVX function,
9910
const VkAllocationCallbacks* pAllocator);
9912
VKAPI_ATTR void VKAPI_CALL vkCmdCuLaunchKernelNVX(
9913
VkCommandBuffer commandBuffer,
9914
const VkCuLaunchInfoNVX* pLaunchInfo);
9918
#define VK_NVX_image_view_handle 1
9919
#define VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION 2
9920
#define VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME "VK_NVX_image_view_handle"
9921
typedef struct VkImageViewHandleInfoNVX {
9922
VkStructureType sType;
9924
VkImageView imageView;
9925
VkDescriptorType descriptorType;
9927
} VkImageViewHandleInfoNVX;
9929
typedef struct VkImageViewAddressPropertiesNVX {
9930
VkStructureType sType;
9932
VkDeviceAddress deviceAddress;
9934
} VkImageViewAddressPropertiesNVX;
9936
typedef uint32_t (VKAPI_PTR *PFN_vkGetImageViewHandleNVX)(VkDevice device, const VkImageViewHandleInfoNVX* pInfo);
9937
typedef VkResult (VKAPI_PTR *PFN_vkGetImageViewAddressNVX)(VkDevice device, VkImageView imageView, VkImageViewAddressPropertiesNVX* pProperties);
9939
#ifndef VK_NO_PROTOTYPES
9940
VKAPI_ATTR uint32_t VKAPI_CALL vkGetImageViewHandleNVX(
9942
const VkImageViewHandleInfoNVX* pInfo);
9944
VKAPI_ATTR VkResult VKAPI_CALL vkGetImageViewAddressNVX(
9946
VkImageView imageView,
9947
VkImageViewAddressPropertiesNVX* pProperties);
9951
#define VK_AMD_draw_indirect_count 1
9952
#define VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION 2
9953
#define VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_AMD_draw_indirect_count"
9954
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
9955
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
9957
#ifndef VK_NO_PROTOTYPES
9958
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountAMD(
9959
VkCommandBuffer commandBuffer,
9961
VkDeviceSize offset,
9962
VkBuffer countBuffer,
9963
VkDeviceSize countBufferOffset,
9964
uint32_t maxDrawCount,
9967
VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountAMD(
9968
VkCommandBuffer commandBuffer,
9970
VkDeviceSize offset,
9971
VkBuffer countBuffer,
9972
VkDeviceSize countBufferOffset,
9973
uint32_t maxDrawCount,
9978
#define VK_AMD_negative_viewport_height 1
9979
#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION 1
9980
#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME "VK_AMD_negative_viewport_height"
9983
#define VK_AMD_gpu_shader_half_float 1
9984
#define VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION 2
9985
#define VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME "VK_AMD_gpu_shader_half_float"
9988
#define VK_AMD_shader_ballot 1
9989
#define VK_AMD_SHADER_BALLOT_SPEC_VERSION 1
9990
#define VK_AMD_SHADER_BALLOT_EXTENSION_NAME "VK_AMD_shader_ballot"
9993
#define VK_AMD_texture_gather_bias_lod 1
9994
#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION 1
9995
#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME "VK_AMD_texture_gather_bias_lod"
9996
typedef struct VkTextureLODGatherFormatPropertiesAMD {
9997
VkStructureType sType;
9999
VkBool32 supportsTextureGatherLODBiasAMD;
10000
} VkTextureLODGatherFormatPropertiesAMD;
10004
#define VK_AMD_shader_info 1
10005
#define VK_AMD_SHADER_INFO_SPEC_VERSION 1
10006
#define VK_AMD_SHADER_INFO_EXTENSION_NAME "VK_AMD_shader_info"
10008
typedef enum VkShaderInfoTypeAMD {
10009
VK_SHADER_INFO_TYPE_STATISTICS_AMD = 0,
10010
VK_SHADER_INFO_TYPE_BINARY_AMD = 1,
10011
VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD = 2,
10012
VK_SHADER_INFO_TYPE_MAX_ENUM_AMD = 0x7FFFFFFF
10013
} VkShaderInfoTypeAMD;
10014
typedef struct VkShaderResourceUsageAMD {
10015
uint32_t numUsedVgprs;
10016
uint32_t numUsedSgprs;
10017
uint32_t ldsSizePerLocalWorkGroup;
10018
size_t ldsUsageSizeInBytes;
10019
size_t scratchMemUsageInBytes;
10020
} VkShaderResourceUsageAMD;
10022
typedef struct VkShaderStatisticsInfoAMD {
10023
VkShaderStageFlags shaderStageMask;
10024
VkShaderResourceUsageAMD resourceUsage;
10025
uint32_t numPhysicalVgprs;
10026
uint32_t numPhysicalSgprs;
10027
uint32_t numAvailableVgprs;
10028
uint32_t numAvailableSgprs;
10029
uint32_t computeWorkGroupSize[3];
10030
} VkShaderStatisticsInfoAMD;
10032
typedef VkResult (VKAPI_PTR *PFN_vkGetShaderInfoAMD)(VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo);
10034
#ifndef VK_NO_PROTOTYPES
10035
VKAPI_ATTR VkResult VKAPI_CALL vkGetShaderInfoAMD(
10037
VkPipeline pipeline,
10038
VkShaderStageFlagBits shaderStage,
10039
VkShaderInfoTypeAMD infoType,
10045
#define VK_AMD_shader_image_load_store_lod 1
10046
#define VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION 1
10047
#define VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME "VK_AMD_shader_image_load_store_lod"
10050
#define VK_NV_corner_sampled_image 1
10051
#define VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION 2
10052
#define VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME "VK_NV_corner_sampled_image"
10053
typedef struct VkPhysicalDeviceCornerSampledImageFeaturesNV {
10054
VkStructureType sType;
10056
VkBool32 cornerSampledImage;
10057
} VkPhysicalDeviceCornerSampledImageFeaturesNV;
10061
#define VK_IMG_format_pvrtc 1
10062
#define VK_IMG_FORMAT_PVRTC_SPEC_VERSION 1
10063
#define VK_IMG_FORMAT_PVRTC_EXTENSION_NAME "VK_IMG_format_pvrtc"
10066
#define VK_NV_external_memory_capabilities 1
10067
#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1
10068
#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_NV_external_memory_capabilities"
10070
typedef enum VkExternalMemoryHandleTypeFlagBitsNV {
10071
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 0x00000001,
10072
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 0x00000002,
10073
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 0x00000004,
10074
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 0x00000008,
10075
VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
10076
} VkExternalMemoryHandleTypeFlagBitsNV;
10077
typedef VkFlags VkExternalMemoryHandleTypeFlagsNV;
10079
typedef enum VkExternalMemoryFeatureFlagBitsNV {
10080
VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 0x00000001,
10081
VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 0x00000002,
10082
VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 0x00000004,
10083
VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
10084
} VkExternalMemoryFeatureFlagBitsNV;
10085
typedef VkFlags VkExternalMemoryFeatureFlagsNV;
10086
typedef struct VkExternalImageFormatPropertiesNV {
10087
VkImageFormatProperties imageFormatProperties;
10088
VkExternalMemoryFeatureFlagsNV externalMemoryFeatures;
10089
VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes;
10090
VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes;
10091
} VkExternalImageFormatPropertiesNV;
10093
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);
10095
#ifndef VK_NO_PROTOTYPES
10096
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
10097
VkPhysicalDevice physicalDevice,
10100
VkImageTiling tiling,
10101
VkImageUsageFlags usage,
10102
VkImageCreateFlags flags,
10103
VkExternalMemoryHandleTypeFlagsNV externalHandleType,
10104
VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);
10108
#define VK_NV_external_memory 1
10109
#define VK_NV_EXTERNAL_MEMORY_SPEC_VERSION 1
10110
#define VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME "VK_NV_external_memory"
10111
typedef struct VkExternalMemoryImageCreateInfoNV {
10112
VkStructureType sType;
10114
VkExternalMemoryHandleTypeFlagsNV handleTypes;
10115
} VkExternalMemoryImageCreateInfoNV;
10117
typedef struct VkExportMemoryAllocateInfoNV {
10118
VkStructureType sType;
10120
VkExternalMemoryHandleTypeFlagsNV handleTypes;
10121
} VkExportMemoryAllocateInfoNV;
10125
#define VK_EXT_validation_flags 1
10126
#define VK_EXT_VALIDATION_FLAGS_SPEC_VERSION 2
10127
#define VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME "VK_EXT_validation_flags"
10129
typedef enum VkValidationCheckEXT {
10130
VK_VALIDATION_CHECK_ALL_EXT = 0,
10131
VK_VALIDATION_CHECK_SHADERS_EXT = 1,
10132
VK_VALIDATION_CHECK_MAX_ENUM_EXT = 0x7FFFFFFF
10133
} VkValidationCheckEXT;
10134
typedef struct VkValidationFlagsEXT {
10135
VkStructureType sType;
10137
uint32_t disabledValidationCheckCount;
10138
const VkValidationCheckEXT* pDisabledValidationChecks;
10139
} VkValidationFlagsEXT;
10143
#define VK_EXT_shader_subgroup_ballot 1
10144
#define VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION 1
10145
#define VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME "VK_EXT_shader_subgroup_ballot"
10148
#define VK_EXT_shader_subgroup_vote 1
10149
#define VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION 1
10150
#define VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME "VK_EXT_shader_subgroup_vote"
10153
#define VK_EXT_texture_compression_astc_hdr 1
10154
#define VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION 1
10155
#define VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME "VK_EXT_texture_compression_astc_hdr"
10156
typedef VkPhysicalDeviceTextureCompressionASTCHDRFeatures VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT;
10160
#define VK_EXT_astc_decode_mode 1
10161
#define VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION 1
10162
#define VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME "VK_EXT_astc_decode_mode"
10163
typedef struct VkImageViewASTCDecodeModeEXT {
10164
VkStructureType sType;
10166
VkFormat decodeMode;
10167
} VkImageViewASTCDecodeModeEXT;
10169
typedef struct VkPhysicalDeviceASTCDecodeFeaturesEXT {
10170
VkStructureType sType;
10172
VkBool32 decodeModeSharedExponent;
10173
} VkPhysicalDeviceASTCDecodeFeaturesEXT;
10177
#define VK_EXT_conditional_rendering 1
10178
#define VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION 2
10179
#define VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME "VK_EXT_conditional_rendering"
10181
typedef enum VkConditionalRenderingFlagBitsEXT {
10182
VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT = 0x00000001,
10183
VK_CONDITIONAL_RENDERING_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
10184
} VkConditionalRenderingFlagBitsEXT;
10185
typedef VkFlags VkConditionalRenderingFlagsEXT;
10186
typedef struct VkConditionalRenderingBeginInfoEXT {
10187
VkStructureType sType;
10190
VkDeviceSize offset;
10191
VkConditionalRenderingFlagsEXT flags;
10192
} VkConditionalRenderingBeginInfoEXT;
10194
typedef struct VkPhysicalDeviceConditionalRenderingFeaturesEXT {
10195
VkStructureType sType;
10197
VkBool32 conditionalRendering;
10198
VkBool32 inheritedConditionalRendering;
10199
} VkPhysicalDeviceConditionalRenderingFeaturesEXT;
10201
typedef struct VkCommandBufferInheritanceConditionalRenderingInfoEXT {
10202
VkStructureType sType;
10204
VkBool32 conditionalRenderingEnable;
10205
} VkCommandBufferInheritanceConditionalRenderingInfoEXT;
10207
typedef void (VKAPI_PTR *PFN_vkCmdBeginConditionalRenderingEXT)(VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin);
10208
typedef void (VKAPI_PTR *PFN_vkCmdEndConditionalRenderingEXT)(VkCommandBuffer commandBuffer);
10210
#ifndef VK_NO_PROTOTYPES
10211
VKAPI_ATTR void VKAPI_CALL vkCmdBeginConditionalRenderingEXT(
10212
VkCommandBuffer commandBuffer,
10213
const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin);
10215
VKAPI_ATTR void VKAPI_CALL vkCmdEndConditionalRenderingEXT(
10216
VkCommandBuffer commandBuffer);
10220
#define VK_NV_clip_space_w_scaling 1
10221
#define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1
10222
#define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling"
10223
typedef struct VkViewportWScalingNV {
10226
} VkViewportWScalingNV;
10228
typedef struct VkPipelineViewportWScalingStateCreateInfoNV {
10229
VkStructureType sType;
10231
VkBool32 viewportWScalingEnable;
10232
uint32_t viewportCount;
10233
const VkViewportWScalingNV* pViewportWScalings;
10234
} VkPipelineViewportWScalingStateCreateInfoNV;
10236
typedef void (VKAPI_PTR *PFN_vkCmdSetViewportWScalingNV)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings);
10238
#ifndef VK_NO_PROTOTYPES
10239
VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWScalingNV(
10240
VkCommandBuffer commandBuffer,
10241
uint32_t firstViewport,
10242
uint32_t viewportCount,
10243
const VkViewportWScalingNV* pViewportWScalings);
10247
#define VK_EXT_direct_mode_display 1
10248
#define VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION 1
10249
#define VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME "VK_EXT_direct_mode_display"
10250
typedef VkResult (VKAPI_PTR *PFN_vkReleaseDisplayEXT)(VkPhysicalDevice physicalDevice, VkDisplayKHR display);
10252
#ifndef VK_NO_PROTOTYPES
10253
VKAPI_ATTR VkResult VKAPI_CALL vkReleaseDisplayEXT(
10254
VkPhysicalDevice physicalDevice,
10255
VkDisplayKHR display);
10259
#define VK_EXT_display_surface_counter 1
10260
#define VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION 1
10261
#define VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME "VK_EXT_display_surface_counter"
10263
typedef enum VkSurfaceCounterFlagBitsEXT {
10264
VK_SURFACE_COUNTER_VBLANK_BIT_EXT = 0x00000001,
10265
VK_SURFACE_COUNTER_VBLANK_EXT = VK_SURFACE_COUNTER_VBLANK_BIT_EXT,
10266
VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
10267
} VkSurfaceCounterFlagBitsEXT;
10268
typedef VkFlags VkSurfaceCounterFlagsEXT;
10269
typedef struct VkSurfaceCapabilities2EXT {
10270
VkStructureType sType;
10272
uint32_t minImageCount;
10273
uint32_t maxImageCount;
10274
VkExtent2D currentExtent;
10275
VkExtent2D minImageExtent;
10276
VkExtent2D maxImageExtent;
10277
uint32_t maxImageArrayLayers;
10278
VkSurfaceTransformFlagsKHR supportedTransforms;
10279
VkSurfaceTransformFlagBitsKHR currentTransform;
10280
VkCompositeAlphaFlagsKHR supportedCompositeAlpha;
10281
VkImageUsageFlags supportedUsageFlags;
10282
VkSurfaceCounterFlagsEXT supportedSurfaceCounters;
10283
} VkSurfaceCapabilities2EXT;
10285
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities);
10287
#ifndef VK_NO_PROTOTYPES
10288
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2EXT(
10289
VkPhysicalDevice physicalDevice,
10290
VkSurfaceKHR surface,
10291
VkSurfaceCapabilities2EXT* pSurfaceCapabilities);
10295
#define VK_EXT_display_control 1
10296
#define VK_EXT_DISPLAY_CONTROL_SPEC_VERSION 1
10297
#define VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME "VK_EXT_display_control"
10299
typedef enum VkDisplayPowerStateEXT {
10300
VK_DISPLAY_POWER_STATE_OFF_EXT = 0,
10301
VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1,
10302
VK_DISPLAY_POWER_STATE_ON_EXT = 2,
10303
VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT = 0x7FFFFFFF
10304
} VkDisplayPowerStateEXT;
10306
typedef enum VkDeviceEventTypeEXT {
10307
VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT = 0,
10308
VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
10309
} VkDeviceEventTypeEXT;
10311
typedef enum VkDisplayEventTypeEXT {
10312
VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT = 0,
10313
VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
10314
} VkDisplayEventTypeEXT;
10315
typedef struct VkDisplayPowerInfoEXT {
10316
VkStructureType sType;
10318
VkDisplayPowerStateEXT powerState;
10319
} VkDisplayPowerInfoEXT;
10321
typedef struct VkDeviceEventInfoEXT {
10322
VkStructureType sType;
10324
VkDeviceEventTypeEXT deviceEvent;
10325
} VkDeviceEventInfoEXT;
10327
typedef struct VkDisplayEventInfoEXT {
10328
VkStructureType sType;
10330
VkDisplayEventTypeEXT displayEvent;
10331
} VkDisplayEventInfoEXT;
10333
typedef struct VkSwapchainCounterCreateInfoEXT {
10334
VkStructureType sType;
10336
VkSurfaceCounterFlagsEXT surfaceCounters;
10337
} VkSwapchainCounterCreateInfoEXT;
10339
typedef VkResult (VKAPI_PTR *PFN_vkDisplayPowerControlEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo);
10340
typedef VkResult (VKAPI_PTR *PFN_vkRegisterDeviceEventEXT)(VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);
10341
typedef VkResult (VKAPI_PTR *PFN_vkRegisterDisplayEventEXT)(VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);
10342
typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainCounterEXT)(VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue);
10344
#ifndef VK_NO_PROTOTYPES
10345
VKAPI_ATTR VkResult VKAPI_CALL vkDisplayPowerControlEXT(
10347
VkDisplayKHR display,
10348
const VkDisplayPowerInfoEXT* pDisplayPowerInfo);
10350
VKAPI_ATTR VkResult VKAPI_CALL vkRegisterDeviceEventEXT(
10352
const VkDeviceEventInfoEXT* pDeviceEventInfo,
10353
const VkAllocationCallbacks* pAllocator,
10356
VKAPI_ATTR VkResult VKAPI_CALL vkRegisterDisplayEventEXT(
10358
VkDisplayKHR display,
10359
const VkDisplayEventInfoEXT* pDisplayEventInfo,
10360
const VkAllocationCallbacks* pAllocator,
10363
VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainCounterEXT(
10365
VkSwapchainKHR swapchain,
10366
VkSurfaceCounterFlagBitsEXT counter,
10367
uint64_t* pCounterValue);
10371
#define VK_GOOGLE_display_timing 1
10372
#define VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION 1
10373
#define VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME "VK_GOOGLE_display_timing"
10374
typedef struct VkRefreshCycleDurationGOOGLE {
10375
uint64_t refreshDuration;
10376
} VkRefreshCycleDurationGOOGLE;
10378
typedef struct VkPastPresentationTimingGOOGLE {
10379
uint32_t presentID;
10380
uint64_t desiredPresentTime;
10381
uint64_t actualPresentTime;
10382
uint64_t earliestPresentTime;
10383
uint64_t presentMargin;
10384
} VkPastPresentationTimingGOOGLE;
10386
typedef struct VkPresentTimeGOOGLE {
10387
uint32_t presentID;
10388
uint64_t desiredPresentTime;
10389
} VkPresentTimeGOOGLE;
10391
typedef struct VkPresentTimesInfoGOOGLE {
10392
VkStructureType sType;
10394
uint32_t swapchainCount;
10395
const VkPresentTimeGOOGLE* pTimes;
10396
} VkPresentTimesInfoGOOGLE;
10398
typedef VkResult (VKAPI_PTR *PFN_vkGetRefreshCycleDurationGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);
10399
typedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings);
10401
#ifndef VK_NO_PROTOTYPES
10402
VKAPI_ATTR VkResult VKAPI_CALL vkGetRefreshCycleDurationGOOGLE(
10404
VkSwapchainKHR swapchain,
10405
VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);
10407
VKAPI_ATTR VkResult VKAPI_CALL vkGetPastPresentationTimingGOOGLE(
10409
VkSwapchainKHR swapchain,
10410
uint32_t* pPresentationTimingCount,
10411
VkPastPresentationTimingGOOGLE* pPresentationTimings);
10415
#define VK_NV_sample_mask_override_coverage 1
10416
#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION 1
10417
#define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME "VK_NV_sample_mask_override_coverage"
10420
#define VK_NV_geometry_shader_passthrough 1
10421
#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION 1
10422
#define VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME "VK_NV_geometry_shader_passthrough"
10425
#define VK_NV_viewport_array2 1
10426
#define VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION 1
10427
#define VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME "VK_NV_viewport_array2"
10428
#define VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION
10429
#define VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME
10432
#define VK_NVX_multiview_per_view_attributes 1
10433
#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION 1
10434
#define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME "VK_NVX_multiview_per_view_attributes"
10435
typedef struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {
10436
VkStructureType sType;
10438
VkBool32 perViewPositionAllComponents;
10439
} VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
10443
#define VK_NV_viewport_swizzle 1
10444
#define VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION 1
10445
#define VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME "VK_NV_viewport_swizzle"
10447
typedef enum VkViewportCoordinateSwizzleNV {
10448
VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV = 0,
10449
VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV = 1,
10450
VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV = 2,
10451
VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV = 3,
10452
VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV = 4,
10453
VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV = 5,
10454
VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV = 6,
10455
VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV = 7,
10456
VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV = 0x7FFFFFFF
10457
} VkViewportCoordinateSwizzleNV;
10458
typedef VkFlags VkPipelineViewportSwizzleStateCreateFlagsNV;
10459
typedef struct VkViewportSwizzleNV {
10460
VkViewportCoordinateSwizzleNV x;
10461
VkViewportCoordinateSwizzleNV y;
10462
VkViewportCoordinateSwizzleNV z;
10463
VkViewportCoordinateSwizzleNV w;
10464
} VkViewportSwizzleNV;
10466
typedef struct VkPipelineViewportSwizzleStateCreateInfoNV {
10467
VkStructureType sType;
10469
VkPipelineViewportSwizzleStateCreateFlagsNV flags;
10470
uint32_t viewportCount;
10471
const VkViewportSwizzleNV* pViewportSwizzles;
10472
} VkPipelineViewportSwizzleStateCreateInfoNV;
10476
#define VK_EXT_discard_rectangles 1
10477
#define VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION 1
10478
#define VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME "VK_EXT_discard_rectangles"
10480
typedef enum VkDiscardRectangleModeEXT {
10481
VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT = 0,
10482
VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT = 1,
10483
VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
10484
} VkDiscardRectangleModeEXT;
10485
typedef VkFlags VkPipelineDiscardRectangleStateCreateFlagsEXT;
10486
typedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT {
10487
VkStructureType sType;
10489
uint32_t maxDiscardRectangles;
10490
} VkPhysicalDeviceDiscardRectanglePropertiesEXT;
10492
typedef struct VkPipelineDiscardRectangleStateCreateInfoEXT {
10493
VkStructureType sType;
10495
VkPipelineDiscardRectangleStateCreateFlagsEXT flags;
10496
VkDiscardRectangleModeEXT discardRectangleMode;
10497
uint32_t discardRectangleCount;
10498
const VkRect2D* pDiscardRectangles;
10499
} VkPipelineDiscardRectangleStateCreateInfoEXT;
10501
typedef void (VKAPI_PTR *PFN_vkCmdSetDiscardRectangleEXT)(VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles);
10503
#ifndef VK_NO_PROTOTYPES
10504
VKAPI_ATTR void VKAPI_CALL vkCmdSetDiscardRectangleEXT(
10505
VkCommandBuffer commandBuffer,
10506
uint32_t firstDiscardRectangle,
10507
uint32_t discardRectangleCount,
10508
const VkRect2D* pDiscardRectangles);
10512
#define VK_EXT_conservative_rasterization 1
10513
#define VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION 1
10514
#define VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME "VK_EXT_conservative_rasterization"
10516
typedef enum VkConservativeRasterizationModeEXT {
10517
VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT = 0,
10518
VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT = 1,
10519
VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT = 2,
10520
VK_CONSERVATIVE_RASTERIZATION_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
10521
} VkConservativeRasterizationModeEXT;
10522
typedef VkFlags VkPipelineRasterizationConservativeStateCreateFlagsEXT;
10523
typedef struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT {
10524
VkStructureType sType;
10526
float primitiveOverestimationSize;
10527
float maxExtraPrimitiveOverestimationSize;
10528
float extraPrimitiveOverestimationSizeGranularity;
10529
VkBool32 primitiveUnderestimation;
10530
VkBool32 conservativePointAndLineRasterization;
10531
VkBool32 degenerateTrianglesRasterized;
10532
VkBool32 degenerateLinesRasterized;
10533
VkBool32 fullyCoveredFragmentShaderInputVariable;
10534
VkBool32 conservativeRasterizationPostDepthCoverage;
10535
} VkPhysicalDeviceConservativeRasterizationPropertiesEXT;
10537
typedef struct VkPipelineRasterizationConservativeStateCreateInfoEXT {
10538
VkStructureType sType;
10540
VkPipelineRasterizationConservativeStateCreateFlagsEXT flags;
10541
VkConservativeRasterizationModeEXT conservativeRasterizationMode;
10542
float extraPrimitiveOverestimationSize;
10543
} VkPipelineRasterizationConservativeStateCreateInfoEXT;
10547
#define VK_EXT_depth_clip_enable 1
10548
#define VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION 1
10549
#define VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME "VK_EXT_depth_clip_enable"
10550
typedef VkFlags VkPipelineRasterizationDepthClipStateCreateFlagsEXT;
10551
typedef struct VkPhysicalDeviceDepthClipEnableFeaturesEXT {
10552
VkStructureType sType;
10554
VkBool32 depthClipEnable;
10555
} VkPhysicalDeviceDepthClipEnableFeaturesEXT;
10557
typedef struct VkPipelineRasterizationDepthClipStateCreateInfoEXT {
10558
VkStructureType sType;
10560
VkPipelineRasterizationDepthClipStateCreateFlagsEXT flags;
10561
VkBool32 depthClipEnable;
10562
} VkPipelineRasterizationDepthClipStateCreateInfoEXT;
10566
#define VK_EXT_swapchain_colorspace 1
10567
#define VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION 4
10568
#define VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME "VK_EXT_swapchain_colorspace"
10571
#define VK_EXT_hdr_metadata 1
10572
#define VK_EXT_HDR_METADATA_SPEC_VERSION 2
10573
#define VK_EXT_HDR_METADATA_EXTENSION_NAME "VK_EXT_hdr_metadata"
10574
typedef struct VkXYColorEXT {
10579
typedef struct VkHdrMetadataEXT {
10580
VkStructureType sType;
10582
VkXYColorEXT displayPrimaryRed;
10583
VkXYColorEXT displayPrimaryGreen;
10584
VkXYColorEXT displayPrimaryBlue;
10585
VkXYColorEXT whitePoint;
10586
float maxLuminance;
10587
float minLuminance;
10588
float maxContentLightLevel;
10589
float maxFrameAverageLightLevel;
10590
} VkHdrMetadataEXT;
10592
typedef void (VKAPI_PTR *PFN_vkSetHdrMetadataEXT)(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata);
10594
#ifndef VK_NO_PROTOTYPES
10595
VKAPI_ATTR void VKAPI_CALL vkSetHdrMetadataEXT(
10597
uint32_t swapchainCount,
10598
const VkSwapchainKHR* pSwapchains,
10599
const VkHdrMetadataEXT* pMetadata);
10603
#define VK_EXT_external_memory_dma_buf 1
10604
#define VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION 1
10605
#define VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME "VK_EXT_external_memory_dma_buf"
10608
#define VK_EXT_queue_family_foreign 1
10609
#define VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION 1
10610
#define VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME "VK_EXT_queue_family_foreign"
10611
#define VK_QUEUE_FAMILY_FOREIGN_EXT (~2U)
10614
#define VK_EXT_debug_utils 1
10615
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugUtilsMessengerEXT)
10616
#define VK_EXT_DEBUG_UTILS_SPEC_VERSION 2
10617
#define VK_EXT_DEBUG_UTILS_EXTENSION_NAME "VK_EXT_debug_utils"
10618
typedef VkFlags VkDebugUtilsMessengerCallbackDataFlagsEXT;
10620
typedef enum VkDebugUtilsMessageSeverityFlagBitsEXT {
10621
VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT = 0x00000001,
10622
VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT = 0x00000010,
10623
VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT = 0x00000100,
10624
VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT = 0x00001000,
10625
VK_DEBUG_UTILS_MESSAGE_SEVERITY_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
10626
} VkDebugUtilsMessageSeverityFlagBitsEXT;
10628
typedef enum VkDebugUtilsMessageTypeFlagBitsEXT {
10629
VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = 0x00000001,
10630
VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = 0x00000002,
10631
VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = 0x00000004,
10632
VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
10633
} VkDebugUtilsMessageTypeFlagBitsEXT;
10634
typedef VkFlags VkDebugUtilsMessageTypeFlagsEXT;
10635
typedef VkFlags VkDebugUtilsMessageSeverityFlagsEXT;
10636
typedef VkFlags VkDebugUtilsMessengerCreateFlagsEXT;
10637
typedef struct VkDebugUtilsLabelEXT {
10638
VkStructureType sType;
10640
const char* pLabelName;
10642
} VkDebugUtilsLabelEXT;
10644
typedef struct VkDebugUtilsObjectNameInfoEXT {
10645
VkStructureType sType;
10647
VkObjectType objectType;
10648
uint64_t objectHandle;
10649
const char* pObjectName;
10650
} VkDebugUtilsObjectNameInfoEXT;
10652
typedef struct VkDebugUtilsMessengerCallbackDataEXT {
10653
VkStructureType sType;
10655
VkDebugUtilsMessengerCallbackDataFlagsEXT flags;
10656
const char* pMessageIdName;
10657
int32_t messageIdNumber;
10658
const char* pMessage;
10659
uint32_t queueLabelCount;
10660
const VkDebugUtilsLabelEXT* pQueueLabels;
10661
uint32_t cmdBufLabelCount;
10662
const VkDebugUtilsLabelEXT* pCmdBufLabels;
10663
uint32_t objectCount;
10664
const VkDebugUtilsObjectNameInfoEXT* pObjects;
10665
} VkDebugUtilsMessengerCallbackDataEXT;
10667
typedef VkBool32 (VKAPI_PTR *PFN_vkDebugUtilsMessengerCallbackEXT)(
10668
VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
10669
VkDebugUtilsMessageTypeFlagsEXT messageTypes,
10670
const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData,
10673
typedef struct VkDebugUtilsMessengerCreateInfoEXT {
10674
VkStructureType sType;
10676
VkDebugUtilsMessengerCreateFlagsEXT flags;
10677
VkDebugUtilsMessageSeverityFlagsEXT messageSeverity;
10678
VkDebugUtilsMessageTypeFlagsEXT messageType;
10679
PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback;
10681
} VkDebugUtilsMessengerCreateInfoEXT;
10683
typedef struct VkDebugUtilsObjectTagInfoEXT {
10684
VkStructureType sType;
10686
VkObjectType objectType;
10687
uint64_t objectHandle;
10691
} VkDebugUtilsObjectTagInfoEXT;
10693
typedef VkResult (VKAPI_PTR *PFN_vkSetDebugUtilsObjectNameEXT)(VkDevice device, const VkDebugUtilsObjectNameInfoEXT* pNameInfo);
10694
typedef VkResult (VKAPI_PTR *PFN_vkSetDebugUtilsObjectTagEXT)(VkDevice device, const VkDebugUtilsObjectTagInfoEXT* pTagInfo);
10695
typedef void (VKAPI_PTR *PFN_vkQueueBeginDebugUtilsLabelEXT)(VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo);
10696
typedef void (VKAPI_PTR *PFN_vkQueueEndDebugUtilsLabelEXT)(VkQueue queue);
10697
typedef void (VKAPI_PTR *PFN_vkQueueInsertDebugUtilsLabelEXT)(VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo);
10698
typedef void (VKAPI_PTR *PFN_vkCmdBeginDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo);
10699
typedef void (VKAPI_PTR *PFN_vkCmdEndDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer);
10700
typedef void (VKAPI_PTR *PFN_vkCmdInsertDebugUtilsLabelEXT)(VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo);
10701
typedef VkResult (VKAPI_PTR *PFN_vkCreateDebugUtilsMessengerEXT)(VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugUtilsMessengerEXT* pMessenger);
10702
typedef void (VKAPI_PTR *PFN_vkDestroyDebugUtilsMessengerEXT)(VkInstance instance, VkDebugUtilsMessengerEXT messenger, const VkAllocationCallbacks* pAllocator);
10703
typedef void (VKAPI_PTR *PFN_vkSubmitDebugUtilsMessageEXT)(VkInstance instance, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageTypes, const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);
10705
#ifndef VK_NO_PROTOTYPES
10706
VKAPI_ATTR VkResult VKAPI_CALL vkSetDebugUtilsObjectNameEXT(
10708
const VkDebugUtilsObjectNameInfoEXT* pNameInfo);
10710
VKAPI_ATTR VkResult VKAPI_CALL vkSetDebugUtilsObjectTagEXT(
10712
const VkDebugUtilsObjectTagInfoEXT* pTagInfo);
10714
VKAPI_ATTR void VKAPI_CALL vkQueueBeginDebugUtilsLabelEXT(
10716
const VkDebugUtilsLabelEXT* pLabelInfo);
10718
VKAPI_ATTR void VKAPI_CALL vkQueueEndDebugUtilsLabelEXT(
10721
VKAPI_ATTR void VKAPI_CALL vkQueueInsertDebugUtilsLabelEXT(
10723
const VkDebugUtilsLabelEXT* pLabelInfo);
10725
VKAPI_ATTR void VKAPI_CALL vkCmdBeginDebugUtilsLabelEXT(
10726
VkCommandBuffer commandBuffer,
10727
const VkDebugUtilsLabelEXT* pLabelInfo);
10729
VKAPI_ATTR void VKAPI_CALL vkCmdEndDebugUtilsLabelEXT(
10730
VkCommandBuffer commandBuffer);
10732
VKAPI_ATTR void VKAPI_CALL vkCmdInsertDebugUtilsLabelEXT(
10733
VkCommandBuffer commandBuffer,
10734
const VkDebugUtilsLabelEXT* pLabelInfo);
10736
VKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugUtilsMessengerEXT(
10737
VkInstance instance,
10738
const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo,
10739
const VkAllocationCallbacks* pAllocator,
10740
VkDebugUtilsMessengerEXT* pMessenger);
10742
VKAPI_ATTR void VKAPI_CALL vkDestroyDebugUtilsMessengerEXT(
10743
VkInstance instance,
10744
VkDebugUtilsMessengerEXT messenger,
10745
const VkAllocationCallbacks* pAllocator);
10747
VKAPI_ATTR void VKAPI_CALL vkSubmitDebugUtilsMessageEXT(
10748
VkInstance instance,
10749
VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
10750
VkDebugUtilsMessageTypeFlagsEXT messageTypes,
10751
const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);
10755
#define VK_EXT_sampler_filter_minmax 1
10756
#define VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION 2
10757
#define VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME "VK_EXT_sampler_filter_minmax"
10758
typedef VkSamplerReductionMode VkSamplerReductionModeEXT;
10760
typedef VkSamplerReductionModeCreateInfo VkSamplerReductionModeCreateInfoEXT;
10762
typedef VkPhysicalDeviceSamplerFilterMinmaxProperties VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT;
10766
#define VK_AMD_gpu_shader_int16 1
10767
#define VK_AMD_GPU_SHADER_INT16_SPEC_VERSION 2
10768
#define VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME "VK_AMD_gpu_shader_int16"
10771
#define VK_AMD_mixed_attachment_samples 1
10772
#define VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION 1
10773
#define VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME "VK_AMD_mixed_attachment_samples"
10776
#define VK_AMD_shader_fragment_mask 1
10777
#define VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION 1
10778
#define VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME "VK_AMD_shader_fragment_mask"
10781
#define VK_EXT_inline_uniform_block 1
10782
#define VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION 1
10783
#define VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME "VK_EXT_inline_uniform_block"
10784
typedef VkPhysicalDeviceInlineUniformBlockFeatures VkPhysicalDeviceInlineUniformBlockFeaturesEXT;
10786
typedef VkPhysicalDeviceInlineUniformBlockProperties VkPhysicalDeviceInlineUniformBlockPropertiesEXT;
10788
typedef VkWriteDescriptorSetInlineUniformBlock VkWriteDescriptorSetInlineUniformBlockEXT;
10790
typedef VkDescriptorPoolInlineUniformBlockCreateInfo VkDescriptorPoolInlineUniformBlockCreateInfoEXT;
10794
#define VK_EXT_shader_stencil_export 1
10795
#define VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION 1
10796
#define VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME "VK_EXT_shader_stencil_export"
10799
#define VK_EXT_sample_locations 1
10800
#define VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION 1
10801
#define VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME "VK_EXT_sample_locations"
10802
typedef struct VkSampleLocationEXT {
10805
} VkSampleLocationEXT;
10807
typedef struct VkSampleLocationsInfoEXT {
10808
VkStructureType sType;
10810
VkSampleCountFlagBits sampleLocationsPerPixel;
10811
VkExtent2D sampleLocationGridSize;
10812
uint32_t sampleLocationsCount;
10813
const VkSampleLocationEXT* pSampleLocations;
10814
} VkSampleLocationsInfoEXT;
10816
typedef struct VkAttachmentSampleLocationsEXT {
10817
uint32_t attachmentIndex;
10818
VkSampleLocationsInfoEXT sampleLocationsInfo;
10819
} VkAttachmentSampleLocationsEXT;
10821
typedef struct VkSubpassSampleLocationsEXT {
10822
uint32_t subpassIndex;
10823
VkSampleLocationsInfoEXT sampleLocationsInfo;
10824
} VkSubpassSampleLocationsEXT;
10826
typedef struct VkRenderPassSampleLocationsBeginInfoEXT {
10827
VkStructureType sType;
10829
uint32_t attachmentInitialSampleLocationsCount;
10830
const VkAttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations;
10831
uint32_t postSubpassSampleLocationsCount;
10832
const VkSubpassSampleLocationsEXT* pPostSubpassSampleLocations;
10833
} VkRenderPassSampleLocationsBeginInfoEXT;
10835
typedef struct VkPipelineSampleLocationsStateCreateInfoEXT {
10836
VkStructureType sType;
10838
VkBool32 sampleLocationsEnable;
10839
VkSampleLocationsInfoEXT sampleLocationsInfo;
10840
} VkPipelineSampleLocationsStateCreateInfoEXT;
10842
typedef struct VkPhysicalDeviceSampleLocationsPropertiesEXT {
10843
VkStructureType sType;
10845
VkSampleCountFlags sampleLocationSampleCounts;
10846
VkExtent2D maxSampleLocationGridSize;
10847
float sampleLocationCoordinateRange[2];
10848
uint32_t sampleLocationSubPixelBits;
10849
VkBool32 variableSampleLocations;
10850
} VkPhysicalDeviceSampleLocationsPropertiesEXT;
10852
typedef struct VkMultisamplePropertiesEXT {
10853
VkStructureType sType;
10855
VkExtent2D maxSampleLocationGridSize;
10856
} VkMultisamplePropertiesEXT;
10858
typedef void (VKAPI_PTR *PFN_vkCmdSetSampleLocationsEXT)(VkCommandBuffer commandBuffer, const VkSampleLocationsInfoEXT* pSampleLocationsInfo);
10859
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)(VkPhysicalDevice physicalDevice, VkSampleCountFlagBits samples, VkMultisamplePropertiesEXT* pMultisampleProperties);
10861
#ifndef VK_NO_PROTOTYPES
10862
VKAPI_ATTR void VKAPI_CALL vkCmdSetSampleLocationsEXT(
10863
VkCommandBuffer commandBuffer,
10864
const VkSampleLocationsInfoEXT* pSampleLocationsInfo);
10866
VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMultisamplePropertiesEXT(
10867
VkPhysicalDevice physicalDevice,
10868
VkSampleCountFlagBits samples,
10869
VkMultisamplePropertiesEXT* pMultisampleProperties);
10873
#define VK_EXT_blend_operation_advanced 1
10874
#define VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION 2
10875
#define VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME "VK_EXT_blend_operation_advanced"
10877
typedef enum VkBlendOverlapEXT {
10878
VK_BLEND_OVERLAP_UNCORRELATED_EXT = 0,
10879
VK_BLEND_OVERLAP_DISJOINT_EXT = 1,
10880
VK_BLEND_OVERLAP_CONJOINT_EXT = 2,
10881
VK_BLEND_OVERLAP_MAX_ENUM_EXT = 0x7FFFFFFF
10882
} VkBlendOverlapEXT;
10883
typedef struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT {
10884
VkStructureType sType;
10886
VkBool32 advancedBlendCoherentOperations;
10887
} VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT;
10889
typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {
10890
VkStructureType sType;
10892
uint32_t advancedBlendMaxColorAttachments;
10893
VkBool32 advancedBlendIndependentBlend;
10894
VkBool32 advancedBlendNonPremultipliedSrcColor;
10895
VkBool32 advancedBlendNonPremultipliedDstColor;
10896
VkBool32 advancedBlendCorrelatedOverlap;
10897
VkBool32 advancedBlendAllOperations;
10898
} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;
10900
typedef struct VkPipelineColorBlendAdvancedStateCreateInfoEXT {
10901
VkStructureType sType;
10903
VkBool32 srcPremultiplied;
10904
VkBool32 dstPremultiplied;
10905
VkBlendOverlapEXT blendOverlap;
10906
} VkPipelineColorBlendAdvancedStateCreateInfoEXT;
10910
#define VK_NV_fragment_coverage_to_color 1
10911
#define VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION 1
10912
#define VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME "VK_NV_fragment_coverage_to_color"
10913
typedef VkFlags VkPipelineCoverageToColorStateCreateFlagsNV;
10914
typedef struct VkPipelineCoverageToColorStateCreateInfoNV {
10915
VkStructureType sType;
10917
VkPipelineCoverageToColorStateCreateFlagsNV flags;
10918
VkBool32 coverageToColorEnable;
10919
uint32_t coverageToColorLocation;
10920
} VkPipelineCoverageToColorStateCreateInfoNV;
10924
#define VK_NV_framebuffer_mixed_samples 1
10925
#define VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION 1
10926
#define VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME "VK_NV_framebuffer_mixed_samples"
10928
typedef enum VkCoverageModulationModeNV {
10929
VK_COVERAGE_MODULATION_MODE_NONE_NV = 0,
10930
VK_COVERAGE_MODULATION_MODE_RGB_NV = 1,
10931
VK_COVERAGE_MODULATION_MODE_ALPHA_NV = 2,
10932
VK_COVERAGE_MODULATION_MODE_RGBA_NV = 3,
10933
VK_COVERAGE_MODULATION_MODE_MAX_ENUM_NV = 0x7FFFFFFF
10934
} VkCoverageModulationModeNV;
10935
typedef VkFlags VkPipelineCoverageModulationStateCreateFlagsNV;
10936
typedef struct VkPipelineCoverageModulationStateCreateInfoNV {
10937
VkStructureType sType;
10939
VkPipelineCoverageModulationStateCreateFlagsNV flags;
10940
VkCoverageModulationModeNV coverageModulationMode;
10941
VkBool32 coverageModulationTableEnable;
10942
uint32_t coverageModulationTableCount;
10943
const float* pCoverageModulationTable;
10944
} VkPipelineCoverageModulationStateCreateInfoNV;
10948
#define VK_NV_fill_rectangle 1
10949
#define VK_NV_FILL_RECTANGLE_SPEC_VERSION 1
10950
#define VK_NV_FILL_RECTANGLE_EXTENSION_NAME "VK_NV_fill_rectangle"
10953
#define VK_NV_shader_sm_builtins 1
10954
#define VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION 1
10955
#define VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME "VK_NV_shader_sm_builtins"
10956
typedef struct VkPhysicalDeviceShaderSMBuiltinsPropertiesNV {
10957
VkStructureType sType;
10959
uint32_t shaderSMCount;
10960
uint32_t shaderWarpsPerSM;
10961
} VkPhysicalDeviceShaderSMBuiltinsPropertiesNV;
10963
typedef struct VkPhysicalDeviceShaderSMBuiltinsFeaturesNV {
10964
VkStructureType sType;
10966
VkBool32 shaderSMBuiltins;
10967
} VkPhysicalDeviceShaderSMBuiltinsFeaturesNV;
10971
#define VK_EXT_post_depth_coverage 1
10972
#define VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION 1
10973
#define VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME "VK_EXT_post_depth_coverage"
10976
#define VK_EXT_image_drm_format_modifier 1
10977
#define VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION 2
10978
#define VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME "VK_EXT_image_drm_format_modifier"
10979
typedef struct VkDrmFormatModifierPropertiesEXT {
10980
uint64_t drmFormatModifier;
10981
uint32_t drmFormatModifierPlaneCount;
10982
VkFormatFeatureFlags drmFormatModifierTilingFeatures;
10983
} VkDrmFormatModifierPropertiesEXT;
10985
typedef struct VkDrmFormatModifierPropertiesListEXT {
10986
VkStructureType sType;
10988
uint32_t drmFormatModifierCount;
10989
VkDrmFormatModifierPropertiesEXT* pDrmFormatModifierProperties;
10990
} VkDrmFormatModifierPropertiesListEXT;
10992
typedef struct VkPhysicalDeviceImageDrmFormatModifierInfoEXT {
10993
VkStructureType sType;
10995
uint64_t drmFormatModifier;
10996
VkSharingMode sharingMode;
10997
uint32_t queueFamilyIndexCount;
10998
const uint32_t* pQueueFamilyIndices;
10999
} VkPhysicalDeviceImageDrmFormatModifierInfoEXT;
11001
typedef struct VkImageDrmFormatModifierListCreateInfoEXT {
11002
VkStructureType sType;
11004
uint32_t drmFormatModifierCount;
11005
const uint64_t* pDrmFormatModifiers;
11006
} VkImageDrmFormatModifierListCreateInfoEXT;
11008
typedef struct VkImageDrmFormatModifierExplicitCreateInfoEXT {
11009
VkStructureType sType;
11011
uint64_t drmFormatModifier;
11012
uint32_t drmFormatModifierPlaneCount;
11013
const VkSubresourceLayout* pPlaneLayouts;
11014
} VkImageDrmFormatModifierExplicitCreateInfoEXT;
11016
typedef struct VkImageDrmFormatModifierPropertiesEXT {
11017
VkStructureType sType;
11019
uint64_t drmFormatModifier;
11020
} VkImageDrmFormatModifierPropertiesEXT;
11022
typedef struct VkDrmFormatModifierProperties2EXT {
11023
uint64_t drmFormatModifier;
11024
uint32_t drmFormatModifierPlaneCount;
11025
VkFormatFeatureFlags2 drmFormatModifierTilingFeatures;
11026
} VkDrmFormatModifierProperties2EXT;
11028
typedef struct VkDrmFormatModifierPropertiesList2EXT {
11029
VkStructureType sType;
11031
uint32_t drmFormatModifierCount;
11032
VkDrmFormatModifierProperties2EXT* pDrmFormatModifierProperties;
11033
} VkDrmFormatModifierPropertiesList2EXT;
11035
typedef VkResult (VKAPI_PTR *PFN_vkGetImageDrmFormatModifierPropertiesEXT)(VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT* pProperties);
11037
#ifndef VK_NO_PROTOTYPES
11038
VKAPI_ATTR VkResult VKAPI_CALL vkGetImageDrmFormatModifierPropertiesEXT(
11041
VkImageDrmFormatModifierPropertiesEXT* pProperties);
11045
#define VK_EXT_validation_cache 1
11046
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkValidationCacheEXT)
11047
#define VK_EXT_VALIDATION_CACHE_SPEC_VERSION 1
11048
#define VK_EXT_VALIDATION_CACHE_EXTENSION_NAME "VK_EXT_validation_cache"
11050
typedef enum VkValidationCacheHeaderVersionEXT {
11051
VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT = 1,
11052
VK_VALIDATION_CACHE_HEADER_VERSION_MAX_ENUM_EXT = 0x7FFFFFFF
11053
} VkValidationCacheHeaderVersionEXT;
11054
typedef VkFlags VkValidationCacheCreateFlagsEXT;
11055
typedef struct VkValidationCacheCreateInfoEXT {
11056
VkStructureType sType;
11058
VkValidationCacheCreateFlagsEXT flags;
11059
size_t initialDataSize;
11060
const void* pInitialData;
11061
} VkValidationCacheCreateInfoEXT;
11063
typedef struct VkShaderModuleValidationCacheCreateInfoEXT {
11064
VkStructureType sType;
11066
VkValidationCacheEXT validationCache;
11067
} VkShaderModuleValidationCacheCreateInfoEXT;
11069
typedef VkResult (VKAPI_PTR *PFN_vkCreateValidationCacheEXT)(VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkValidationCacheEXT* pValidationCache);
11070
typedef void (VKAPI_PTR *PFN_vkDestroyValidationCacheEXT)(VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator);
11071
typedef VkResult (VKAPI_PTR *PFN_vkMergeValidationCachesEXT)(VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const VkValidationCacheEXT* pSrcCaches);
11072
typedef VkResult (VKAPI_PTR *PFN_vkGetValidationCacheDataEXT)(VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData);
11074
#ifndef VK_NO_PROTOTYPES
11075
VKAPI_ATTR VkResult VKAPI_CALL vkCreateValidationCacheEXT(
11077
const VkValidationCacheCreateInfoEXT* pCreateInfo,
11078
const VkAllocationCallbacks* pAllocator,
11079
VkValidationCacheEXT* pValidationCache);
11081
VKAPI_ATTR void VKAPI_CALL vkDestroyValidationCacheEXT(
11083
VkValidationCacheEXT validationCache,
11084
const VkAllocationCallbacks* pAllocator);
11086
VKAPI_ATTR VkResult VKAPI_CALL vkMergeValidationCachesEXT(
11088
VkValidationCacheEXT dstCache,
11089
uint32_t srcCacheCount,
11090
const VkValidationCacheEXT* pSrcCaches);
11092
VKAPI_ATTR VkResult VKAPI_CALL vkGetValidationCacheDataEXT(
11094
VkValidationCacheEXT validationCache,
11100
#define VK_EXT_descriptor_indexing 1
11101
#define VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION 2
11102
#define VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME "VK_EXT_descriptor_indexing"
11103
typedef VkDescriptorBindingFlagBits VkDescriptorBindingFlagBitsEXT;
11105
typedef VkDescriptorBindingFlags VkDescriptorBindingFlagsEXT;
11107
typedef VkDescriptorSetLayoutBindingFlagsCreateInfo VkDescriptorSetLayoutBindingFlagsCreateInfoEXT;
11109
typedef VkPhysicalDeviceDescriptorIndexingFeatures VkPhysicalDeviceDescriptorIndexingFeaturesEXT;
11111
typedef VkPhysicalDeviceDescriptorIndexingProperties VkPhysicalDeviceDescriptorIndexingPropertiesEXT;
11113
typedef VkDescriptorSetVariableDescriptorCountAllocateInfo VkDescriptorSetVariableDescriptorCountAllocateInfoEXT;
11115
typedef VkDescriptorSetVariableDescriptorCountLayoutSupport VkDescriptorSetVariableDescriptorCountLayoutSupportEXT;
11119
#define VK_EXT_shader_viewport_index_layer 1
11120
#define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION 1
11121
#define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME "VK_EXT_shader_viewport_index_layer"
11124
#define VK_NV_shading_rate_image 1
11125
#define VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION 3
11126
#define VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME "VK_NV_shading_rate_image"
11128
typedef enum VkShadingRatePaletteEntryNV {
11129
VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV = 0,
11130
VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV = 1,
11131
VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV = 2,
11132
VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV = 3,
11133
VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV = 4,
11134
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV = 5,
11135
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV = 6,
11136
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV = 7,
11137
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV = 8,
11138
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV = 9,
11139
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV = 10,
11140
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV = 11,
11141
VK_SHADING_RATE_PALETTE_ENTRY_MAX_ENUM_NV = 0x7FFFFFFF
11142
} VkShadingRatePaletteEntryNV;
11144
typedef enum VkCoarseSampleOrderTypeNV {
11145
VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV = 0,
11146
VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV = 1,
11147
VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV = 2,
11148
VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV = 3,
11149
VK_COARSE_SAMPLE_ORDER_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
11150
} VkCoarseSampleOrderTypeNV;
11151
typedef struct VkShadingRatePaletteNV {
11152
uint32_t shadingRatePaletteEntryCount;
11153
const VkShadingRatePaletteEntryNV* pShadingRatePaletteEntries;
11154
} VkShadingRatePaletteNV;
11156
typedef struct VkPipelineViewportShadingRateImageStateCreateInfoNV {
11157
VkStructureType sType;
11159
VkBool32 shadingRateImageEnable;
11160
uint32_t viewportCount;
11161
const VkShadingRatePaletteNV* pShadingRatePalettes;
11162
} VkPipelineViewportShadingRateImageStateCreateInfoNV;
11164
typedef struct VkPhysicalDeviceShadingRateImageFeaturesNV {
11165
VkStructureType sType;
11167
VkBool32 shadingRateImage;
11168
VkBool32 shadingRateCoarseSampleOrder;
11169
} VkPhysicalDeviceShadingRateImageFeaturesNV;
11171
typedef struct VkPhysicalDeviceShadingRateImagePropertiesNV {
11172
VkStructureType sType;
11174
VkExtent2D shadingRateTexelSize;
11175
uint32_t shadingRatePaletteSize;
11176
uint32_t shadingRateMaxCoarseSamples;
11177
} VkPhysicalDeviceShadingRateImagePropertiesNV;
11179
typedef struct VkCoarseSampleLocationNV {
11183
} VkCoarseSampleLocationNV;
11185
typedef struct VkCoarseSampleOrderCustomNV {
11186
VkShadingRatePaletteEntryNV shadingRate;
11187
uint32_t sampleCount;
11188
uint32_t sampleLocationCount;
11189
const VkCoarseSampleLocationNV* pSampleLocations;
11190
} VkCoarseSampleOrderCustomNV;
11192
typedef struct VkPipelineViewportCoarseSampleOrderStateCreateInfoNV {
11193
VkStructureType sType;
11195
VkCoarseSampleOrderTypeNV sampleOrderType;
11196
uint32_t customSampleOrderCount;
11197
const VkCoarseSampleOrderCustomNV* pCustomSampleOrders;
11198
} VkPipelineViewportCoarseSampleOrderStateCreateInfoNV;
11200
typedef void (VKAPI_PTR *PFN_vkCmdBindShadingRateImageNV)(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout);
11201
typedef void (VKAPI_PTR *PFN_vkCmdSetViewportShadingRatePaletteNV)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkShadingRatePaletteNV* pShadingRatePalettes);
11202
typedef void (VKAPI_PTR *PFN_vkCmdSetCoarseSampleOrderNV)(VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);
11204
#ifndef VK_NO_PROTOTYPES
11205
VKAPI_ATTR void VKAPI_CALL vkCmdBindShadingRateImageNV(
11206
VkCommandBuffer commandBuffer,
11207
VkImageView imageView,
11208
VkImageLayout imageLayout);
11210
VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportShadingRatePaletteNV(
11211
VkCommandBuffer commandBuffer,
11212
uint32_t firstViewport,
11213
uint32_t viewportCount,
11214
const VkShadingRatePaletteNV* pShadingRatePalettes);
11216
VKAPI_ATTR void VKAPI_CALL vkCmdSetCoarseSampleOrderNV(
11217
VkCommandBuffer commandBuffer,
11218
VkCoarseSampleOrderTypeNV sampleOrderType,
11219
uint32_t customSampleOrderCount,
11220
const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);
11224
#define VK_NV_ray_tracing 1
11225
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureNV)
11226
#define VK_NV_RAY_TRACING_SPEC_VERSION 3
11227
#define VK_NV_RAY_TRACING_EXTENSION_NAME "VK_NV_ray_tracing"
11228
#define VK_SHADER_UNUSED_KHR (~0U)
11229
#define VK_SHADER_UNUSED_NV VK_SHADER_UNUSED_KHR
11231
typedef enum VkRayTracingShaderGroupTypeKHR {
11232
VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR = 0,
11233
VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR = 1,
11234
VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR = 2,
11235
VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
11236
VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR,
11237
VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR,
11238
VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
11239
} VkRayTracingShaderGroupTypeKHR;
11240
typedef VkRayTracingShaderGroupTypeKHR VkRayTracingShaderGroupTypeNV;
11243
typedef enum VkGeometryTypeKHR {
11244
VK_GEOMETRY_TYPE_TRIANGLES_KHR = 0,
11245
VK_GEOMETRY_TYPE_AABBS_KHR = 1,
11246
VK_GEOMETRY_TYPE_INSTANCES_KHR = 2,
11247
VK_GEOMETRY_TYPE_TRIANGLES_NV = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
11248
VK_GEOMETRY_TYPE_AABBS_NV = VK_GEOMETRY_TYPE_AABBS_KHR,
11249
VK_GEOMETRY_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
11250
} VkGeometryTypeKHR;
11251
typedef VkGeometryTypeKHR VkGeometryTypeNV;
11254
typedef enum VkAccelerationStructureTypeKHR {
11255
VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0,
11256
VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1,
11257
VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR = 2,
11258
VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
11259
VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
11260
VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
11261
} VkAccelerationStructureTypeKHR;
11262
typedef VkAccelerationStructureTypeKHR VkAccelerationStructureTypeNV;
11265
typedef enum VkCopyAccelerationStructureModeKHR {
11266
VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR = 0,
11267
VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR = 1,
11268
VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR = 2,
11269
VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR = 3,
11270
VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
11271
VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,
11272
VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR = 0x7FFFFFFF
11273
} VkCopyAccelerationStructureModeKHR;
11274
typedef VkCopyAccelerationStructureModeKHR VkCopyAccelerationStructureModeNV;
11277
typedef enum VkAccelerationStructureMemoryRequirementsTypeNV {
11278
VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = 0,
11279
VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = 1,
11280
VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = 2,
11281
VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
11282
} VkAccelerationStructureMemoryRequirementsTypeNV;
11284
typedef enum VkGeometryFlagBitsKHR {
11285
VK_GEOMETRY_OPAQUE_BIT_KHR = 0x00000001,
11286
VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR = 0x00000002,
11287
VK_GEOMETRY_OPAQUE_BIT_NV = VK_GEOMETRY_OPAQUE_BIT_KHR,
11288
VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV = VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR,
11289
VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
11290
} VkGeometryFlagBitsKHR;
11291
typedef VkFlags VkGeometryFlagsKHR;
11292
typedef VkGeometryFlagsKHR VkGeometryFlagsNV;
11294
typedef VkGeometryFlagBitsKHR VkGeometryFlagBitsNV;
11297
typedef enum VkGeometryInstanceFlagBitsKHR {
11298
VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR = 0x00000001,
11299
VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR = 0x00000002,
11300
VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 0x00000004,
11301
VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 0x00000008,
11302
VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR = VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR,
11303
VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
11304
VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
11305
VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,
11306
VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,
11307
VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
11308
} VkGeometryInstanceFlagBitsKHR;
11309
typedef VkFlags VkGeometryInstanceFlagsKHR;
11310
typedef VkGeometryInstanceFlagsKHR VkGeometryInstanceFlagsNV;
11312
typedef VkGeometryInstanceFlagBitsKHR VkGeometryInstanceFlagBitsNV;
11315
typedef enum VkBuildAccelerationStructureFlagBitsKHR {
11316
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR = 0x00000001,
11317
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR = 0x00000002,
11318
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 0x00000004,
11319
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,
11320
VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 0x00000010,
11321
VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV = 0x00000020,
11322
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
11323
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
11324
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
11325
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
11326
VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
11327
VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
11328
} VkBuildAccelerationStructureFlagBitsKHR;
11329
typedef VkFlags VkBuildAccelerationStructureFlagsKHR;
11330
typedef VkBuildAccelerationStructureFlagsKHR VkBuildAccelerationStructureFlagsNV;
11332
typedef VkBuildAccelerationStructureFlagBitsKHR VkBuildAccelerationStructureFlagBitsNV;
11334
typedef struct VkRayTracingShaderGroupCreateInfoNV {
11335
VkStructureType sType;
11337
VkRayTracingShaderGroupTypeKHR type;
11338
uint32_t generalShader;
11339
uint32_t closestHitShader;
11340
uint32_t anyHitShader;
11341
uint32_t intersectionShader;
11342
} VkRayTracingShaderGroupCreateInfoNV;
11344
typedef struct VkRayTracingPipelineCreateInfoNV {
11345
VkStructureType sType;
11347
VkPipelineCreateFlags flags;
11348
uint32_t stageCount;
11349
const VkPipelineShaderStageCreateInfo* pStages;
11350
uint32_t groupCount;
11351
const VkRayTracingShaderGroupCreateInfoNV* pGroups;
11352
uint32_t maxRecursionDepth;
11353
VkPipelineLayout layout;
11354
VkPipeline basePipelineHandle;
11355
int32_t basePipelineIndex;
11356
} VkRayTracingPipelineCreateInfoNV;
11358
typedef struct VkGeometryTrianglesNV {
11359
VkStructureType sType;
11361
VkBuffer vertexData;
11362
VkDeviceSize vertexOffset;
11363
uint32_t vertexCount;
11364
VkDeviceSize vertexStride;
11365
VkFormat vertexFormat;
11366
VkBuffer indexData;
11367
VkDeviceSize indexOffset;
11368
uint32_t indexCount;
11369
VkIndexType indexType;
11370
VkBuffer transformData;
11371
VkDeviceSize transformOffset;
11372
} VkGeometryTrianglesNV;
11374
typedef struct VkGeometryAABBNV {
11375
VkStructureType sType;
11380
VkDeviceSize offset;
11381
} VkGeometryAABBNV;
11383
typedef struct VkGeometryDataNV {
11384
VkGeometryTrianglesNV triangles;
11385
VkGeometryAABBNV aabbs;
11386
} VkGeometryDataNV;
11388
typedef struct VkGeometryNV {
11389
VkStructureType sType;
11391
VkGeometryTypeKHR geometryType;
11392
VkGeometryDataNV geometry;
11393
VkGeometryFlagsKHR flags;
11396
typedef struct VkAccelerationStructureInfoNV {
11397
VkStructureType sType;
11399
VkAccelerationStructureTypeNV type;
11400
VkBuildAccelerationStructureFlagsNV flags;
11401
uint32_t instanceCount;
11402
uint32_t geometryCount;
11403
const VkGeometryNV* pGeometries;
11404
} VkAccelerationStructureInfoNV;
11406
typedef struct VkAccelerationStructureCreateInfoNV {
11407
VkStructureType sType;
11409
VkDeviceSize compactedSize;
11410
VkAccelerationStructureInfoNV info;
11411
} VkAccelerationStructureCreateInfoNV;
11413
typedef struct VkBindAccelerationStructureMemoryInfoNV {
11414
VkStructureType sType;
11416
VkAccelerationStructureNV accelerationStructure;
11417
VkDeviceMemory memory;
11418
VkDeviceSize memoryOffset;
11419
uint32_t deviceIndexCount;
11420
const uint32_t* pDeviceIndices;
11421
} VkBindAccelerationStructureMemoryInfoNV;
11423
typedef struct VkWriteDescriptorSetAccelerationStructureNV {
11424
VkStructureType sType;
11426
uint32_t accelerationStructureCount;
11427
const VkAccelerationStructureNV* pAccelerationStructures;
11428
} VkWriteDescriptorSetAccelerationStructureNV;
11430
typedef struct VkAccelerationStructureMemoryRequirementsInfoNV {
11431
VkStructureType sType;
11433
VkAccelerationStructureMemoryRequirementsTypeNV type;
11434
VkAccelerationStructureNV accelerationStructure;
11435
} VkAccelerationStructureMemoryRequirementsInfoNV;
11437
typedef struct VkPhysicalDeviceRayTracingPropertiesNV {
11438
VkStructureType sType;
11440
uint32_t shaderGroupHandleSize;
11441
uint32_t maxRecursionDepth;
11442
uint32_t maxShaderGroupStride;
11443
uint32_t shaderGroupBaseAlignment;
11444
uint64_t maxGeometryCount;
11445
uint64_t maxInstanceCount;
11446
uint64_t maxTriangleCount;
11447
uint32_t maxDescriptorSetAccelerationStructures;
11448
} VkPhysicalDeviceRayTracingPropertiesNV;
11450
typedef struct VkTransformMatrixKHR {
11451
float matrix[3][4];
11452
} VkTransformMatrixKHR;
11454
typedef VkTransformMatrixKHR VkTransformMatrixNV;
11456
typedef struct VkAabbPositionsKHR {
11463
} VkAabbPositionsKHR;
11465
typedef VkAabbPositionsKHR VkAabbPositionsNV;
11467
typedef struct VkAccelerationStructureInstanceKHR {
11468
VkTransformMatrixKHR transform;
11469
uint32_t instanceCustomIndex:24;
11471
uint32_t instanceShaderBindingTableRecordOffset:24;
11472
VkGeometryInstanceFlagsKHR flags:8;
11473
uint64_t accelerationStructureReference;
11474
} VkAccelerationStructureInstanceKHR;
11476
typedef VkAccelerationStructureInstanceKHR VkAccelerationStructureInstanceNV;
11478
typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureNV)(VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure);
11479
typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureNV)(VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator);
11480
typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements);
11481
typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryNV)(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos);
11482
typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset);
11483
typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode);
11484
typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysNV)(VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth);
11485
typedef VkResult (VKAPI_PTR *PFN_vkCreateRayTracingPipelinesNV)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
11486
typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupHandlesKHR)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData);
11487
typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupHandlesNV)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData);
11488
typedef VkResult (VKAPI_PTR *PFN_vkGetAccelerationStructureHandleNV)(VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData);
11489
typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery);
11490
typedef VkResult (VKAPI_PTR *PFN_vkCompileDeferredNV)(VkDevice device, VkPipeline pipeline, uint32_t shader);
11492
#ifndef VK_NO_PROTOTYPES
11493
VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureNV(
11495
const VkAccelerationStructureCreateInfoNV* pCreateInfo,
11496
const VkAllocationCallbacks* pAllocator,
11497
VkAccelerationStructureNV* pAccelerationStructure);
11499
VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureNV(
11501
VkAccelerationStructureNV accelerationStructure,
11502
const VkAllocationCallbacks* pAllocator);
11504
VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsNV(
11506
const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo,
11507
VkMemoryRequirements2KHR* pMemoryRequirements);
11509
VKAPI_ATTR VkResult VKAPI_CALL vkBindAccelerationStructureMemoryNV(
11511
uint32_t bindInfoCount,
11512
const VkBindAccelerationStructureMemoryInfoNV* pBindInfos);
11514
VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureNV(
11515
VkCommandBuffer commandBuffer,
11516
const VkAccelerationStructureInfoNV* pInfo,
11517
VkBuffer instanceData,
11518
VkDeviceSize instanceOffset,
11520
VkAccelerationStructureNV dst,
11521
VkAccelerationStructureNV src,
11523
VkDeviceSize scratchOffset);
11525
VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureNV(
11526
VkCommandBuffer commandBuffer,
11527
VkAccelerationStructureNV dst,
11528
VkAccelerationStructureNV src,
11529
VkCopyAccelerationStructureModeKHR mode);
11531
VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysNV(
11532
VkCommandBuffer commandBuffer,
11533
VkBuffer raygenShaderBindingTableBuffer,
11534
VkDeviceSize raygenShaderBindingOffset,
11535
VkBuffer missShaderBindingTableBuffer,
11536
VkDeviceSize missShaderBindingOffset,
11537
VkDeviceSize missShaderBindingStride,
11538
VkBuffer hitShaderBindingTableBuffer,
11539
VkDeviceSize hitShaderBindingOffset,
11540
VkDeviceSize hitShaderBindingStride,
11541
VkBuffer callableShaderBindingTableBuffer,
11542
VkDeviceSize callableShaderBindingOffset,
11543
VkDeviceSize callableShaderBindingStride,
11548
VKAPI_ATTR VkResult VKAPI_CALL vkCreateRayTracingPipelinesNV(
11550
VkPipelineCache pipelineCache,
11551
uint32_t createInfoCount,
11552
const VkRayTracingPipelineCreateInfoNV* pCreateInfos,
11553
const VkAllocationCallbacks* pAllocator,
11554
VkPipeline* pPipelines);
11556
VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesKHR(
11558
VkPipeline pipeline,
11559
uint32_t firstGroup,
11560
uint32_t groupCount,
11564
VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesNV(
11566
VkPipeline pipeline,
11567
uint32_t firstGroup,
11568
uint32_t groupCount,
11572
VKAPI_ATTR VkResult VKAPI_CALL vkGetAccelerationStructureHandleNV(
11574
VkAccelerationStructureNV accelerationStructure,
11578
VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesNV(
11579
VkCommandBuffer commandBuffer,
11580
uint32_t accelerationStructureCount,
11581
const VkAccelerationStructureNV* pAccelerationStructures,
11582
VkQueryType queryType,
11583
VkQueryPool queryPool,
11584
uint32_t firstQuery);
11586
VKAPI_ATTR VkResult VKAPI_CALL vkCompileDeferredNV(
11588
VkPipeline pipeline,
11593
#define VK_NV_representative_fragment_test 1
11594
#define VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION 2
11595
#define VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME "VK_NV_representative_fragment_test"
11596
typedef struct VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV {
11597
VkStructureType sType;
11599
VkBool32 representativeFragmentTest;
11600
} VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV;
11602
typedef struct VkPipelineRepresentativeFragmentTestStateCreateInfoNV {
11603
VkStructureType sType;
11605
VkBool32 representativeFragmentTestEnable;
11606
} VkPipelineRepresentativeFragmentTestStateCreateInfoNV;
11610
#define VK_EXT_filter_cubic 1
11611
#define VK_EXT_FILTER_CUBIC_SPEC_VERSION 3
11612
#define VK_EXT_FILTER_CUBIC_EXTENSION_NAME "VK_EXT_filter_cubic"
11613
typedef struct VkPhysicalDeviceImageViewImageFormatInfoEXT {
11614
VkStructureType sType;
11616
VkImageViewType imageViewType;
11617
} VkPhysicalDeviceImageViewImageFormatInfoEXT;
11619
typedef struct VkFilterCubicImageViewImageFormatPropertiesEXT {
11620
VkStructureType sType;
11622
VkBool32 filterCubic;
11623
VkBool32 filterCubicMinmax;
11624
} VkFilterCubicImageViewImageFormatPropertiesEXT;
11628
#define VK_QCOM_render_pass_shader_resolve 1
11629
#define VK_QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION 4
11630
#define VK_QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME "VK_QCOM_render_pass_shader_resolve"
11633
#define VK_EXT_global_priority 1
11634
#define VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION 2
11635
#define VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME "VK_EXT_global_priority"
11636
typedef VkQueueGlobalPriorityKHR VkQueueGlobalPriorityEXT;
11638
typedef VkDeviceQueueGlobalPriorityCreateInfoKHR VkDeviceQueueGlobalPriorityCreateInfoEXT;
11642
#define VK_EXT_external_memory_host 1
11643
#define VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION 1
11644
#define VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME "VK_EXT_external_memory_host"
11645
typedef struct VkImportMemoryHostPointerInfoEXT {
11646
VkStructureType sType;
11648
VkExternalMemoryHandleTypeFlagBits handleType;
11649
void* pHostPointer;
11650
} VkImportMemoryHostPointerInfoEXT;
11652
typedef struct VkMemoryHostPointerPropertiesEXT {
11653
VkStructureType sType;
11655
uint32_t memoryTypeBits;
11656
} VkMemoryHostPointerPropertiesEXT;
11658
typedef struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT {
11659
VkStructureType sType;
11661
VkDeviceSize minImportedHostPointerAlignment;
11662
} VkPhysicalDeviceExternalMemoryHostPropertiesEXT;
11664
typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryHostPointerPropertiesEXT)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);
11666
#ifndef VK_NO_PROTOTYPES
11667
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryHostPointerPropertiesEXT(
11669
VkExternalMemoryHandleTypeFlagBits handleType,
11670
const void* pHostPointer,
11671
VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);
11675
#define VK_AMD_buffer_marker 1
11676
#define VK_AMD_BUFFER_MARKER_SPEC_VERSION 1
11677
#define VK_AMD_BUFFER_MARKER_EXTENSION_NAME "VK_AMD_buffer_marker"
11678
typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarkerAMD)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker);
11680
#ifndef VK_NO_PROTOTYPES
11681
VKAPI_ATTR void VKAPI_CALL vkCmdWriteBufferMarkerAMD(
11682
VkCommandBuffer commandBuffer,
11683
VkPipelineStageFlagBits pipelineStage,
11684
VkBuffer dstBuffer,
11685
VkDeviceSize dstOffset,
11690
#define VK_AMD_pipeline_compiler_control 1
11691
#define VK_AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION 1
11692
#define VK_AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME "VK_AMD_pipeline_compiler_control"
11694
typedef enum VkPipelineCompilerControlFlagBitsAMD {
11695
VK_PIPELINE_COMPILER_CONTROL_FLAG_BITS_MAX_ENUM_AMD = 0x7FFFFFFF
11696
} VkPipelineCompilerControlFlagBitsAMD;
11697
typedef VkFlags VkPipelineCompilerControlFlagsAMD;
11698
typedef struct VkPipelineCompilerControlCreateInfoAMD {
11699
VkStructureType sType;
11701
VkPipelineCompilerControlFlagsAMD compilerControlFlags;
11702
} VkPipelineCompilerControlCreateInfoAMD;
11706
#define VK_EXT_calibrated_timestamps 1
11707
#define VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION 2
11708
#define VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME "VK_EXT_calibrated_timestamps"
11710
typedef enum VkTimeDomainEXT {
11711
VK_TIME_DOMAIN_DEVICE_EXT = 0,
11712
VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT = 1,
11713
VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT = 2,
11714
VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT = 3,
11715
VK_TIME_DOMAIN_MAX_ENUM_EXT = 0x7FFFFFFF
11717
typedef struct VkCalibratedTimestampInfoEXT {
11718
VkStructureType sType;
11720
VkTimeDomainEXT timeDomain;
11721
} VkCalibratedTimestampInfoEXT;
11723
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)(VkPhysicalDevice physicalDevice, uint32_t* pTimeDomainCount, VkTimeDomainEXT* pTimeDomains);
11724
typedef VkResult (VKAPI_PTR *PFN_vkGetCalibratedTimestampsEXT)(VkDevice device, uint32_t timestampCount, const VkCalibratedTimestampInfoEXT* pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation);
11726
#ifndef VK_NO_PROTOTYPES
11727
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
11728
VkPhysicalDevice physicalDevice,
11729
uint32_t* pTimeDomainCount,
11730
VkTimeDomainEXT* pTimeDomains);
11732
VKAPI_ATTR VkResult VKAPI_CALL vkGetCalibratedTimestampsEXT(
11734
uint32_t timestampCount,
11735
const VkCalibratedTimestampInfoEXT* pTimestampInfos,
11736
uint64_t* pTimestamps,
11737
uint64_t* pMaxDeviation);
11741
#define VK_AMD_shader_core_properties 1
11742
#define VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION 2
11743
#define VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME "VK_AMD_shader_core_properties"
11744
typedef struct VkPhysicalDeviceShaderCorePropertiesAMD {
11745
VkStructureType sType;
11747
uint32_t shaderEngineCount;
11748
uint32_t shaderArraysPerEngineCount;
11749
uint32_t computeUnitsPerShaderArray;
11750
uint32_t simdPerComputeUnit;
11751
uint32_t wavefrontsPerSimd;
11752
uint32_t wavefrontSize;
11753
uint32_t sgprsPerSimd;
11754
uint32_t minSgprAllocation;
11755
uint32_t maxSgprAllocation;
11756
uint32_t sgprAllocationGranularity;
11757
uint32_t vgprsPerSimd;
11758
uint32_t minVgprAllocation;
11759
uint32_t maxVgprAllocation;
11760
uint32_t vgprAllocationGranularity;
11761
} VkPhysicalDeviceShaderCorePropertiesAMD;
11765
#define VK_AMD_memory_overallocation_behavior 1
11766
#define VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION 1
11767
#define VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME "VK_AMD_memory_overallocation_behavior"
11769
typedef enum VkMemoryOverallocationBehaviorAMD {
11770
VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD = 0,
11771
VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD = 1,
11772
VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD = 2,
11773
VK_MEMORY_OVERALLOCATION_BEHAVIOR_MAX_ENUM_AMD = 0x7FFFFFFF
11774
} VkMemoryOverallocationBehaviorAMD;
11775
typedef struct VkDeviceMemoryOverallocationCreateInfoAMD {
11776
VkStructureType sType;
11778
VkMemoryOverallocationBehaviorAMD overallocationBehavior;
11779
} VkDeviceMemoryOverallocationCreateInfoAMD;
11783
#define VK_EXT_vertex_attribute_divisor 1
11784
#define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION 3
11785
#define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME "VK_EXT_vertex_attribute_divisor"
11786
typedef struct VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT {
11787
VkStructureType sType;
11789
uint32_t maxVertexAttribDivisor;
11790
} VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT;
11792
typedef struct VkVertexInputBindingDivisorDescriptionEXT {
11795
} VkVertexInputBindingDivisorDescriptionEXT;
11797
typedef struct VkPipelineVertexInputDivisorStateCreateInfoEXT {
11798
VkStructureType sType;
11800
uint32_t vertexBindingDivisorCount;
11801
const VkVertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors;
11802
} VkPipelineVertexInputDivisorStateCreateInfoEXT;
11804
typedef struct VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT {
11805
VkStructureType sType;
11807
VkBool32 vertexAttributeInstanceRateDivisor;
11808
VkBool32 vertexAttributeInstanceRateZeroDivisor;
11809
} VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT;
11813
#define VK_EXT_pipeline_creation_feedback 1
11814
#define VK_EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION 1
11815
#define VK_EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME "VK_EXT_pipeline_creation_feedback"
11816
typedef VkPipelineCreationFeedbackFlagBits VkPipelineCreationFeedbackFlagBitsEXT;
11818
typedef VkPipelineCreationFeedbackFlags VkPipelineCreationFeedbackFlagsEXT;
11820
typedef VkPipelineCreationFeedbackCreateInfo VkPipelineCreationFeedbackCreateInfoEXT;
11822
typedef VkPipelineCreationFeedback VkPipelineCreationFeedbackEXT;
11826
#define VK_NV_shader_subgroup_partitioned 1
11827
#define VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION 1
11828
#define VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME "VK_NV_shader_subgroup_partitioned"
11831
#define VK_NV_compute_shader_derivatives 1
11832
#define VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION 1
11833
#define VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME "VK_NV_compute_shader_derivatives"
11834
typedef struct VkPhysicalDeviceComputeShaderDerivativesFeaturesNV {
11835
VkStructureType sType;
11837
VkBool32 computeDerivativeGroupQuads;
11838
VkBool32 computeDerivativeGroupLinear;
11839
} VkPhysicalDeviceComputeShaderDerivativesFeaturesNV;
11843
#define VK_NV_mesh_shader 1
11844
#define VK_NV_MESH_SHADER_SPEC_VERSION 1
11845
#define VK_NV_MESH_SHADER_EXTENSION_NAME "VK_NV_mesh_shader"
11846
typedef struct VkPhysicalDeviceMeshShaderFeaturesNV {
11847
VkStructureType sType;
11849
VkBool32 taskShader;
11850
VkBool32 meshShader;
11851
} VkPhysicalDeviceMeshShaderFeaturesNV;
11853
typedef struct VkPhysicalDeviceMeshShaderPropertiesNV {
11854
VkStructureType sType;
11856
uint32_t maxDrawMeshTasksCount;
11857
uint32_t maxTaskWorkGroupInvocations;
11858
uint32_t maxTaskWorkGroupSize[3];
11859
uint32_t maxTaskTotalMemorySize;
11860
uint32_t maxTaskOutputCount;
11861
uint32_t maxMeshWorkGroupInvocations;
11862
uint32_t maxMeshWorkGroupSize[3];
11863
uint32_t maxMeshTotalMemorySize;
11864
uint32_t maxMeshOutputVertices;
11865
uint32_t maxMeshOutputPrimitives;
11866
uint32_t maxMeshMultiviewViewCount;
11867
uint32_t meshOutputPerVertexGranularity;
11868
uint32_t meshOutputPerPrimitiveGranularity;
11869
} VkPhysicalDeviceMeshShaderPropertiesNV;
11871
typedef struct VkDrawMeshTasksIndirectCommandNV {
11872
uint32_t taskCount;
11873
uint32_t firstTask;
11874
} VkDrawMeshTasksIndirectCommandNV;
11876
typedef void (VKAPI_PTR *PFN_vkCmdDrawMeshTasksNV)(VkCommandBuffer commandBuffer, uint32_t taskCount, uint32_t firstTask);
11877
typedef void (VKAPI_PTR *PFN_vkCmdDrawMeshTasksIndirectNV)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
11878
typedef void (VKAPI_PTR *PFN_vkCmdDrawMeshTasksIndirectCountNV)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
11880
#ifndef VK_NO_PROTOTYPES
11881
VKAPI_ATTR void VKAPI_CALL vkCmdDrawMeshTasksNV(
11882
VkCommandBuffer commandBuffer,
11883
uint32_t taskCount,
11884
uint32_t firstTask);
11886
VKAPI_ATTR void VKAPI_CALL vkCmdDrawMeshTasksIndirectNV(
11887
VkCommandBuffer commandBuffer,
11889
VkDeviceSize offset,
11890
uint32_t drawCount,
11893
VKAPI_ATTR void VKAPI_CALL vkCmdDrawMeshTasksIndirectCountNV(
11894
VkCommandBuffer commandBuffer,
11896
VkDeviceSize offset,
11897
VkBuffer countBuffer,
11898
VkDeviceSize countBufferOffset,
11899
uint32_t maxDrawCount,
11904
#define VK_NV_fragment_shader_barycentric 1
11905
#define VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION 1
11906
#define VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME "VK_NV_fragment_shader_barycentric"
11907
typedef struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV {
11908
VkStructureType sType;
11910
VkBool32 fragmentShaderBarycentric;
11911
} VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV;
11915
#define VK_NV_shader_image_footprint 1
11916
#define VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION 2
11917
#define VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME "VK_NV_shader_image_footprint"
11918
typedef struct VkPhysicalDeviceShaderImageFootprintFeaturesNV {
11919
VkStructureType sType;
11921
VkBool32 imageFootprint;
11922
} VkPhysicalDeviceShaderImageFootprintFeaturesNV;
11926
#define VK_NV_scissor_exclusive 1
11927
#define VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION 1
11928
#define VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME "VK_NV_scissor_exclusive"
11929
typedef struct VkPipelineViewportExclusiveScissorStateCreateInfoNV {
11930
VkStructureType sType;
11932
uint32_t exclusiveScissorCount;
11933
const VkRect2D* pExclusiveScissors;
11934
} VkPipelineViewportExclusiveScissorStateCreateInfoNV;
11936
typedef struct VkPhysicalDeviceExclusiveScissorFeaturesNV {
11937
VkStructureType sType;
11939
VkBool32 exclusiveScissor;
11940
} VkPhysicalDeviceExclusiveScissorFeaturesNV;
11942
typedef void (VKAPI_PTR *PFN_vkCmdSetExclusiveScissorNV)(VkCommandBuffer commandBuffer, uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const VkRect2D* pExclusiveScissors);
11944
#ifndef VK_NO_PROTOTYPES
11945
VKAPI_ATTR void VKAPI_CALL vkCmdSetExclusiveScissorNV(
11946
VkCommandBuffer commandBuffer,
11947
uint32_t firstExclusiveScissor,
11948
uint32_t exclusiveScissorCount,
11949
const VkRect2D* pExclusiveScissors);
11953
#define VK_NV_device_diagnostic_checkpoints 1
11954
#define VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION 2
11955
#define VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME "VK_NV_device_diagnostic_checkpoints"
11956
typedef struct VkQueueFamilyCheckpointPropertiesNV {
11957
VkStructureType sType;
11959
VkPipelineStageFlags checkpointExecutionStageMask;
11960
} VkQueueFamilyCheckpointPropertiesNV;
11962
typedef struct VkCheckpointDataNV {
11963
VkStructureType sType;
11965
VkPipelineStageFlagBits stage;
11966
void* pCheckpointMarker;
11967
} VkCheckpointDataNV;
11969
typedef void (VKAPI_PTR *PFN_vkCmdSetCheckpointNV)(VkCommandBuffer commandBuffer, const void* pCheckpointMarker);
11970
typedef void (VKAPI_PTR *PFN_vkGetQueueCheckpointDataNV)(VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointDataNV* pCheckpointData);
11972
#ifndef VK_NO_PROTOTYPES
11973
VKAPI_ATTR void VKAPI_CALL vkCmdSetCheckpointNV(
11974
VkCommandBuffer commandBuffer,
11975
const void* pCheckpointMarker);
11977
VKAPI_ATTR void VKAPI_CALL vkGetQueueCheckpointDataNV(
11979
uint32_t* pCheckpointDataCount,
11980
VkCheckpointDataNV* pCheckpointData);
11984
#define VK_INTEL_shader_integer_functions2 1
11985
#define VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION 1
11986
#define VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME "VK_INTEL_shader_integer_functions2"
11987
typedef struct VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL {
11988
VkStructureType sType;
11990
VkBool32 shaderIntegerFunctions2;
11991
} VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
11995
#define VK_INTEL_performance_query 1
11996
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPerformanceConfigurationINTEL)
11997
#define VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION 2
11998
#define VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME "VK_INTEL_performance_query"
12000
typedef enum VkPerformanceConfigurationTypeINTEL {
12001
VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL = 0,
12002
VK_PERFORMANCE_CONFIGURATION_TYPE_MAX_ENUM_INTEL = 0x7FFFFFFF
12003
} VkPerformanceConfigurationTypeINTEL;
12005
typedef enum VkQueryPoolSamplingModeINTEL {
12006
VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL = 0,
12007
VK_QUERY_POOL_SAMPLING_MODE_MAX_ENUM_INTEL = 0x7FFFFFFF
12008
} VkQueryPoolSamplingModeINTEL;
12010
typedef enum VkPerformanceOverrideTypeINTEL {
12011
VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL = 0,
12012
VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL = 1,
12013
VK_PERFORMANCE_OVERRIDE_TYPE_MAX_ENUM_INTEL = 0x7FFFFFFF
12014
} VkPerformanceOverrideTypeINTEL;
12016
typedef enum VkPerformanceParameterTypeINTEL {
12017
VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL = 0,
12018
VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL = 1,
12019
VK_PERFORMANCE_PARAMETER_TYPE_MAX_ENUM_INTEL = 0x7FFFFFFF
12020
} VkPerformanceParameterTypeINTEL;
12022
typedef enum VkPerformanceValueTypeINTEL {
12023
VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL = 0,
12024
VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL = 1,
12025
VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL = 2,
12026
VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL = 3,
12027
VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL = 4,
12028
VK_PERFORMANCE_VALUE_TYPE_MAX_ENUM_INTEL = 0x7FFFFFFF
12029
} VkPerformanceValueTypeINTEL;
12030
typedef union VkPerformanceValueDataINTEL {
12034
VkBool32 valueBool;
12035
const char* valueString;
12036
} VkPerformanceValueDataINTEL;
12038
typedef struct VkPerformanceValueINTEL {
12039
VkPerformanceValueTypeINTEL type;
12040
VkPerformanceValueDataINTEL data;
12041
} VkPerformanceValueINTEL;
12043
typedef struct VkInitializePerformanceApiInfoINTEL {
12044
VkStructureType sType;
12047
} VkInitializePerformanceApiInfoINTEL;
12049
typedef struct VkQueryPoolPerformanceQueryCreateInfoINTEL {
12050
VkStructureType sType;
12052
VkQueryPoolSamplingModeINTEL performanceCountersSampling;
12053
} VkQueryPoolPerformanceQueryCreateInfoINTEL;
12055
typedef VkQueryPoolPerformanceQueryCreateInfoINTEL VkQueryPoolCreateInfoINTEL;
12057
typedef struct VkPerformanceMarkerInfoINTEL {
12058
VkStructureType sType;
12061
} VkPerformanceMarkerInfoINTEL;
12063
typedef struct VkPerformanceStreamMarkerInfoINTEL {
12064
VkStructureType sType;
12067
} VkPerformanceStreamMarkerInfoINTEL;
12069
typedef struct VkPerformanceOverrideInfoINTEL {
12070
VkStructureType sType;
12072
VkPerformanceOverrideTypeINTEL type;
12074
uint64_t parameter;
12075
} VkPerformanceOverrideInfoINTEL;
12077
typedef struct VkPerformanceConfigurationAcquireInfoINTEL {
12078
VkStructureType sType;
12080
VkPerformanceConfigurationTypeINTEL type;
12081
} VkPerformanceConfigurationAcquireInfoINTEL;
12083
typedef VkResult (VKAPI_PTR *PFN_vkInitializePerformanceApiINTEL)(VkDevice device, const VkInitializePerformanceApiInfoINTEL* pInitializeInfo);
12084
typedef void (VKAPI_PTR *PFN_vkUninitializePerformanceApiINTEL)(VkDevice device);
12085
typedef VkResult (VKAPI_PTR *PFN_vkCmdSetPerformanceMarkerINTEL)(VkCommandBuffer commandBuffer, const VkPerformanceMarkerInfoINTEL* pMarkerInfo);
12086
typedef VkResult (VKAPI_PTR *PFN_vkCmdSetPerformanceStreamMarkerINTEL)(VkCommandBuffer commandBuffer, const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo);
12087
typedef VkResult (VKAPI_PTR *PFN_vkCmdSetPerformanceOverrideINTEL)(VkCommandBuffer commandBuffer, const VkPerformanceOverrideInfoINTEL* pOverrideInfo);
12088
typedef VkResult (VKAPI_PTR *PFN_vkAcquirePerformanceConfigurationINTEL)(VkDevice device, const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo, VkPerformanceConfigurationINTEL* pConfiguration);
12089
typedef VkResult (VKAPI_PTR *PFN_vkReleasePerformanceConfigurationINTEL)(VkDevice device, VkPerformanceConfigurationINTEL configuration);
12090
typedef VkResult (VKAPI_PTR *PFN_vkQueueSetPerformanceConfigurationINTEL)(VkQueue queue, VkPerformanceConfigurationINTEL configuration);
12091
typedef VkResult (VKAPI_PTR *PFN_vkGetPerformanceParameterINTEL)(VkDevice device, VkPerformanceParameterTypeINTEL parameter, VkPerformanceValueINTEL* pValue);
12093
#ifndef VK_NO_PROTOTYPES
12094
VKAPI_ATTR VkResult VKAPI_CALL vkInitializePerformanceApiINTEL(
12096
const VkInitializePerformanceApiInfoINTEL* pInitializeInfo);
12098
VKAPI_ATTR void VKAPI_CALL vkUninitializePerformanceApiINTEL(
12101
VKAPI_ATTR VkResult VKAPI_CALL vkCmdSetPerformanceMarkerINTEL(
12102
VkCommandBuffer commandBuffer,
12103
const VkPerformanceMarkerInfoINTEL* pMarkerInfo);
12105
VKAPI_ATTR VkResult VKAPI_CALL vkCmdSetPerformanceStreamMarkerINTEL(
12106
VkCommandBuffer commandBuffer,
12107
const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo);
12109
VKAPI_ATTR VkResult VKAPI_CALL vkCmdSetPerformanceOverrideINTEL(
12110
VkCommandBuffer commandBuffer,
12111
const VkPerformanceOverrideInfoINTEL* pOverrideInfo);
12113
VKAPI_ATTR VkResult VKAPI_CALL vkAcquirePerformanceConfigurationINTEL(
12115
const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo,
12116
VkPerformanceConfigurationINTEL* pConfiguration);
12118
VKAPI_ATTR VkResult VKAPI_CALL vkReleasePerformanceConfigurationINTEL(
12120
VkPerformanceConfigurationINTEL configuration);
12122
VKAPI_ATTR VkResult VKAPI_CALL vkQueueSetPerformanceConfigurationINTEL(
12124
VkPerformanceConfigurationINTEL configuration);
12126
VKAPI_ATTR VkResult VKAPI_CALL vkGetPerformanceParameterINTEL(
12128
VkPerformanceParameterTypeINTEL parameter,
12129
VkPerformanceValueINTEL* pValue);
12133
#define VK_EXT_pci_bus_info 1
12134
#define VK_EXT_PCI_BUS_INFO_SPEC_VERSION 2
12135
#define VK_EXT_PCI_BUS_INFO_EXTENSION_NAME "VK_EXT_pci_bus_info"
12136
typedef struct VkPhysicalDevicePCIBusInfoPropertiesEXT {
12137
VkStructureType sType;
12139
uint32_t pciDomain;
12141
uint32_t pciDevice;
12142
uint32_t pciFunction;
12143
} VkPhysicalDevicePCIBusInfoPropertiesEXT;
12147
#define VK_AMD_display_native_hdr 1
12148
#define VK_AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION 1
12149
#define VK_AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME "VK_AMD_display_native_hdr"
12150
typedef struct VkDisplayNativeHdrSurfaceCapabilitiesAMD {
12151
VkStructureType sType;
12153
VkBool32 localDimmingSupport;
12154
} VkDisplayNativeHdrSurfaceCapabilitiesAMD;
12156
typedef struct VkSwapchainDisplayNativeHdrCreateInfoAMD {
12157
VkStructureType sType;
12159
VkBool32 localDimmingEnable;
12160
} VkSwapchainDisplayNativeHdrCreateInfoAMD;
12162
typedef void (VKAPI_PTR *PFN_vkSetLocalDimmingAMD)(VkDevice device, VkSwapchainKHR swapChain, VkBool32 localDimmingEnable);
12164
#ifndef VK_NO_PROTOTYPES
12165
VKAPI_ATTR void VKAPI_CALL vkSetLocalDimmingAMD(
12167
VkSwapchainKHR swapChain,
12168
VkBool32 localDimmingEnable);
12172
#define VK_EXT_fragment_density_map 1
12173
#define VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION 2
12174
#define VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME "VK_EXT_fragment_density_map"
12175
typedef struct VkPhysicalDeviceFragmentDensityMapFeaturesEXT {
12176
VkStructureType sType;
12178
VkBool32 fragmentDensityMap;
12179
VkBool32 fragmentDensityMapDynamic;
12180
VkBool32 fragmentDensityMapNonSubsampledImages;
12181
} VkPhysicalDeviceFragmentDensityMapFeaturesEXT;
12183
typedef struct VkPhysicalDeviceFragmentDensityMapPropertiesEXT {
12184
VkStructureType sType;
12186
VkExtent2D minFragmentDensityTexelSize;
12187
VkExtent2D maxFragmentDensityTexelSize;
12188
VkBool32 fragmentDensityInvocations;
12189
} VkPhysicalDeviceFragmentDensityMapPropertiesEXT;
12191
typedef struct VkRenderPassFragmentDensityMapCreateInfoEXT {
12192
VkStructureType sType;
12194
VkAttachmentReference fragmentDensityMapAttachment;
12195
} VkRenderPassFragmentDensityMapCreateInfoEXT;
12199
#define VK_EXT_scalar_block_layout 1
12200
#define VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION 1
12201
#define VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME "VK_EXT_scalar_block_layout"
12202
typedef VkPhysicalDeviceScalarBlockLayoutFeatures VkPhysicalDeviceScalarBlockLayoutFeaturesEXT;
12206
#define VK_GOOGLE_hlsl_functionality1 1
12207
#define VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION 1
12208
#define VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME "VK_GOOGLE_hlsl_functionality1"
12209
#define VK_GOOGLE_HLSL_FUNCTIONALITY1_SPEC_VERSION VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION
12210
#define VK_GOOGLE_HLSL_FUNCTIONALITY1_EXTENSION_NAME VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME
12213
#define VK_GOOGLE_decorate_string 1
12214
#define VK_GOOGLE_DECORATE_STRING_SPEC_VERSION 1
12215
#define VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME "VK_GOOGLE_decorate_string"
12218
#define VK_EXT_subgroup_size_control 1
12219
#define VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION 2
12220
#define VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME "VK_EXT_subgroup_size_control"
12221
typedef VkPhysicalDeviceSubgroupSizeControlFeatures VkPhysicalDeviceSubgroupSizeControlFeaturesEXT;
12223
typedef VkPhysicalDeviceSubgroupSizeControlProperties VkPhysicalDeviceSubgroupSizeControlPropertiesEXT;
12225
typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
12229
#define VK_AMD_shader_core_properties2 1
12230
#define VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION 1
12231
#define VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME "VK_AMD_shader_core_properties2"
12233
typedef enum VkShaderCorePropertiesFlagBitsAMD {
12234
VK_SHADER_CORE_PROPERTIES_FLAG_BITS_MAX_ENUM_AMD = 0x7FFFFFFF
12235
} VkShaderCorePropertiesFlagBitsAMD;
12236
typedef VkFlags VkShaderCorePropertiesFlagsAMD;
12237
typedef struct VkPhysicalDeviceShaderCoreProperties2AMD {
12238
VkStructureType sType;
12240
VkShaderCorePropertiesFlagsAMD shaderCoreFeatures;
12241
uint32_t activeComputeUnitCount;
12242
} VkPhysicalDeviceShaderCoreProperties2AMD;
12246
#define VK_AMD_device_coherent_memory 1
12247
#define VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION 1
12248
#define VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME "VK_AMD_device_coherent_memory"
12249
typedef struct VkPhysicalDeviceCoherentMemoryFeaturesAMD {
12250
VkStructureType sType;
12252
VkBool32 deviceCoherentMemory;
12253
} VkPhysicalDeviceCoherentMemoryFeaturesAMD;
12257
#define VK_EXT_shader_image_atomic_int64 1
12258
#define VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION 1
12259
#define VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME "VK_EXT_shader_image_atomic_int64"
12260
typedef struct VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT {
12261
VkStructureType sType;
12263
VkBool32 shaderImageInt64Atomics;
12264
VkBool32 sparseImageInt64Atomics;
12265
} VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
12269
#define VK_EXT_memory_budget 1
12270
#define VK_EXT_MEMORY_BUDGET_SPEC_VERSION 1
12271
#define VK_EXT_MEMORY_BUDGET_EXTENSION_NAME "VK_EXT_memory_budget"
12272
typedef struct VkPhysicalDeviceMemoryBudgetPropertiesEXT {
12273
VkStructureType sType;
12275
VkDeviceSize heapBudget[VK_MAX_MEMORY_HEAPS];
12276
VkDeviceSize heapUsage[VK_MAX_MEMORY_HEAPS];
12277
} VkPhysicalDeviceMemoryBudgetPropertiesEXT;
12281
#define VK_EXT_memory_priority 1
12282
#define VK_EXT_MEMORY_PRIORITY_SPEC_VERSION 1
12283
#define VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME "VK_EXT_memory_priority"
12284
typedef struct VkPhysicalDeviceMemoryPriorityFeaturesEXT {
12285
VkStructureType sType;
12287
VkBool32 memoryPriority;
12288
} VkPhysicalDeviceMemoryPriorityFeaturesEXT;
12290
typedef struct VkMemoryPriorityAllocateInfoEXT {
12291
VkStructureType sType;
12294
} VkMemoryPriorityAllocateInfoEXT;
12298
#define VK_NV_dedicated_allocation_image_aliasing 1
12299
#define VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION 1
12300
#define VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME "VK_NV_dedicated_allocation_image_aliasing"
12301
typedef struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV {
12302
VkStructureType sType;
12304
VkBool32 dedicatedAllocationImageAliasing;
12305
} VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
12309
#define VK_EXT_buffer_device_address 1
12310
#define VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION 2
12311
#define VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME "VK_EXT_buffer_device_address"
12312
typedef struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT {
12313
VkStructureType sType;
12315
VkBool32 bufferDeviceAddress;
12316
VkBool32 bufferDeviceAddressCaptureReplay;
12317
VkBool32 bufferDeviceAddressMultiDevice;
12318
} VkPhysicalDeviceBufferDeviceAddressFeaturesEXT;
12320
typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT;
12322
typedef VkBufferDeviceAddressInfo VkBufferDeviceAddressInfoEXT;
12324
typedef struct VkBufferDeviceAddressCreateInfoEXT {
12325
VkStructureType sType;
12327
VkDeviceAddress deviceAddress;
12328
} VkBufferDeviceAddressCreateInfoEXT;
12330
typedef VkDeviceAddress (VKAPI_PTR *PFN_vkGetBufferDeviceAddressEXT)(VkDevice device, const VkBufferDeviceAddressInfo* pInfo);
12332
#ifndef VK_NO_PROTOTYPES
12333
VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetBufferDeviceAddressEXT(
12335
const VkBufferDeviceAddressInfo* pInfo);
12339
#define VK_EXT_tooling_info 1
12340
#define VK_EXT_TOOLING_INFO_SPEC_VERSION 1
12341
#define VK_EXT_TOOLING_INFO_EXTENSION_NAME "VK_EXT_tooling_info"
12342
typedef VkToolPurposeFlagBits VkToolPurposeFlagBitsEXT;
12344
typedef VkToolPurposeFlags VkToolPurposeFlagsEXT;
12346
typedef VkPhysicalDeviceToolProperties VkPhysicalDeviceToolPropertiesEXT;
12348
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceToolPropertiesEXT)(VkPhysicalDevice physicalDevice, uint32_t* pToolCount, VkPhysicalDeviceToolProperties* pToolProperties);
12350
#ifndef VK_NO_PROTOTYPES
12351
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceToolPropertiesEXT(
12352
VkPhysicalDevice physicalDevice,
12353
uint32_t* pToolCount,
12354
VkPhysicalDeviceToolProperties* pToolProperties);
12358
#define VK_EXT_separate_stencil_usage 1
12359
#define VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION 1
12360
#define VK_EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME "VK_EXT_separate_stencil_usage"
12361
typedef VkImageStencilUsageCreateInfo VkImageStencilUsageCreateInfoEXT;
12365
#define VK_EXT_validation_features 1
12366
#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 5
12367
#define VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME "VK_EXT_validation_features"
12369
typedef enum VkValidationFeatureEnableEXT {
12370
VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT = 0,
12371
VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT = 1,
12372
VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT = 2,
12373
VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT = 3,
12374
VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT = 4,
12375
VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT = 0x7FFFFFFF
12376
} VkValidationFeatureEnableEXT;
12378
typedef enum VkValidationFeatureDisableEXT {
12379
VK_VALIDATION_FEATURE_DISABLE_ALL_EXT = 0,
12380
VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT = 1,
12381
VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT = 2,
12382
VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT = 3,
12383
VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = 4,
12384
VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = 5,
12385
VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = 6,
12386
VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT = 7,
12387
VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT = 0x7FFFFFFF
12388
} VkValidationFeatureDisableEXT;
12389
typedef struct VkValidationFeaturesEXT {
12390
VkStructureType sType;
12392
uint32_t enabledValidationFeatureCount;
12393
const VkValidationFeatureEnableEXT* pEnabledValidationFeatures;
12394
uint32_t disabledValidationFeatureCount;
12395
const VkValidationFeatureDisableEXT* pDisabledValidationFeatures;
12396
} VkValidationFeaturesEXT;
12400
#define VK_NV_cooperative_matrix 1
12401
#define VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION 1
12402
#define VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME "VK_NV_cooperative_matrix"
12404
typedef enum VkComponentTypeNV {
12405
VK_COMPONENT_TYPE_FLOAT16_NV = 0,
12406
VK_COMPONENT_TYPE_FLOAT32_NV = 1,
12407
VK_COMPONENT_TYPE_FLOAT64_NV = 2,
12408
VK_COMPONENT_TYPE_SINT8_NV = 3,
12409
VK_COMPONENT_TYPE_SINT16_NV = 4,
12410
VK_COMPONENT_TYPE_SINT32_NV = 5,
12411
VK_COMPONENT_TYPE_SINT64_NV = 6,
12412
VK_COMPONENT_TYPE_UINT8_NV = 7,
12413
VK_COMPONENT_TYPE_UINT16_NV = 8,
12414
VK_COMPONENT_TYPE_UINT32_NV = 9,
12415
VK_COMPONENT_TYPE_UINT64_NV = 10,
12416
VK_COMPONENT_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
12417
} VkComponentTypeNV;
12419
typedef enum VkScopeNV {
12420
VK_SCOPE_DEVICE_NV = 1,
12421
VK_SCOPE_WORKGROUP_NV = 2,
12422
VK_SCOPE_SUBGROUP_NV = 3,
12423
VK_SCOPE_QUEUE_FAMILY_NV = 5,
12424
VK_SCOPE_MAX_ENUM_NV = 0x7FFFFFFF
12426
typedef struct VkCooperativeMatrixPropertiesNV {
12427
VkStructureType sType;
12432
VkComponentTypeNV AType;
12433
VkComponentTypeNV BType;
12434
VkComponentTypeNV CType;
12435
VkComponentTypeNV DType;
12437
} VkCooperativeMatrixPropertiesNV;
12439
typedef struct VkPhysicalDeviceCooperativeMatrixFeaturesNV {
12440
VkStructureType sType;
12442
VkBool32 cooperativeMatrix;
12443
VkBool32 cooperativeMatrixRobustBufferAccess;
12444
} VkPhysicalDeviceCooperativeMatrixFeaturesNV;
12446
typedef struct VkPhysicalDeviceCooperativeMatrixPropertiesNV {
12447
VkStructureType sType;
12449
VkShaderStageFlags cooperativeMatrixSupportedStages;
12450
} VkPhysicalDeviceCooperativeMatrixPropertiesNV;
12452
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkCooperativeMatrixPropertiesNV* pProperties);
12454
#ifndef VK_NO_PROTOTYPES
12455
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
12456
VkPhysicalDevice physicalDevice,
12457
uint32_t* pPropertyCount,
12458
VkCooperativeMatrixPropertiesNV* pProperties);
12462
#define VK_NV_coverage_reduction_mode 1
12463
#define VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION 1
12464
#define VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME "VK_NV_coverage_reduction_mode"
12466
typedef enum VkCoverageReductionModeNV {
12467
VK_COVERAGE_REDUCTION_MODE_MERGE_NV = 0,
12468
VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV = 1,
12469
VK_COVERAGE_REDUCTION_MODE_MAX_ENUM_NV = 0x7FFFFFFF
12470
} VkCoverageReductionModeNV;
12471
typedef VkFlags VkPipelineCoverageReductionStateCreateFlagsNV;
12472
typedef struct VkPhysicalDeviceCoverageReductionModeFeaturesNV {
12473
VkStructureType sType;
12475
VkBool32 coverageReductionMode;
12476
} VkPhysicalDeviceCoverageReductionModeFeaturesNV;
12478
typedef struct VkPipelineCoverageReductionStateCreateInfoNV {
12479
VkStructureType sType;
12481
VkPipelineCoverageReductionStateCreateFlagsNV flags;
12482
VkCoverageReductionModeNV coverageReductionMode;
12483
} VkPipelineCoverageReductionStateCreateInfoNV;
12485
typedef struct VkFramebufferMixedSamplesCombinationNV {
12486
VkStructureType sType;
12488
VkCoverageReductionModeNV coverageReductionMode;
12489
VkSampleCountFlagBits rasterizationSamples;
12490
VkSampleCountFlags depthStencilSamples;
12491
VkSampleCountFlags colorSamples;
12492
} VkFramebufferMixedSamplesCombinationNV;
12494
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)(VkPhysicalDevice physicalDevice, uint32_t* pCombinationCount, VkFramebufferMixedSamplesCombinationNV* pCombinations);
12496
#ifndef VK_NO_PROTOTYPES
12497
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
12498
VkPhysicalDevice physicalDevice,
12499
uint32_t* pCombinationCount,
12500
VkFramebufferMixedSamplesCombinationNV* pCombinations);
12504
#define VK_EXT_fragment_shader_interlock 1
12505
#define VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION 1
12506
#define VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME "VK_EXT_fragment_shader_interlock"
12507
typedef struct VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT {
12508
VkStructureType sType;
12510
VkBool32 fragmentShaderSampleInterlock;
12511
VkBool32 fragmentShaderPixelInterlock;
12512
VkBool32 fragmentShaderShadingRateInterlock;
12513
} VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT;
12517
#define VK_EXT_ycbcr_image_arrays 1
12518
#define VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION 1
12519
#define VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME "VK_EXT_ycbcr_image_arrays"
12520
typedef struct VkPhysicalDeviceYcbcrImageArraysFeaturesEXT {
12521
VkStructureType sType;
12523
VkBool32 ycbcrImageArrays;
12524
} VkPhysicalDeviceYcbcrImageArraysFeaturesEXT;
12528
#define VK_EXT_provoking_vertex 1
12529
#define VK_EXT_PROVOKING_VERTEX_SPEC_VERSION 1
12530
#define VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME "VK_EXT_provoking_vertex"
12532
typedef enum VkProvokingVertexModeEXT {
12533
VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT = 0,
12534
VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT = 1,
12535
VK_PROVOKING_VERTEX_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
12536
} VkProvokingVertexModeEXT;
12537
typedef struct VkPhysicalDeviceProvokingVertexFeaturesEXT {
12538
VkStructureType sType;
12540
VkBool32 provokingVertexLast;
12541
VkBool32 transformFeedbackPreservesProvokingVertex;
12542
} VkPhysicalDeviceProvokingVertexFeaturesEXT;
12544
typedef struct VkPhysicalDeviceProvokingVertexPropertiesEXT {
12545
VkStructureType sType;
12547
VkBool32 provokingVertexModePerPipeline;
12548
VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex;
12549
} VkPhysicalDeviceProvokingVertexPropertiesEXT;
12551
typedef struct VkPipelineRasterizationProvokingVertexStateCreateInfoEXT {
12552
VkStructureType sType;
12554
VkProvokingVertexModeEXT provokingVertexMode;
12555
} VkPipelineRasterizationProvokingVertexStateCreateInfoEXT;
12559
#define VK_EXT_headless_surface 1
12560
#define VK_EXT_HEADLESS_SURFACE_SPEC_VERSION 1
12561
#define VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME "VK_EXT_headless_surface"
12562
typedef VkFlags VkHeadlessSurfaceCreateFlagsEXT;
12563
typedef struct VkHeadlessSurfaceCreateInfoEXT {
12564
VkStructureType sType;
12566
VkHeadlessSurfaceCreateFlagsEXT flags;
12567
} VkHeadlessSurfaceCreateInfoEXT;
12569
typedef VkResult (VKAPI_PTR *PFN_vkCreateHeadlessSurfaceEXT)(VkInstance instance, const VkHeadlessSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
12571
#ifndef VK_NO_PROTOTYPES
12572
VKAPI_ATTR VkResult VKAPI_CALL vkCreateHeadlessSurfaceEXT(
12573
VkInstance instance,
12574
const VkHeadlessSurfaceCreateInfoEXT* pCreateInfo,
12575
const VkAllocationCallbacks* pAllocator,
12576
VkSurfaceKHR* pSurface);
12580
#define VK_EXT_line_rasterization 1
12581
#define VK_EXT_LINE_RASTERIZATION_SPEC_VERSION 1
12582
#define VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME "VK_EXT_line_rasterization"
12584
typedef enum VkLineRasterizationModeEXT {
12585
VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT = 0,
12586
VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT = 1,
12587
VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT = 2,
12588
VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT = 3,
12589
VK_LINE_RASTERIZATION_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
12590
} VkLineRasterizationModeEXT;
12591
typedef struct VkPhysicalDeviceLineRasterizationFeaturesEXT {
12592
VkStructureType sType;
12594
VkBool32 rectangularLines;
12595
VkBool32 bresenhamLines;
12596
VkBool32 smoothLines;
12597
VkBool32 stippledRectangularLines;
12598
VkBool32 stippledBresenhamLines;
12599
VkBool32 stippledSmoothLines;
12600
} VkPhysicalDeviceLineRasterizationFeaturesEXT;
12602
typedef struct VkPhysicalDeviceLineRasterizationPropertiesEXT {
12603
VkStructureType sType;
12605
uint32_t lineSubPixelPrecisionBits;
12606
} VkPhysicalDeviceLineRasterizationPropertiesEXT;
12608
typedef struct VkPipelineRasterizationLineStateCreateInfoEXT {
12609
VkStructureType sType;
12611
VkLineRasterizationModeEXT lineRasterizationMode;
12612
VkBool32 stippledLineEnable;
12613
uint32_t lineStippleFactor;
12614
uint16_t lineStipplePattern;
12615
} VkPipelineRasterizationLineStateCreateInfoEXT;
12617
typedef void (VKAPI_PTR *PFN_vkCmdSetLineStippleEXT)(VkCommandBuffer commandBuffer, uint32_t lineStippleFactor, uint16_t lineStipplePattern);
12619
#ifndef VK_NO_PROTOTYPES
12620
VKAPI_ATTR void VKAPI_CALL vkCmdSetLineStippleEXT(
12621
VkCommandBuffer commandBuffer,
12622
uint32_t lineStippleFactor,
12623
uint16_t lineStipplePattern);
12627
#define VK_EXT_shader_atomic_float 1
12628
#define VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION 1
12629
#define VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME "VK_EXT_shader_atomic_float"
12630
typedef struct VkPhysicalDeviceShaderAtomicFloatFeaturesEXT {
12631
VkStructureType sType;
12633
VkBool32 shaderBufferFloat32Atomics;
12634
VkBool32 shaderBufferFloat32AtomicAdd;
12635
VkBool32 shaderBufferFloat64Atomics;
12636
VkBool32 shaderBufferFloat64AtomicAdd;
12637
VkBool32 shaderSharedFloat32Atomics;
12638
VkBool32 shaderSharedFloat32AtomicAdd;
12639
VkBool32 shaderSharedFloat64Atomics;
12640
VkBool32 shaderSharedFloat64AtomicAdd;
12641
VkBool32 shaderImageFloat32Atomics;
12642
VkBool32 shaderImageFloat32AtomicAdd;
12643
VkBool32 sparseImageFloat32Atomics;
12644
VkBool32 sparseImageFloat32AtomicAdd;
12645
} VkPhysicalDeviceShaderAtomicFloatFeaturesEXT;
12649
#define VK_EXT_host_query_reset 1
12650
#define VK_EXT_HOST_QUERY_RESET_SPEC_VERSION 1
12651
#define VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME "VK_EXT_host_query_reset"
12652
typedef VkPhysicalDeviceHostQueryResetFeatures VkPhysicalDeviceHostQueryResetFeaturesEXT;
12654
typedef void (VKAPI_PTR *PFN_vkResetQueryPoolEXT)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount);
12656
#ifndef VK_NO_PROTOTYPES
12657
VKAPI_ATTR void VKAPI_CALL vkResetQueryPoolEXT(
12659
VkQueryPool queryPool,
12660
uint32_t firstQuery,
12661
uint32_t queryCount);
12665
#define VK_EXT_index_type_uint8 1
12666
#define VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION 1
12667
#define VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME "VK_EXT_index_type_uint8"
12668
typedef struct VkPhysicalDeviceIndexTypeUint8FeaturesEXT {
12669
VkStructureType sType;
12671
VkBool32 indexTypeUint8;
12672
} VkPhysicalDeviceIndexTypeUint8FeaturesEXT;
12676
#define VK_EXT_extended_dynamic_state 1
12677
#define VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION 1
12678
#define VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME "VK_EXT_extended_dynamic_state"
12679
typedef struct VkPhysicalDeviceExtendedDynamicStateFeaturesEXT {
12680
VkStructureType sType;
12682
VkBool32 extendedDynamicState;
12683
} VkPhysicalDeviceExtendedDynamicStateFeaturesEXT;
12685
typedef void (VKAPI_PTR *PFN_vkCmdSetCullModeEXT)(VkCommandBuffer commandBuffer, VkCullModeFlags cullMode);
12686
typedef void (VKAPI_PTR *PFN_vkCmdSetFrontFaceEXT)(VkCommandBuffer commandBuffer, VkFrontFace frontFace);
12687
typedef void (VKAPI_PTR *PFN_vkCmdSetPrimitiveTopologyEXT)(VkCommandBuffer commandBuffer, VkPrimitiveTopology primitiveTopology);
12688
typedef void (VKAPI_PTR *PFN_vkCmdSetViewportWithCountEXT)(VkCommandBuffer commandBuffer, uint32_t viewportCount, const VkViewport* pViewports);
12689
typedef void (VKAPI_PTR *PFN_vkCmdSetScissorWithCountEXT)(VkCommandBuffer commandBuffer, uint32_t scissorCount, const VkRect2D* pScissors);
12690
typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers2EXT)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes, const VkDeviceSize* pStrides);
12691
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthTestEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthTestEnable);
12692
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthWriteEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable);
12693
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthCompareOpEXT)(VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp);
12694
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBoundsTestEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthBoundsTestEnable);
12695
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilTestEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable);
12696
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilOpEXT)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp, VkCompareOp compareOp);
12698
#ifndef VK_NO_PROTOTYPES
12699
VKAPI_ATTR void VKAPI_CALL vkCmdSetCullModeEXT(
12700
VkCommandBuffer commandBuffer,
12701
VkCullModeFlags cullMode);
12703
VKAPI_ATTR void VKAPI_CALL vkCmdSetFrontFaceEXT(
12704
VkCommandBuffer commandBuffer,
12705
VkFrontFace frontFace);
12707
VKAPI_ATTR void VKAPI_CALL vkCmdSetPrimitiveTopologyEXT(
12708
VkCommandBuffer commandBuffer,
12709
VkPrimitiveTopology primitiveTopology);
12711
VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWithCountEXT(
12712
VkCommandBuffer commandBuffer,
12713
uint32_t viewportCount,
12714
const VkViewport* pViewports);
12716
VKAPI_ATTR void VKAPI_CALL vkCmdSetScissorWithCountEXT(
12717
VkCommandBuffer commandBuffer,
12718
uint32_t scissorCount,
12719
const VkRect2D* pScissors);
12721
VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers2EXT(
12722
VkCommandBuffer commandBuffer,
12723
uint32_t firstBinding,
12724
uint32_t bindingCount,
12725
const VkBuffer* pBuffers,
12726
const VkDeviceSize* pOffsets,
12727
const VkDeviceSize* pSizes,
12728
const VkDeviceSize* pStrides);
12730
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthTestEnableEXT(
12731
VkCommandBuffer commandBuffer,
12732
VkBool32 depthTestEnable);
12734
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthWriteEnableEXT(
12735
VkCommandBuffer commandBuffer,
12736
VkBool32 depthWriteEnable);
12738
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthCompareOpEXT(
12739
VkCommandBuffer commandBuffer,
12740
VkCompareOp depthCompareOp);
12742
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBoundsTestEnableEXT(
12743
VkCommandBuffer commandBuffer,
12744
VkBool32 depthBoundsTestEnable);
12746
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilTestEnableEXT(
12747
VkCommandBuffer commandBuffer,
12748
VkBool32 stencilTestEnable);
12750
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilOpEXT(
12751
VkCommandBuffer commandBuffer,
12752
VkStencilFaceFlags faceMask,
12753
VkStencilOp failOp,
12754
VkStencilOp passOp,
12755
VkStencilOp depthFailOp,
12756
VkCompareOp compareOp);
12760
#define VK_EXT_shader_atomic_float2 1
12761
#define VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION 1
12762
#define VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME "VK_EXT_shader_atomic_float2"
12763
typedef struct VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT {
12764
VkStructureType sType;
12766
VkBool32 shaderBufferFloat16Atomics;
12767
VkBool32 shaderBufferFloat16AtomicAdd;
12768
VkBool32 shaderBufferFloat16AtomicMinMax;
12769
VkBool32 shaderBufferFloat32AtomicMinMax;
12770
VkBool32 shaderBufferFloat64AtomicMinMax;
12771
VkBool32 shaderSharedFloat16Atomics;
12772
VkBool32 shaderSharedFloat16AtomicAdd;
12773
VkBool32 shaderSharedFloat16AtomicMinMax;
12774
VkBool32 shaderSharedFloat32AtomicMinMax;
12775
VkBool32 shaderSharedFloat64AtomicMinMax;
12776
VkBool32 shaderImageFloat32AtomicMinMax;
12777
VkBool32 sparseImageFloat32AtomicMinMax;
12778
} VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT;
12782
#define VK_EXT_shader_demote_to_helper_invocation 1
12783
#define VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION 1
12784
#define VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME "VK_EXT_shader_demote_to_helper_invocation"
12785
typedef VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
12789
#define VK_NV_device_generated_commands 1
12790
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNV)
12791
#define VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 3
12792
#define VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NV_device_generated_commands"
12794
typedef enum VkIndirectCommandsTokenTypeNV {
12795
VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV = 0,
12796
VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV = 1,
12797
VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV = 2,
12798
VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV = 3,
12799
VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV = 4,
12800
VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV = 5,
12801
VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV = 6,
12802
VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV = 7,
12803
VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
12804
} VkIndirectCommandsTokenTypeNV;
12806
typedef enum VkIndirectStateFlagBitsNV {
12807
VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV = 0x00000001,
12808
VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
12809
} VkIndirectStateFlagBitsNV;
12810
typedef VkFlags VkIndirectStateFlagsNV;
12812
typedef enum VkIndirectCommandsLayoutUsageFlagBitsNV {
12813
VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV = 0x00000001,
12814
VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV = 0x00000002,
12815
VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV = 0x00000004,
12816
VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
12817
} VkIndirectCommandsLayoutUsageFlagBitsNV;
12818
typedef VkFlags VkIndirectCommandsLayoutUsageFlagsNV;
12819
typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV {
12820
VkStructureType sType;
12822
uint32_t maxGraphicsShaderGroupCount;
12823
uint32_t maxIndirectSequenceCount;
12824
uint32_t maxIndirectCommandsTokenCount;
12825
uint32_t maxIndirectCommandsStreamCount;
12826
uint32_t maxIndirectCommandsTokenOffset;
12827
uint32_t maxIndirectCommandsStreamStride;
12828
uint32_t minSequencesCountBufferOffsetAlignment;
12829
uint32_t minSequencesIndexBufferOffsetAlignment;
12830
uint32_t minIndirectCommandsBufferOffsetAlignment;
12831
} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
12833
typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV {
12834
VkStructureType sType;
12836
VkBool32 deviceGeneratedCommands;
12837
} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
12839
typedef struct VkGraphicsShaderGroupCreateInfoNV {
12840
VkStructureType sType;
12842
uint32_t stageCount;
12843
const VkPipelineShaderStageCreateInfo* pStages;
12844
const VkPipelineVertexInputStateCreateInfo* pVertexInputState;
12845
const VkPipelineTessellationStateCreateInfo* pTessellationState;
12846
} VkGraphicsShaderGroupCreateInfoNV;
12848
typedef struct VkGraphicsPipelineShaderGroupsCreateInfoNV {
12849
VkStructureType sType;
12851
uint32_t groupCount;
12852
const VkGraphicsShaderGroupCreateInfoNV* pGroups;
12853
uint32_t pipelineCount;
12854
const VkPipeline* pPipelines;
12855
} VkGraphicsPipelineShaderGroupsCreateInfoNV;
12857
typedef struct VkBindShaderGroupIndirectCommandNV {
12858
uint32_t groupIndex;
12859
} VkBindShaderGroupIndirectCommandNV;
12861
typedef struct VkBindIndexBufferIndirectCommandNV {
12862
VkDeviceAddress bufferAddress;
12864
VkIndexType indexType;
12865
} VkBindIndexBufferIndirectCommandNV;
12867
typedef struct VkBindVertexBufferIndirectCommandNV {
12868
VkDeviceAddress bufferAddress;
12871
} VkBindVertexBufferIndirectCommandNV;
12873
typedef struct VkSetStateFlagsIndirectCommandNV {
12875
} VkSetStateFlagsIndirectCommandNV;
12877
typedef struct VkIndirectCommandsStreamNV {
12879
VkDeviceSize offset;
12880
} VkIndirectCommandsStreamNV;
12882
typedef struct VkIndirectCommandsLayoutTokenNV {
12883
VkStructureType sType;
12885
VkIndirectCommandsTokenTypeNV tokenType;
12888
uint32_t vertexBindingUnit;
12889
VkBool32 vertexDynamicStride;
12890
VkPipelineLayout pushconstantPipelineLayout;
12891
VkShaderStageFlags pushconstantShaderStageFlags;
12892
uint32_t pushconstantOffset;
12893
uint32_t pushconstantSize;
12894
VkIndirectStateFlagsNV indirectStateFlags;
12895
uint32_t indexTypeCount;
12896
const VkIndexType* pIndexTypes;
12897
const uint32_t* pIndexTypeValues;
12898
} VkIndirectCommandsLayoutTokenNV;
12900
typedef struct VkIndirectCommandsLayoutCreateInfoNV {
12901
VkStructureType sType;
12903
VkIndirectCommandsLayoutUsageFlagsNV flags;
12904
VkPipelineBindPoint pipelineBindPoint;
12905
uint32_t tokenCount;
12906
const VkIndirectCommandsLayoutTokenNV* pTokens;
12907
uint32_t streamCount;
12908
const uint32_t* pStreamStrides;
12909
} VkIndirectCommandsLayoutCreateInfoNV;
12911
typedef struct VkGeneratedCommandsInfoNV {
12912
VkStructureType sType;
12914
VkPipelineBindPoint pipelineBindPoint;
12915
VkPipeline pipeline;
12916
VkIndirectCommandsLayoutNV indirectCommandsLayout;
12917
uint32_t streamCount;
12918
const VkIndirectCommandsStreamNV* pStreams;
12919
uint32_t sequencesCount;
12920
VkBuffer preprocessBuffer;
12921
VkDeviceSize preprocessOffset;
12922
VkDeviceSize preprocessSize;
12923
VkBuffer sequencesCountBuffer;
12924
VkDeviceSize sequencesCountOffset;
12925
VkBuffer sequencesIndexBuffer;
12926
VkDeviceSize sequencesIndexOffset;
12927
} VkGeneratedCommandsInfoNV;
12929
typedef struct VkGeneratedCommandsMemoryRequirementsInfoNV {
12930
VkStructureType sType;
12932
VkPipelineBindPoint pipelineBindPoint;
12933
VkPipeline pipeline;
12934
VkIndirectCommandsLayoutNV indirectCommandsLayout;
12935
uint32_t maxSequencesCount;
12936
} VkGeneratedCommandsMemoryRequirementsInfoNV;
12938
typedef void (VKAPI_PTR *PFN_vkGetGeneratedCommandsMemoryRequirementsNV)(VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements);
12939
typedef void (VKAPI_PTR *PFN_vkCmdPreprocessGeneratedCommandsNV)(VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
12940
typedef void (VKAPI_PTR *PFN_vkCmdExecuteGeneratedCommandsNV)(VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
12941
typedef void (VKAPI_PTR *PFN_vkCmdBindPipelineShaderGroupNV)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex);
12942
typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNV)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout);
12943
typedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNV)(VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);
12945
#ifndef VK_NO_PROTOTYPES
12946
VKAPI_ATTR void VKAPI_CALL vkGetGeneratedCommandsMemoryRequirementsNV(
12948
const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo,
12949
VkMemoryRequirements2* pMemoryRequirements);
12951
VKAPI_ATTR void VKAPI_CALL vkCmdPreprocessGeneratedCommandsNV(
12952
VkCommandBuffer commandBuffer,
12953
const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
12955
VKAPI_ATTR void VKAPI_CALL vkCmdExecuteGeneratedCommandsNV(
12956
VkCommandBuffer commandBuffer,
12957
VkBool32 isPreprocessed,
12958
const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
12960
VKAPI_ATTR void VKAPI_CALL vkCmdBindPipelineShaderGroupNV(
12961
VkCommandBuffer commandBuffer,
12962
VkPipelineBindPoint pipelineBindPoint,
12963
VkPipeline pipeline,
12964
uint32_t groupIndex);
12966
VKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNV(
12968
const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo,
12969
const VkAllocationCallbacks* pAllocator,
12970
VkIndirectCommandsLayoutNV* pIndirectCommandsLayout);
12972
VKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNV(
12974
VkIndirectCommandsLayoutNV indirectCommandsLayout,
12975
const VkAllocationCallbacks* pAllocator);
12979
#define VK_NV_inherited_viewport_scissor 1
12980
#define VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION 1
12981
#define VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME "VK_NV_inherited_viewport_scissor"
12982
typedef struct VkPhysicalDeviceInheritedViewportScissorFeaturesNV {
12983
VkStructureType sType;
12985
VkBool32 inheritedViewportScissor2D;
12986
} VkPhysicalDeviceInheritedViewportScissorFeaturesNV;
12988
typedef struct VkCommandBufferInheritanceViewportScissorInfoNV {
12989
VkStructureType sType;
12991
VkBool32 viewportScissor2D;
12992
uint32_t viewportDepthCount;
12993
const VkViewport* pViewportDepths;
12994
} VkCommandBufferInheritanceViewportScissorInfoNV;
12998
#define VK_EXT_texel_buffer_alignment 1
12999
#define VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION 1
13000
#define VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME "VK_EXT_texel_buffer_alignment"
13001
typedef struct VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT {
13002
VkStructureType sType;
13004
VkBool32 texelBufferAlignment;
13005
} VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT;
13007
typedef VkPhysicalDeviceTexelBufferAlignmentProperties VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT;
13011
#define VK_QCOM_render_pass_transform 1
13012
#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 2
13013
#define VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME "VK_QCOM_render_pass_transform"
13014
typedef struct VkRenderPassTransformBeginInfoQCOM {
13015
VkStructureType sType;
13017
VkSurfaceTransformFlagBitsKHR transform;
13018
} VkRenderPassTransformBeginInfoQCOM;
13020
typedef struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM {
13021
VkStructureType sType;
13023
VkSurfaceTransformFlagBitsKHR transform;
13024
VkRect2D renderArea;
13025
} VkCommandBufferInheritanceRenderPassTransformInfoQCOM;
13029
#define VK_EXT_device_memory_report 1
13030
#define VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION 2
13031
#define VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME "VK_EXT_device_memory_report"
13033
typedef enum VkDeviceMemoryReportEventTypeEXT {
13034
VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT = 0,
13035
VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT = 1,
13036
VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT = 2,
13037
VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT = 3,
13038
VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT = 4,
13039
VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
13040
} VkDeviceMemoryReportEventTypeEXT;
13041
typedef VkFlags VkDeviceMemoryReportFlagsEXT;
13042
typedef struct VkPhysicalDeviceDeviceMemoryReportFeaturesEXT {
13043
VkStructureType sType;
13045
VkBool32 deviceMemoryReport;
13046
} VkPhysicalDeviceDeviceMemoryReportFeaturesEXT;
13048
typedef struct VkDeviceMemoryReportCallbackDataEXT {
13049
VkStructureType sType;
13051
VkDeviceMemoryReportFlagsEXT flags;
13052
VkDeviceMemoryReportEventTypeEXT type;
13053
uint64_t memoryObjectId;
13055
VkObjectType objectType;
13056
uint64_t objectHandle;
13057
uint32_t heapIndex;
13058
} VkDeviceMemoryReportCallbackDataEXT;
13060
typedef void (VKAPI_PTR *PFN_vkDeviceMemoryReportCallbackEXT)(
13061
const VkDeviceMemoryReportCallbackDataEXT* pCallbackData,
13064
typedef struct VkDeviceDeviceMemoryReportCreateInfoEXT {
13065
VkStructureType sType;
13067
VkDeviceMemoryReportFlagsEXT flags;
13068
PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback;
13070
} VkDeviceDeviceMemoryReportCreateInfoEXT;
13074
#define VK_EXT_acquire_drm_display 1
13075
#define VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION 1
13076
#define VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME "VK_EXT_acquire_drm_display"
13077
typedef VkResult (VKAPI_PTR *PFN_vkAcquireDrmDisplayEXT)(VkPhysicalDevice physicalDevice, int32_t drmFd, VkDisplayKHR display);
13078
typedef VkResult (VKAPI_PTR *PFN_vkGetDrmDisplayEXT)(VkPhysicalDevice physicalDevice, int32_t drmFd, uint32_t connectorId, VkDisplayKHR* display);
13080
#ifndef VK_NO_PROTOTYPES
13081
VKAPI_ATTR VkResult VKAPI_CALL vkAcquireDrmDisplayEXT(
13082
VkPhysicalDevice physicalDevice,
13084
VkDisplayKHR display);
13086
VKAPI_ATTR VkResult VKAPI_CALL vkGetDrmDisplayEXT(
13087
VkPhysicalDevice physicalDevice,
13089
uint32_t connectorId,
13090
VkDisplayKHR* display);
13094
#define VK_EXT_robustness2 1
13095
#define VK_EXT_ROBUSTNESS_2_SPEC_VERSION 1
13096
#define VK_EXT_ROBUSTNESS_2_EXTENSION_NAME "VK_EXT_robustness2"
13097
typedef struct VkPhysicalDeviceRobustness2FeaturesEXT {
13098
VkStructureType sType;
13100
VkBool32 robustBufferAccess2;
13101
VkBool32 robustImageAccess2;
13102
VkBool32 nullDescriptor;
13103
} VkPhysicalDeviceRobustness2FeaturesEXT;
13105
typedef struct VkPhysicalDeviceRobustness2PropertiesEXT {
13106
VkStructureType sType;
13108
VkDeviceSize robustStorageBufferAccessSizeAlignment;
13109
VkDeviceSize robustUniformBufferAccessSizeAlignment;
13110
} VkPhysicalDeviceRobustness2PropertiesEXT;
13114
#define VK_EXT_custom_border_color 1
13115
#define VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION 12
13116
#define VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME "VK_EXT_custom_border_color"
13117
typedef struct VkSamplerCustomBorderColorCreateInfoEXT {
13118
VkStructureType sType;
13120
VkClearColorValue customBorderColor;
13122
} VkSamplerCustomBorderColorCreateInfoEXT;
13124
typedef struct VkPhysicalDeviceCustomBorderColorPropertiesEXT {
13125
VkStructureType sType;
13127
uint32_t maxCustomBorderColorSamplers;
13128
} VkPhysicalDeviceCustomBorderColorPropertiesEXT;
13130
typedef struct VkPhysicalDeviceCustomBorderColorFeaturesEXT {
13131
VkStructureType sType;
13133
VkBool32 customBorderColors;
13134
VkBool32 customBorderColorWithoutFormat;
13135
} VkPhysicalDeviceCustomBorderColorFeaturesEXT;
13139
#define VK_GOOGLE_user_type 1
13140
#define VK_GOOGLE_USER_TYPE_SPEC_VERSION 1
13141
#define VK_GOOGLE_USER_TYPE_EXTENSION_NAME "VK_GOOGLE_user_type"
13144
#define VK_EXT_private_data 1
13145
typedef VkPrivateDataSlot VkPrivateDataSlotEXT;
13147
#define VK_EXT_PRIVATE_DATA_SPEC_VERSION 1
13148
#define VK_EXT_PRIVATE_DATA_EXTENSION_NAME "VK_EXT_private_data"
13149
typedef VkPrivateDataSlotCreateFlags VkPrivateDataSlotCreateFlagsEXT;
13151
typedef VkPhysicalDevicePrivateDataFeatures VkPhysicalDevicePrivateDataFeaturesEXT;
13153
typedef VkDevicePrivateDataCreateInfo VkDevicePrivateDataCreateInfoEXT;
13155
typedef VkPrivateDataSlotCreateInfo VkPrivateDataSlotCreateInfoEXT;
13157
typedef VkResult (VKAPI_PTR *PFN_vkCreatePrivateDataSlotEXT)(VkDevice device, const VkPrivateDataSlotCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlot* pPrivateDataSlot);
13158
typedef void (VKAPI_PTR *PFN_vkDestroyPrivateDataSlotEXT)(VkDevice device, VkPrivateDataSlot privateDataSlot, const VkAllocationCallbacks* pAllocator);
13159
typedef VkResult (VKAPI_PTR *PFN_vkSetPrivateDataEXT)(VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data);
13160
typedef void (VKAPI_PTR *PFN_vkGetPrivateDataEXT)(VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t* pData);
13162
#ifndef VK_NO_PROTOTYPES
13163
VKAPI_ATTR VkResult VKAPI_CALL vkCreatePrivateDataSlotEXT(
13165
const VkPrivateDataSlotCreateInfo* pCreateInfo,
13166
const VkAllocationCallbacks* pAllocator,
13167
VkPrivateDataSlot* pPrivateDataSlot);
13169
VKAPI_ATTR void VKAPI_CALL vkDestroyPrivateDataSlotEXT(
13171
VkPrivateDataSlot privateDataSlot,
13172
const VkAllocationCallbacks* pAllocator);
13174
VKAPI_ATTR VkResult VKAPI_CALL vkSetPrivateDataEXT(
13176
VkObjectType objectType,
13177
uint64_t objectHandle,
13178
VkPrivateDataSlot privateDataSlot,
13181
VKAPI_ATTR void VKAPI_CALL vkGetPrivateDataEXT(
13183
VkObjectType objectType,
13184
uint64_t objectHandle,
13185
VkPrivateDataSlot privateDataSlot,
13190
#define VK_EXT_pipeline_creation_cache_control 1
13191
#define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION 3
13192
#define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME "VK_EXT_pipeline_creation_cache_control"
13193
typedef VkPhysicalDevicePipelineCreationCacheControlFeatures VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT;
13197
#define VK_NV_device_diagnostics_config 1
13198
#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION 1
13199
#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME "VK_NV_device_diagnostics_config"
13201
typedef enum VkDeviceDiagnosticsConfigFlagBitsNV {
13202
VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV = 0x00000001,
13203
VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV = 0x00000002,
13204
VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV = 0x00000004,
13205
VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
13206
} VkDeviceDiagnosticsConfigFlagBitsNV;
13207
typedef VkFlags VkDeviceDiagnosticsConfigFlagsNV;
13208
typedef struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV {
13209
VkStructureType sType;
13211
VkBool32 diagnosticsConfig;
13212
} VkPhysicalDeviceDiagnosticsConfigFeaturesNV;
13214
typedef struct VkDeviceDiagnosticsConfigCreateInfoNV {
13215
VkStructureType sType;
13217
VkDeviceDiagnosticsConfigFlagsNV flags;
13218
} VkDeviceDiagnosticsConfigCreateInfoNV;
13222
#define VK_QCOM_render_pass_store_ops 1
13223
#define VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION 2
13224
#define VK_QCOM_RENDER_PASS_STORE_OPS_EXTENSION_NAME "VK_QCOM_render_pass_store_ops"
13227
#define VK_EXT_graphics_pipeline_library 1
13228
#define VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION 1
13229
#define VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME "VK_EXT_graphics_pipeline_library"
13231
typedef enum VkGraphicsPipelineLibraryFlagBitsEXT {
13232
VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT = 0x00000001,
13233
VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT = 0x00000002,
13234
VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT = 0x00000004,
13235
VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT = 0x00000008,
13236
VK_GRAPHICS_PIPELINE_LIBRARY_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
13237
} VkGraphicsPipelineLibraryFlagBitsEXT;
13238
typedef VkFlags VkGraphicsPipelineLibraryFlagsEXT;
13239
typedef struct VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT {
13240
VkStructureType sType;
13242
VkBool32 graphicsPipelineLibrary;
13243
} VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT;
13245
typedef struct VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT {
13246
VkStructureType sType;
13248
VkBool32 graphicsPipelineLibraryFastLinking;
13249
VkBool32 graphicsPipelineLibraryIndependentInterpolationDecoration;
13250
} VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT;
13252
typedef struct VkGraphicsPipelineLibraryCreateInfoEXT {
13253
VkStructureType sType;
13255
VkGraphicsPipelineLibraryFlagsEXT flags;
13256
} VkGraphicsPipelineLibraryCreateInfoEXT;
13260
#define VK_NV_fragment_shading_rate_enums 1
13261
#define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION 1
13262
#define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME "VK_NV_fragment_shading_rate_enums"
13264
typedef enum VkFragmentShadingRateTypeNV {
13265
VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV = 0,
13266
VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV = 1,
13267
VK_FRAGMENT_SHADING_RATE_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
13268
} VkFragmentShadingRateTypeNV;
13270
typedef enum VkFragmentShadingRateNV {
13271
VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = 0,
13272
VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = 1,
13273
VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = 4,
13274
VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = 5,
13275
VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = 6,
13276
VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = 9,
13277
VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = 10,
13278
VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = 11,
13279
VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = 12,
13280
VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = 13,
13281
VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = 14,
13282
VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV = 15,
13283
VK_FRAGMENT_SHADING_RATE_MAX_ENUM_NV = 0x7FFFFFFF
13284
} VkFragmentShadingRateNV;
13285
typedef struct VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV {
13286
VkStructureType sType;
13288
VkBool32 fragmentShadingRateEnums;
13289
VkBool32 supersampleFragmentShadingRates;
13290
VkBool32 noInvocationFragmentShadingRates;
13291
} VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
13293
typedef struct VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV {
13294
VkStructureType sType;
13296
VkSampleCountFlagBits maxFragmentShadingRateInvocationCount;
13297
} VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
13299
typedef struct VkPipelineFragmentShadingRateEnumStateCreateInfoNV {
13300
VkStructureType sType;
13302
VkFragmentShadingRateTypeNV shadingRateType;
13303
VkFragmentShadingRateNV shadingRate;
13304
VkFragmentShadingRateCombinerOpKHR combinerOps[2];
13305
} VkPipelineFragmentShadingRateEnumStateCreateInfoNV;
13307
typedef void (VKAPI_PTR *PFN_vkCmdSetFragmentShadingRateEnumNV)(VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
13309
#ifndef VK_NO_PROTOTYPES
13310
VKAPI_ATTR void VKAPI_CALL vkCmdSetFragmentShadingRateEnumNV(
13311
VkCommandBuffer commandBuffer,
13312
VkFragmentShadingRateNV shadingRate,
13313
const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
13317
#define VK_NV_ray_tracing_motion_blur 1
13318
#define VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION 1
13319
#define VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME "VK_NV_ray_tracing_motion_blur"
13321
typedef enum VkAccelerationStructureMotionInstanceTypeNV {
13322
VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV = 0,
13323
VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV = 1,
13324
VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV = 2,
13325
VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
13326
} VkAccelerationStructureMotionInstanceTypeNV;
13327
typedef VkFlags VkAccelerationStructureMotionInfoFlagsNV;
13328
typedef VkFlags VkAccelerationStructureMotionInstanceFlagsNV;
13329
typedef union VkDeviceOrHostAddressConstKHR {
13330
VkDeviceAddress deviceAddress;
13331
const void* hostAddress;
13332
} VkDeviceOrHostAddressConstKHR;
13334
typedef struct VkAccelerationStructureGeometryMotionTrianglesDataNV {
13335
VkStructureType sType;
13337
VkDeviceOrHostAddressConstKHR vertexData;
13338
} VkAccelerationStructureGeometryMotionTrianglesDataNV;
13340
typedef struct VkAccelerationStructureMotionInfoNV {
13341
VkStructureType sType;
13343
uint32_t maxInstances;
13344
VkAccelerationStructureMotionInfoFlagsNV flags;
13345
} VkAccelerationStructureMotionInfoNV;
13347
typedef struct VkAccelerationStructureMatrixMotionInstanceNV {
13348
VkTransformMatrixKHR transformT0;
13349
VkTransformMatrixKHR transformT1;
13350
uint32_t instanceCustomIndex:24;
13352
uint32_t instanceShaderBindingTableRecordOffset:24;
13353
VkGeometryInstanceFlagsKHR flags:8;
13354
uint64_t accelerationStructureReference;
13355
} VkAccelerationStructureMatrixMotionInstanceNV;
13357
typedef struct VkSRTDataNV {
13376
typedef struct VkAccelerationStructureSRTMotionInstanceNV {
13377
VkSRTDataNV transformT0;
13378
VkSRTDataNV transformT1;
13379
uint32_t instanceCustomIndex:24;
13381
uint32_t instanceShaderBindingTableRecordOffset:24;
13382
VkGeometryInstanceFlagsKHR flags:8;
13383
uint64_t accelerationStructureReference;
13384
} VkAccelerationStructureSRTMotionInstanceNV;
13386
typedef union VkAccelerationStructureMotionInstanceDataNV {
13387
VkAccelerationStructureInstanceKHR staticInstance;
13388
VkAccelerationStructureMatrixMotionInstanceNV matrixMotionInstance;
13389
VkAccelerationStructureSRTMotionInstanceNV srtMotionInstance;
13390
} VkAccelerationStructureMotionInstanceDataNV;
13392
typedef struct VkAccelerationStructureMotionInstanceNV {
13393
VkAccelerationStructureMotionInstanceTypeNV type;
13394
VkAccelerationStructureMotionInstanceFlagsNV flags;
13395
VkAccelerationStructureMotionInstanceDataNV data;
13396
} VkAccelerationStructureMotionInstanceNV;
13398
typedef struct VkPhysicalDeviceRayTracingMotionBlurFeaturesNV {
13399
VkStructureType sType;
13401
VkBool32 rayTracingMotionBlur;
13402
VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect;
13403
} VkPhysicalDeviceRayTracingMotionBlurFeaturesNV;
13407
#define VK_EXT_ycbcr_2plane_444_formats 1
13408
#define VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION 1
13409
#define VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME "VK_EXT_ycbcr_2plane_444_formats"
13410
typedef struct VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT {
13411
VkStructureType sType;
13413
VkBool32 ycbcr2plane444Formats;
13414
} VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
13418
#define VK_EXT_fragment_density_map2 1
13419
#define VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION 1
13420
#define VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME "VK_EXT_fragment_density_map2"
13421
typedef struct VkPhysicalDeviceFragmentDensityMap2FeaturesEXT {
13422
VkStructureType sType;
13424
VkBool32 fragmentDensityMapDeferred;
13425
} VkPhysicalDeviceFragmentDensityMap2FeaturesEXT;
13427
typedef struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT {
13428
VkStructureType sType;
13430
VkBool32 subsampledLoads;
13431
VkBool32 subsampledCoarseReconstructionEarlyAccess;
13432
uint32_t maxSubsampledArrayLayers;
13433
uint32_t maxDescriptorSetSubsampledSamplers;
13434
} VkPhysicalDeviceFragmentDensityMap2PropertiesEXT;
13438
#define VK_QCOM_rotated_copy_commands 1
13439
#define VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION 1
13440
#define VK_QCOM_ROTATED_COPY_COMMANDS_EXTENSION_NAME "VK_QCOM_rotated_copy_commands"
13441
typedef struct VkCopyCommandTransformInfoQCOM {
13442
VkStructureType sType;
13444
VkSurfaceTransformFlagBitsKHR transform;
13445
} VkCopyCommandTransformInfoQCOM;
13449
#define VK_EXT_image_robustness 1
13450
#define VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION 1
13451
#define VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME "VK_EXT_image_robustness"
13452
typedef VkPhysicalDeviceImageRobustnessFeatures VkPhysicalDeviceImageRobustnessFeaturesEXT;
13456
#define VK_EXT_4444_formats 1
13457
#define VK_EXT_4444_FORMATS_SPEC_VERSION 1
13458
#define VK_EXT_4444_FORMATS_EXTENSION_NAME "VK_EXT_4444_formats"
13459
typedef struct VkPhysicalDevice4444FormatsFeaturesEXT {
13460
VkStructureType sType;
13462
VkBool32 formatA4R4G4B4;
13463
VkBool32 formatA4B4G4R4;
13464
} VkPhysicalDevice4444FormatsFeaturesEXT;
13468
#define VK_ARM_rasterization_order_attachment_access 1
13469
#define VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION 1
13470
#define VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME "VK_ARM_rasterization_order_attachment_access"
13471
typedef struct VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM {
13472
VkStructureType sType;
13474
VkBool32 rasterizationOrderColorAttachmentAccess;
13475
VkBool32 rasterizationOrderDepthAttachmentAccess;
13476
VkBool32 rasterizationOrderStencilAttachmentAccess;
13477
} VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM;
13481
#define VK_EXT_rgba10x6_formats 1
13482
#define VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION 1
13483
#define VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME "VK_EXT_rgba10x6_formats"
13484
typedef struct VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT {
13485
VkStructureType sType;
13487
VkBool32 formatRgba10x6WithoutYCbCrSampler;
13488
} VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT;
13492
#define VK_NV_acquire_winrt_display 1
13493
#define VK_NV_ACQUIRE_WINRT_DISPLAY_SPEC_VERSION 1
13494
#define VK_NV_ACQUIRE_WINRT_DISPLAY_EXTENSION_NAME "VK_NV_acquire_winrt_display"
13495
typedef VkResult (VKAPI_PTR *PFN_vkAcquireWinrtDisplayNV)(VkPhysicalDevice physicalDevice, VkDisplayKHR display);
13496
typedef VkResult (VKAPI_PTR *PFN_vkGetWinrtDisplayNV)(VkPhysicalDevice physicalDevice, uint32_t deviceRelativeId, VkDisplayKHR* pDisplay);
13498
#ifndef VK_NO_PROTOTYPES
13499
VKAPI_ATTR VkResult VKAPI_CALL vkAcquireWinrtDisplayNV(
13500
VkPhysicalDevice physicalDevice,
13501
VkDisplayKHR display);
13503
VKAPI_ATTR VkResult VKAPI_CALL vkGetWinrtDisplayNV(
13504
VkPhysicalDevice physicalDevice,
13505
uint32_t deviceRelativeId,
13506
VkDisplayKHR* pDisplay);
13510
#define VK_VALVE_mutable_descriptor_type 1
13511
#define VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION 1
13512
#define VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME "VK_VALVE_mutable_descriptor_type"
13513
typedef struct VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE {
13514
VkStructureType sType;
13516
VkBool32 mutableDescriptorType;
13517
} VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
13519
typedef struct VkMutableDescriptorTypeListVALVE {
13520
uint32_t descriptorTypeCount;
13521
const VkDescriptorType* pDescriptorTypes;
13522
} VkMutableDescriptorTypeListVALVE;
13524
typedef struct VkMutableDescriptorTypeCreateInfoVALVE {
13525
VkStructureType sType;
13527
uint32_t mutableDescriptorTypeListCount;
13528
const VkMutableDescriptorTypeListVALVE* pMutableDescriptorTypeLists;
13529
} VkMutableDescriptorTypeCreateInfoVALVE;
13533
#define VK_EXT_vertex_input_dynamic_state 1
13534
#define VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION 2
13535
#define VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME "VK_EXT_vertex_input_dynamic_state"
13536
typedef struct VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT {
13537
VkStructureType sType;
13539
VkBool32 vertexInputDynamicState;
13540
} VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT;
13542
typedef struct VkVertexInputBindingDescription2EXT {
13543
VkStructureType sType;
13547
VkVertexInputRate inputRate;
13549
} VkVertexInputBindingDescription2EXT;
13551
typedef struct VkVertexInputAttributeDescription2EXT {
13552
VkStructureType sType;
13558
} VkVertexInputAttributeDescription2EXT;
13560
typedef void (VKAPI_PTR *PFN_vkCmdSetVertexInputEXT)(VkCommandBuffer commandBuffer, uint32_t vertexBindingDescriptionCount, const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions, uint32_t vertexAttributeDescriptionCount, const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions);
13562
#ifndef VK_NO_PROTOTYPES
13563
VKAPI_ATTR void VKAPI_CALL vkCmdSetVertexInputEXT(
13564
VkCommandBuffer commandBuffer,
13565
uint32_t vertexBindingDescriptionCount,
13566
const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions,
13567
uint32_t vertexAttributeDescriptionCount,
13568
const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions);
13572
#define VK_EXT_physical_device_drm 1
13573
#define VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION 1
13574
#define VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME "VK_EXT_physical_device_drm"
13575
typedef struct VkPhysicalDeviceDrmPropertiesEXT {
13576
VkStructureType sType;
13578
VkBool32 hasPrimary;
13579
VkBool32 hasRender;
13580
int64_t primaryMajor;
13581
int64_t primaryMinor;
13582
int64_t renderMajor;
13583
int64_t renderMinor;
13584
} VkPhysicalDeviceDrmPropertiesEXT;
13588
#define VK_EXT_depth_clip_control 1
13589
#define VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION 1
13590
#define VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME "VK_EXT_depth_clip_control"
13591
typedef struct VkPhysicalDeviceDepthClipControlFeaturesEXT {
13592
VkStructureType sType;
13594
VkBool32 depthClipControl;
13595
} VkPhysicalDeviceDepthClipControlFeaturesEXT;
13597
typedef struct VkPipelineViewportDepthClipControlCreateInfoEXT {
13598
VkStructureType sType;
13600
VkBool32 negativeOneToOne;
13601
} VkPipelineViewportDepthClipControlCreateInfoEXT;
13605
#define VK_EXT_primitive_topology_list_restart 1
13606
#define VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION 1
13607
#define VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME "VK_EXT_primitive_topology_list_restart"
13608
typedef struct VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT {
13609
VkStructureType sType;
13611
VkBool32 primitiveTopologyListRestart;
13612
VkBool32 primitiveTopologyPatchListRestart;
13613
} VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT;
13617
#define VK_HUAWEI_subpass_shading 1
13618
#define VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION 2
13619
#define VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME "VK_HUAWEI_subpass_shading"
13620
typedef struct VkSubpassShadingPipelineCreateInfoHUAWEI {
13621
VkStructureType sType;
13623
VkRenderPass renderPass;
13625
} VkSubpassShadingPipelineCreateInfoHUAWEI;
13627
typedef struct VkPhysicalDeviceSubpassShadingFeaturesHUAWEI {
13628
VkStructureType sType;
13630
VkBool32 subpassShading;
13631
} VkPhysicalDeviceSubpassShadingFeaturesHUAWEI;
13633
typedef struct VkPhysicalDeviceSubpassShadingPropertiesHUAWEI {
13634
VkStructureType sType;
13636
uint32_t maxSubpassShadingWorkgroupSizeAspectRatio;
13637
} VkPhysicalDeviceSubpassShadingPropertiesHUAWEI;
13639
typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI)(VkDevice device, VkRenderPass renderpass, VkExtent2D* pMaxWorkgroupSize);
13640
typedef void (VKAPI_PTR *PFN_vkCmdSubpassShadingHUAWEI)(VkCommandBuffer commandBuffer);
13642
#ifndef VK_NO_PROTOTYPES
13643
VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(
13645
VkRenderPass renderpass,
13646
VkExtent2D* pMaxWorkgroupSize);
13648
VKAPI_ATTR void VKAPI_CALL vkCmdSubpassShadingHUAWEI(
13649
VkCommandBuffer commandBuffer);
13653
#define VK_HUAWEI_invocation_mask 1
13654
#define VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION 1
13655
#define VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME "VK_HUAWEI_invocation_mask"
13656
typedef struct VkPhysicalDeviceInvocationMaskFeaturesHUAWEI {
13657
VkStructureType sType;
13659
VkBool32 invocationMask;
13660
} VkPhysicalDeviceInvocationMaskFeaturesHUAWEI;
13662
typedef void (VKAPI_PTR *PFN_vkCmdBindInvocationMaskHUAWEI)(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout);
13664
#ifndef VK_NO_PROTOTYPES
13665
VKAPI_ATTR void VKAPI_CALL vkCmdBindInvocationMaskHUAWEI(
13666
VkCommandBuffer commandBuffer,
13667
VkImageView imageView,
13668
VkImageLayout imageLayout);
13672
#define VK_NV_external_memory_rdma 1
13673
typedef void* VkRemoteAddressNV;
13674
#define VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION 1
13675
#define VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME "VK_NV_external_memory_rdma"
13676
typedef struct VkMemoryGetRemoteAddressInfoNV {
13677
VkStructureType sType;
13679
VkDeviceMemory memory;
13680
VkExternalMemoryHandleTypeFlagBits handleType;
13681
} VkMemoryGetRemoteAddressInfoNV;
13683
typedef struct VkPhysicalDeviceExternalMemoryRDMAFeaturesNV {
13684
VkStructureType sType;
13686
VkBool32 externalMemoryRDMA;
13687
} VkPhysicalDeviceExternalMemoryRDMAFeaturesNV;
13689
typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryRemoteAddressNV)(VkDevice device, const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo, VkRemoteAddressNV* pAddress);
13691
#ifndef VK_NO_PROTOTYPES
13692
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryRemoteAddressNV(
13694
const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo,
13695
VkRemoteAddressNV* pAddress);
13699
#define VK_EXT_extended_dynamic_state2 1
13700
#define VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION 1
13701
#define VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME "VK_EXT_extended_dynamic_state2"
13702
typedef struct VkPhysicalDeviceExtendedDynamicState2FeaturesEXT {
13703
VkStructureType sType;
13705
VkBool32 extendedDynamicState2;
13706
VkBool32 extendedDynamicState2LogicOp;
13707
VkBool32 extendedDynamicState2PatchControlPoints;
13708
} VkPhysicalDeviceExtendedDynamicState2FeaturesEXT;
13710
typedef void (VKAPI_PTR *PFN_vkCmdSetPatchControlPointsEXT)(VkCommandBuffer commandBuffer, uint32_t patchControlPoints);
13711
typedef void (VKAPI_PTR *PFN_vkCmdSetRasterizerDiscardEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable);
13712
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBiasEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable);
13713
typedef void (VKAPI_PTR *PFN_vkCmdSetLogicOpEXT)(VkCommandBuffer commandBuffer, VkLogicOp logicOp);
13714
typedef void (VKAPI_PTR *PFN_vkCmdSetPrimitiveRestartEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable);
13716
#ifndef VK_NO_PROTOTYPES
13717
VKAPI_ATTR void VKAPI_CALL vkCmdSetPatchControlPointsEXT(
13718
VkCommandBuffer commandBuffer,
13719
uint32_t patchControlPoints);
13721
VKAPI_ATTR void VKAPI_CALL vkCmdSetRasterizerDiscardEnableEXT(
13722
VkCommandBuffer commandBuffer,
13723
VkBool32 rasterizerDiscardEnable);
13725
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBiasEnableEXT(
13726
VkCommandBuffer commandBuffer,
13727
VkBool32 depthBiasEnable);
13729
VKAPI_ATTR void VKAPI_CALL vkCmdSetLogicOpEXT(
13730
VkCommandBuffer commandBuffer,
13731
VkLogicOp logicOp);
13733
VKAPI_ATTR void VKAPI_CALL vkCmdSetPrimitiveRestartEnableEXT(
13734
VkCommandBuffer commandBuffer,
13735
VkBool32 primitiveRestartEnable);
13739
#define VK_EXT_color_write_enable 1
13740
#define VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION 1
13741
#define VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME "VK_EXT_color_write_enable"
13742
typedef struct VkPhysicalDeviceColorWriteEnableFeaturesEXT {
13743
VkStructureType sType;
13745
VkBool32 colorWriteEnable;
13746
} VkPhysicalDeviceColorWriteEnableFeaturesEXT;
13748
typedef struct VkPipelineColorWriteCreateInfoEXT {
13749
VkStructureType sType;
13751
uint32_t attachmentCount;
13752
const VkBool32* pColorWriteEnables;
13753
} VkPipelineColorWriteCreateInfoEXT;
13755
typedef void (VKAPI_PTR *PFN_vkCmdSetColorWriteEnableEXT)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables);
13757
#ifndef VK_NO_PROTOTYPES
13758
VKAPI_ATTR void VKAPI_CALL vkCmdSetColorWriteEnableEXT(
13759
VkCommandBuffer commandBuffer,
13760
uint32_t attachmentCount,
13761
const VkBool32* pColorWriteEnables);
13765
#define VK_EXT_primitives_generated_query 1
13766
#define VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION 1
13767
#define VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME "VK_EXT_primitives_generated_query"
13768
typedef struct VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT {
13769
VkStructureType sType;
13771
VkBool32 primitivesGeneratedQuery;
13772
VkBool32 primitivesGeneratedQueryWithRasterizerDiscard;
13773
VkBool32 primitivesGeneratedQueryWithNonZeroStreams;
13774
} VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT;
13778
#define VK_EXT_global_priority_query 1
13779
#define VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION 1
13780
#define VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME "VK_EXT_global_priority_query"
13781
#define VK_MAX_GLOBAL_PRIORITY_SIZE_EXT VK_MAX_GLOBAL_PRIORITY_SIZE_KHR
13782
typedef VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT;
13784
typedef VkQueueFamilyGlobalPriorityPropertiesKHR VkQueueFamilyGlobalPriorityPropertiesEXT;
13788
#define VK_EXT_image_view_min_lod 1
13789
#define VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION 1
13790
#define VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME "VK_EXT_image_view_min_lod"
13791
typedef struct VkPhysicalDeviceImageViewMinLodFeaturesEXT {
13792
VkStructureType sType;
13795
} VkPhysicalDeviceImageViewMinLodFeaturesEXT;
13797
typedef struct VkImageViewMinLodCreateInfoEXT {
13798
VkStructureType sType;
13801
} VkImageViewMinLodCreateInfoEXT;
13805
#define VK_EXT_multi_draw 1
13806
#define VK_EXT_MULTI_DRAW_SPEC_VERSION 1
13807
#define VK_EXT_MULTI_DRAW_EXTENSION_NAME "VK_EXT_multi_draw"
13808
typedef struct VkPhysicalDeviceMultiDrawFeaturesEXT {
13809
VkStructureType sType;
13811
VkBool32 multiDraw;
13812
} VkPhysicalDeviceMultiDrawFeaturesEXT;
13814
typedef struct VkPhysicalDeviceMultiDrawPropertiesEXT {
13815
VkStructureType sType;
13817
uint32_t maxMultiDrawCount;
13818
} VkPhysicalDeviceMultiDrawPropertiesEXT;
13820
typedef struct VkMultiDrawInfoEXT {
13821
uint32_t firstVertex;
13822
uint32_t vertexCount;
13823
} VkMultiDrawInfoEXT;
13825
typedef struct VkMultiDrawIndexedInfoEXT {
13826
uint32_t firstIndex;
13827
uint32_t indexCount;
13828
int32_t vertexOffset;
13829
} VkMultiDrawIndexedInfoEXT;
13831
typedef void (VKAPI_PTR *PFN_vkCmdDrawMultiEXT)(VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawInfoEXT* pVertexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride);
13832
typedef void (VKAPI_PTR *PFN_vkCmdDrawMultiIndexedEXT)(VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawIndexedInfoEXT* pIndexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride, const int32_t* pVertexOffset);
13834
#ifndef VK_NO_PROTOTYPES
13835
VKAPI_ATTR void VKAPI_CALL vkCmdDrawMultiEXT(
13836
VkCommandBuffer commandBuffer,
13837
uint32_t drawCount,
13838
const VkMultiDrawInfoEXT* pVertexInfo,
13839
uint32_t instanceCount,
13840
uint32_t firstInstance,
13843
VKAPI_ATTR void VKAPI_CALL vkCmdDrawMultiIndexedEXT(
13844
VkCommandBuffer commandBuffer,
13845
uint32_t drawCount,
13846
const VkMultiDrawIndexedInfoEXT* pIndexInfo,
13847
uint32_t instanceCount,
13848
uint32_t firstInstance,
13850
const int32_t* pVertexOffset);
13854
#define VK_EXT_image_2d_view_of_3d 1
13855
#define VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION 1
13856
#define VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME "VK_EXT_image_2d_view_of_3d"
13857
typedef struct VkPhysicalDeviceImage2DViewOf3DFeaturesEXT {
13858
VkStructureType sType;
13860
VkBool32 image2DViewOf3D;
13861
VkBool32 sampler2DViewOf3D;
13862
} VkPhysicalDeviceImage2DViewOf3DFeaturesEXT;
13866
#define VK_EXT_load_store_op_none 1
13867
#define VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION 1
13868
#define VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME "VK_EXT_load_store_op_none"
13871
#define VK_EXT_border_color_swizzle 1
13872
#define VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION 1
13873
#define VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME "VK_EXT_border_color_swizzle"
13874
typedef struct VkPhysicalDeviceBorderColorSwizzleFeaturesEXT {
13875
VkStructureType sType;
13877
VkBool32 borderColorSwizzle;
13878
VkBool32 borderColorSwizzleFromImage;
13879
} VkPhysicalDeviceBorderColorSwizzleFeaturesEXT;
13881
typedef struct VkSamplerBorderColorComponentMappingCreateInfoEXT {
13882
VkStructureType sType;
13884
VkComponentMapping components;
13886
} VkSamplerBorderColorComponentMappingCreateInfoEXT;
13890
#define VK_EXT_pageable_device_local_memory 1
13891
#define VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION 1
13892
#define VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME "VK_EXT_pageable_device_local_memory"
13893
typedef struct VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT {
13894
VkStructureType sType;
13896
VkBool32 pageableDeviceLocalMemory;
13897
} VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT;
13899
typedef void (VKAPI_PTR *PFN_vkSetDeviceMemoryPriorityEXT)(VkDevice device, VkDeviceMemory memory, float priority);
13901
#ifndef VK_NO_PROTOTYPES
13902
VKAPI_ATTR void VKAPI_CALL vkSetDeviceMemoryPriorityEXT(
13904
VkDeviceMemory memory,
13909
#define VK_VALVE_descriptor_set_host_mapping 1
13910
#define VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION 1
13911
#define VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME "VK_VALVE_descriptor_set_host_mapping"
13912
typedef struct VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE {
13913
VkStructureType sType;
13915
VkBool32 descriptorSetHostMapping;
13916
} VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE;
13918
typedef struct VkDescriptorSetBindingReferenceVALVE {
13919
VkStructureType sType;
13921
VkDescriptorSetLayout descriptorSetLayout;
13923
} VkDescriptorSetBindingReferenceVALVE;
13925
typedef struct VkDescriptorSetLayoutHostMappingInfoVALVE {
13926
VkStructureType sType;
13928
size_t descriptorOffset;
13929
uint32_t descriptorSize;
13930
} VkDescriptorSetLayoutHostMappingInfoVALVE;
13932
typedef void (VKAPI_PTR *PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE)(VkDevice device, const VkDescriptorSetBindingReferenceVALVE* pBindingReference, VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping);
13933
typedef void (VKAPI_PTR *PFN_vkGetDescriptorSetHostMappingVALVE)(VkDevice device, VkDescriptorSet descriptorSet, void** ppData);
13935
#ifndef VK_NO_PROTOTYPES
13936
VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutHostMappingInfoVALVE(
13938
const VkDescriptorSetBindingReferenceVALVE* pBindingReference,
13939
VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping);
13941
VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetHostMappingVALVE(
13943
VkDescriptorSet descriptorSet,
13948
#define VK_QCOM_fragment_density_map_offset 1
13949
#define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION 1
13950
#define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME "VK_QCOM_fragment_density_map_offset"
13951
typedef struct VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM {
13952
VkStructureType sType;
13954
VkBool32 fragmentDensityMapOffset;
13955
} VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM;
13957
typedef struct VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM {
13958
VkStructureType sType;
13960
VkExtent2D fragmentDensityOffsetGranularity;
13961
} VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM;
13963
typedef struct VkSubpassFragmentDensityMapOffsetEndInfoQCOM {
13964
VkStructureType sType;
13966
uint32_t fragmentDensityOffsetCount;
13967
const VkOffset2D* pFragmentDensityOffsets;
13968
} VkSubpassFragmentDensityMapOffsetEndInfoQCOM;
13972
#define VK_NV_linear_color_attachment 1
13973
#define VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION 1
13974
#define VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME "VK_NV_linear_color_attachment"
13975
typedef struct VkPhysicalDeviceLinearColorAttachmentFeaturesNV {
13976
VkStructureType sType;
13978
VkBool32 linearColorAttachment;
13979
} VkPhysicalDeviceLinearColorAttachmentFeaturesNV;
13983
#define VK_GOOGLE_surfaceless_query 1
13984
#define VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION 1
13985
#define VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME "VK_GOOGLE_surfaceless_query"
13988
#define VK_KHR_acceleration_structure 1
13989
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR)
13990
#define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13
13991
#define VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME "VK_KHR_acceleration_structure"
13993
typedef enum VkBuildAccelerationStructureModeKHR {
13994
VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR = 0,
13995
VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR = 1,
13996
VK_BUILD_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR = 0x7FFFFFFF
13997
} VkBuildAccelerationStructureModeKHR;
13999
typedef enum VkAccelerationStructureBuildTypeKHR {
14000
VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0,
14001
VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1,
14002
VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2,
14003
VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
14004
} VkAccelerationStructureBuildTypeKHR;
14006
typedef enum VkAccelerationStructureCompatibilityKHR {
14007
VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR = 0,
14008
VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR = 1,
14009
VK_ACCELERATION_STRUCTURE_COMPATIBILITY_MAX_ENUM_KHR = 0x7FFFFFFF
14010
} VkAccelerationStructureCompatibilityKHR;
14012
typedef enum VkAccelerationStructureCreateFlagBitsKHR {
14013
VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = 0x00000001,
14014
VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV = 0x00000004,
14015
VK_ACCELERATION_STRUCTURE_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
14016
} VkAccelerationStructureCreateFlagBitsKHR;
14017
typedef VkFlags VkAccelerationStructureCreateFlagsKHR;
14018
typedef union VkDeviceOrHostAddressKHR {
14019
VkDeviceAddress deviceAddress;
14021
} VkDeviceOrHostAddressKHR;
14023
typedef struct VkAccelerationStructureBuildRangeInfoKHR {
14024
uint32_t primitiveCount;
14025
uint32_t primitiveOffset;
14026
uint32_t firstVertex;
14027
uint32_t transformOffset;
14028
} VkAccelerationStructureBuildRangeInfoKHR;
14030
typedef struct VkAccelerationStructureGeometryTrianglesDataKHR {
14031
VkStructureType sType;
14033
VkFormat vertexFormat;
14034
VkDeviceOrHostAddressConstKHR vertexData;
14035
VkDeviceSize vertexStride;
14036
uint32_t maxVertex;
14037
VkIndexType indexType;
14038
VkDeviceOrHostAddressConstKHR indexData;
14039
VkDeviceOrHostAddressConstKHR transformData;
14040
} VkAccelerationStructureGeometryTrianglesDataKHR;
14042
typedef struct VkAccelerationStructureGeometryAabbsDataKHR {
14043
VkStructureType sType;
14045
VkDeviceOrHostAddressConstKHR data;
14046
VkDeviceSize stride;
14047
} VkAccelerationStructureGeometryAabbsDataKHR;
14049
typedef struct VkAccelerationStructureGeometryInstancesDataKHR {
14050
VkStructureType sType;
14052
VkBool32 arrayOfPointers;
14053
VkDeviceOrHostAddressConstKHR data;
14054
} VkAccelerationStructureGeometryInstancesDataKHR;
14056
typedef union VkAccelerationStructureGeometryDataKHR {
14057
VkAccelerationStructureGeometryTrianglesDataKHR triangles;
14058
VkAccelerationStructureGeometryAabbsDataKHR aabbs;
14059
VkAccelerationStructureGeometryInstancesDataKHR instances;
14060
} VkAccelerationStructureGeometryDataKHR;
14062
typedef struct VkAccelerationStructureGeometryKHR {
14063
VkStructureType sType;
14065
VkGeometryTypeKHR geometryType;
14066
VkAccelerationStructureGeometryDataKHR geometry;
14067
VkGeometryFlagsKHR flags;
14068
} VkAccelerationStructureGeometryKHR;
14070
typedef struct VkAccelerationStructureBuildGeometryInfoKHR {
14071
VkStructureType sType;
14073
VkAccelerationStructureTypeKHR type;
14074
VkBuildAccelerationStructureFlagsKHR flags;
14075
VkBuildAccelerationStructureModeKHR mode;
14076
VkAccelerationStructureKHR srcAccelerationStructure;
14077
VkAccelerationStructureKHR dstAccelerationStructure;
14078
uint32_t geometryCount;
14079
const VkAccelerationStructureGeometryKHR* pGeometries;
14080
const VkAccelerationStructureGeometryKHR* const* ppGeometries;
14081
VkDeviceOrHostAddressKHR scratchData;
14082
} VkAccelerationStructureBuildGeometryInfoKHR;
14084
typedef struct VkAccelerationStructureCreateInfoKHR {
14085
VkStructureType sType;
14087
VkAccelerationStructureCreateFlagsKHR createFlags;
14089
VkDeviceSize offset;
14091
VkAccelerationStructureTypeKHR type;
14092
VkDeviceAddress deviceAddress;
14093
} VkAccelerationStructureCreateInfoKHR;
14095
typedef struct VkWriteDescriptorSetAccelerationStructureKHR {
14096
VkStructureType sType;
14098
uint32_t accelerationStructureCount;
14099
const VkAccelerationStructureKHR* pAccelerationStructures;
14100
} VkWriteDescriptorSetAccelerationStructureKHR;
14102
typedef struct VkPhysicalDeviceAccelerationStructureFeaturesKHR {
14103
VkStructureType sType;
14105
VkBool32 accelerationStructure;
14106
VkBool32 accelerationStructureCaptureReplay;
14107
VkBool32 accelerationStructureIndirectBuild;
14108
VkBool32 accelerationStructureHostCommands;
14109
VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind;
14110
} VkPhysicalDeviceAccelerationStructureFeaturesKHR;
14112
typedef struct VkPhysicalDeviceAccelerationStructurePropertiesKHR {
14113
VkStructureType sType;
14115
uint64_t maxGeometryCount;
14116
uint64_t maxInstanceCount;
14117
uint64_t maxPrimitiveCount;
14118
uint32_t maxPerStageDescriptorAccelerationStructures;
14119
uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures;
14120
uint32_t maxDescriptorSetAccelerationStructures;
14121
uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures;
14122
uint32_t minAccelerationStructureScratchOffsetAlignment;
14123
} VkPhysicalDeviceAccelerationStructurePropertiesKHR;
14125
typedef struct VkAccelerationStructureDeviceAddressInfoKHR {
14126
VkStructureType sType;
14128
VkAccelerationStructureKHR accelerationStructure;
14129
} VkAccelerationStructureDeviceAddressInfoKHR;
14131
typedef struct VkAccelerationStructureVersionInfoKHR {
14132
VkStructureType sType;
14134
const uint8_t* pVersionData;
14135
} VkAccelerationStructureVersionInfoKHR;
14137
typedef struct VkCopyAccelerationStructureToMemoryInfoKHR {
14138
VkStructureType sType;
14140
VkAccelerationStructureKHR src;
14141
VkDeviceOrHostAddressKHR dst;
14142
VkCopyAccelerationStructureModeKHR mode;
14143
} VkCopyAccelerationStructureToMemoryInfoKHR;
14145
typedef struct VkCopyMemoryToAccelerationStructureInfoKHR {
14146
VkStructureType sType;
14148
VkDeviceOrHostAddressConstKHR src;
14149
VkAccelerationStructureKHR dst;
14150
VkCopyAccelerationStructureModeKHR mode;
14151
} VkCopyMemoryToAccelerationStructureInfoKHR;
14153
typedef struct VkCopyAccelerationStructureInfoKHR {
14154
VkStructureType sType;
14156
VkAccelerationStructureKHR src;
14157
VkAccelerationStructureKHR dst;
14158
VkCopyAccelerationStructureModeKHR mode;
14159
} VkCopyAccelerationStructureInfoKHR;
14161
typedef struct VkAccelerationStructureBuildSizesInfoKHR {
14162
VkStructureType sType;
14164
VkDeviceSize accelerationStructureSize;
14165
VkDeviceSize updateScratchSize;
14166
VkDeviceSize buildScratchSize;
14167
} VkAccelerationStructureBuildSizesInfoKHR;
14169
typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureKHR)(VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure);
14170
typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureKHR)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator);
14171
typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructuresKHR)(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos);
14172
typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructuresIndirectKHR)(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkDeviceAddress* pIndirectDeviceAddresses, const uint32_t* pIndirectStrides, const uint32_t* const* ppMaxPrimitiveCounts);
14173
typedef VkResult (VKAPI_PTR *PFN_vkBuildAccelerationStructuresKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos);
14174
typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureInfoKHR* pInfo);
14175
typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureToMemoryKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
14176
typedef VkResult (VKAPI_PTR *PFN_vkCopyMemoryToAccelerationStructureKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
14177
typedef VkResult (VKAPI_PTR *PFN_vkWriteAccelerationStructuresPropertiesKHR)(VkDevice device, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, size_t dataSize, void* pData, size_t stride);
14178
typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureKHR)(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo);
14179
typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureToMemoryKHR)(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
14180
typedef void (VKAPI_PTR *PFN_vkCmdCopyMemoryToAccelerationStructureKHR)(VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
14181
typedef VkDeviceAddress (VKAPI_PTR *PFN_vkGetAccelerationStructureDeviceAddressKHR)(VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo);
14182
typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery);
14183
typedef void (VKAPI_PTR *PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)(VkDevice device, const VkAccelerationStructureVersionInfoKHR* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility);
14184
typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureBuildSizesKHR)(VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo, const uint32_t* pMaxPrimitiveCounts, VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo);
14186
#ifndef VK_NO_PROTOTYPES
14187
VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureKHR(
14189
const VkAccelerationStructureCreateInfoKHR* pCreateInfo,
14190
const VkAllocationCallbacks* pAllocator,
14191
VkAccelerationStructureKHR* pAccelerationStructure);
14193
VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureKHR(
14195
VkAccelerationStructureKHR accelerationStructure,
14196
const VkAllocationCallbacks* pAllocator);
14198
VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructuresKHR(
14199
VkCommandBuffer commandBuffer,
14200
uint32_t infoCount,
14201
const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
14202
const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos);
14204
VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructuresIndirectKHR(
14205
VkCommandBuffer commandBuffer,
14206
uint32_t infoCount,
14207
const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
14208
const VkDeviceAddress* pIndirectDeviceAddresses,
14209
const uint32_t* pIndirectStrides,
14210
const uint32_t* const* ppMaxPrimitiveCounts);
14212
VKAPI_ATTR VkResult VKAPI_CALL vkBuildAccelerationStructuresKHR(
14214
VkDeferredOperationKHR deferredOperation,
14215
uint32_t infoCount,
14216
const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
14217
const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos);
14219
VKAPI_ATTR VkResult VKAPI_CALL vkCopyAccelerationStructureKHR(
14221
VkDeferredOperationKHR deferredOperation,
14222
const VkCopyAccelerationStructureInfoKHR* pInfo);
14224
VKAPI_ATTR VkResult VKAPI_CALL vkCopyAccelerationStructureToMemoryKHR(
14226
VkDeferredOperationKHR deferredOperation,
14227
const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
14229
VKAPI_ATTR VkResult VKAPI_CALL vkCopyMemoryToAccelerationStructureKHR(
14231
VkDeferredOperationKHR deferredOperation,
14232
const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
14234
VKAPI_ATTR VkResult VKAPI_CALL vkWriteAccelerationStructuresPropertiesKHR(
14236
uint32_t accelerationStructureCount,
14237
const VkAccelerationStructureKHR* pAccelerationStructures,
14238
VkQueryType queryType,
14243
VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureKHR(
14244
VkCommandBuffer commandBuffer,
14245
const VkCopyAccelerationStructureInfoKHR* pInfo);
14247
VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureToMemoryKHR(
14248
VkCommandBuffer commandBuffer,
14249
const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
14251
VKAPI_ATTR void VKAPI_CALL vkCmdCopyMemoryToAccelerationStructureKHR(
14252
VkCommandBuffer commandBuffer,
14253
const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
14255
VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetAccelerationStructureDeviceAddressKHR(
14257
const VkAccelerationStructureDeviceAddressInfoKHR* pInfo);
14259
VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesKHR(
14260
VkCommandBuffer commandBuffer,
14261
uint32_t accelerationStructureCount,
14262
const VkAccelerationStructureKHR* pAccelerationStructures,
14263
VkQueryType queryType,
14264
VkQueryPool queryPool,
14265
uint32_t firstQuery);
14267
VKAPI_ATTR void VKAPI_CALL vkGetDeviceAccelerationStructureCompatibilityKHR(
14269
const VkAccelerationStructureVersionInfoKHR* pVersionInfo,
14270
VkAccelerationStructureCompatibilityKHR* pCompatibility);
14272
VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureBuildSizesKHR(
14274
VkAccelerationStructureBuildTypeKHR buildType,
14275
const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo,
14276
const uint32_t* pMaxPrimitiveCounts,
14277
VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo);
14281
#define VK_KHR_ray_tracing_pipeline 1
14282
#define VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION 1
14283
#define VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME "VK_KHR_ray_tracing_pipeline"
14285
typedef enum VkShaderGroupShaderKHR {
14286
VK_SHADER_GROUP_SHADER_GENERAL_KHR = 0,
14287
VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR = 1,
14288
VK_SHADER_GROUP_SHADER_ANY_HIT_KHR = 2,
14289
VK_SHADER_GROUP_SHADER_INTERSECTION_KHR = 3,
14290
VK_SHADER_GROUP_SHADER_MAX_ENUM_KHR = 0x7FFFFFFF
14291
} VkShaderGroupShaderKHR;
14292
typedef struct VkRayTracingShaderGroupCreateInfoKHR {
14293
VkStructureType sType;
14295
VkRayTracingShaderGroupTypeKHR type;
14296
uint32_t generalShader;
14297
uint32_t closestHitShader;
14298
uint32_t anyHitShader;
14299
uint32_t intersectionShader;
14300
const void* pShaderGroupCaptureReplayHandle;
14301
} VkRayTracingShaderGroupCreateInfoKHR;
14303
typedef struct VkRayTracingPipelineInterfaceCreateInfoKHR {
14304
VkStructureType sType;
14306
uint32_t maxPipelineRayPayloadSize;
14307
uint32_t maxPipelineRayHitAttributeSize;
14308
} VkRayTracingPipelineInterfaceCreateInfoKHR;
14310
typedef struct VkRayTracingPipelineCreateInfoKHR {
14311
VkStructureType sType;
14313
VkPipelineCreateFlags flags;
14314
uint32_t stageCount;
14315
const VkPipelineShaderStageCreateInfo* pStages;
14316
uint32_t groupCount;
14317
const VkRayTracingShaderGroupCreateInfoKHR* pGroups;
14318
uint32_t maxPipelineRayRecursionDepth;
14319
const VkPipelineLibraryCreateInfoKHR* pLibraryInfo;
14320
const VkRayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface;
14321
const VkPipelineDynamicStateCreateInfo* pDynamicState;
14322
VkPipelineLayout layout;
14323
VkPipeline basePipelineHandle;
14324
int32_t basePipelineIndex;
14325
} VkRayTracingPipelineCreateInfoKHR;
14327
typedef struct VkPhysicalDeviceRayTracingPipelineFeaturesKHR {
14328
VkStructureType sType;
14330
VkBool32 rayTracingPipeline;
14331
VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay;
14332
VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed;
14333
VkBool32 rayTracingPipelineTraceRaysIndirect;
14334
VkBool32 rayTraversalPrimitiveCulling;
14335
} VkPhysicalDeviceRayTracingPipelineFeaturesKHR;
14337
typedef struct VkPhysicalDeviceRayTracingPipelinePropertiesKHR {
14338
VkStructureType sType;
14340
uint32_t shaderGroupHandleSize;
14341
uint32_t maxRayRecursionDepth;
14342
uint32_t maxShaderGroupStride;
14343
uint32_t shaderGroupBaseAlignment;
14344
uint32_t shaderGroupHandleCaptureReplaySize;
14345
uint32_t maxRayDispatchInvocationCount;
14346
uint32_t shaderGroupHandleAlignment;
14347
uint32_t maxRayHitAttributeSize;
14348
} VkPhysicalDeviceRayTracingPipelinePropertiesKHR;
14350
typedef struct VkStridedDeviceAddressRegionKHR {
14351
VkDeviceAddress deviceAddress;
14352
VkDeviceSize stride;
14354
} VkStridedDeviceAddressRegionKHR;
14356
typedef struct VkTraceRaysIndirectCommandKHR {
14360
} VkTraceRaysIndirectCommandKHR;
14362
typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysKHR)(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth);
14363
typedef VkResult (VKAPI_PTR *PFN_vkCreateRayTracingPipelinesKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
14364
typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData);
14365
typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysIndirectKHR)(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, VkDeviceAddress indirectDeviceAddress);
14366
typedef VkDeviceSize (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupStackSizeKHR)(VkDevice device, VkPipeline pipeline, uint32_t group, VkShaderGroupShaderKHR groupShader);
14367
typedef void (VKAPI_PTR *PFN_vkCmdSetRayTracingPipelineStackSizeKHR)(VkCommandBuffer commandBuffer, uint32_t pipelineStackSize);
14369
#ifndef VK_NO_PROTOTYPES
14370
VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysKHR(
14371
VkCommandBuffer commandBuffer,
14372
const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable,
14373
const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable,
14374
const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable,
14375
const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable,
14380
VKAPI_ATTR VkResult VKAPI_CALL vkCreateRayTracingPipelinesKHR(
14382
VkDeferredOperationKHR deferredOperation,
14383
VkPipelineCache pipelineCache,
14384
uint32_t createInfoCount,
14385
const VkRayTracingPipelineCreateInfoKHR* pCreateInfos,
14386
const VkAllocationCallbacks* pAllocator,
14387
VkPipeline* pPipelines);
14389
VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
14391
VkPipeline pipeline,
14392
uint32_t firstGroup,
14393
uint32_t groupCount,
14397
VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysIndirectKHR(
14398
VkCommandBuffer commandBuffer,
14399
const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable,
14400
const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable,
14401
const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable,
14402
const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable,
14403
VkDeviceAddress indirectDeviceAddress);
14405
VKAPI_ATTR VkDeviceSize VKAPI_CALL vkGetRayTracingShaderGroupStackSizeKHR(
14407
VkPipeline pipeline,
14409
VkShaderGroupShaderKHR groupShader);
14411
VKAPI_ATTR void VKAPI_CALL vkCmdSetRayTracingPipelineStackSizeKHR(
14412
VkCommandBuffer commandBuffer,
14413
uint32_t pipelineStackSize);
14417
#define VK_KHR_ray_query 1
14418
#define VK_KHR_RAY_QUERY_SPEC_VERSION 1
14419
#define VK_KHR_RAY_QUERY_EXTENSION_NAME "VK_KHR_ray_query"
14420
typedef struct VkPhysicalDeviceRayQueryFeaturesKHR {
14421
VkStructureType sType;
14424
} VkPhysicalDeviceRayQueryFeaturesKHR;