1/* WARNING: This is auto-generated file. Do not modify, since changes will
2 * be lost! Modify the generating script instead.
3 */
4#define VK_API_VERSION						(static_cast<deUint32>			(VK_MAKE_VERSION(1, 0, 0)))
5#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE	(static_cast<size_t>			(256))
6#define VK_MAX_EXTENSION_NAME_SIZE			(static_cast<size_t>			(256))
7#define VK_UUID_SIZE						(static_cast<size_t>			(16))
8#define VK_MAX_MEMORY_TYPES					(static_cast<size_t>			(32))
9#define VK_MAX_MEMORY_HEAPS					(static_cast<size_t>			(16))
10#define VK_MAX_DESCRIPTION_SIZE				(static_cast<size_t>			(256))
11#define VK_ATTACHMENT_UNUSED				(static_cast<deUint32>			((~0U)))
12#define VK_SUBPASS_EXTERNAL					(static_cast<deUint32>			((~0U)))
13#define VK_QUEUE_FAMILY_IGNORED				(static_cast<deUint32>			((~0U)))
14#define VK_REMAINING_MIP_LEVELS				(static_cast<deUint32>			((~0U)))
15#define VK_REMAINING_ARRAY_LAYERS			(static_cast<deUint32>			((~0U)))
16#define VK_WHOLE_SIZE						(static_cast<vk::VkDeviceSize>	((~0ULL)))
17#define VK_TRUE								(static_cast<vk::VkBool32>		(1))
18#define VK_FALSE							(static_cast<vk::VkBool32>		(0))
19
20VK_DEFINE_HANDLE					(VkInstance,					HANDLE_TYPE_INSTANCE);
21VK_DEFINE_HANDLE					(VkPhysicalDevice,				HANDLE_TYPE_PHYSICAL_DEVICE);
22VK_DEFINE_HANDLE					(VkDevice,						HANDLE_TYPE_DEVICE);
23VK_DEFINE_HANDLE					(VkQueue,						HANDLE_TYPE_QUEUE);
24VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkSemaphore,					HANDLE_TYPE_SEMAPHORE);
25VK_DEFINE_HANDLE					(VkCommandBuffer,				HANDLE_TYPE_COMMAND_BUFFER);
26VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkFence,						HANDLE_TYPE_FENCE);
27VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkDeviceMemory,				HANDLE_TYPE_DEVICE_MEMORY);
28VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkBuffer,						HANDLE_TYPE_BUFFER);
29VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkImage,						HANDLE_TYPE_IMAGE);
30VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkEvent,						HANDLE_TYPE_EVENT);
31VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkQueryPool,					HANDLE_TYPE_QUERY_POOL);
32VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkBufferView,					HANDLE_TYPE_BUFFER_VIEW);
33VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkImageView,					HANDLE_TYPE_IMAGE_VIEW);
34VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkShaderModule,				HANDLE_TYPE_SHADER_MODULE);
35VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkPipelineCache,				HANDLE_TYPE_PIPELINE_CACHE);
36VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkPipelineLayout,				HANDLE_TYPE_PIPELINE_LAYOUT);
37VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkRenderPass,					HANDLE_TYPE_RENDER_PASS);
38VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkPipeline,					HANDLE_TYPE_PIPELINE);
39VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkDescriptorSetLayout,			HANDLE_TYPE_DESCRIPTOR_SET_LAYOUT);
40VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkSampler,						HANDLE_TYPE_SAMPLER);
41VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkDescriptorPool,				HANDLE_TYPE_DESCRIPTOR_POOL);
42VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkDescriptorSet,				HANDLE_TYPE_DESCRIPTOR_SET);
43VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkFramebuffer,					HANDLE_TYPE_FRAMEBUFFER);
44VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkCommandPool,					HANDLE_TYPE_COMMAND_POOL);
45VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkSurfaceKHR,					HANDLE_TYPE_SURFACE_KHR);
46VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkSwapchainKHR,				HANDLE_TYPE_SWAPCHAIN_KHR);
47VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkDisplayKHR,					HANDLE_TYPE_DISPLAY_KHR);
48VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkDisplayModeKHR,				HANDLE_TYPE_DISPLAY_MODE_KHR);
49VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkDebugReportCallbackEXT,		HANDLE_TYPE_DEBUG_REPORT_CALLBACK_EXT);
50VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkObjectTableNVX,				HANDLE_TYPE_OBJECT_TABLE_NVX);
51VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkIndirectCommandsLayoutNVX,	HANDLE_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX);
52VK_DEFINE_NON_DISPATCHABLE_HANDLE	(VkDescriptorUpdateTemplateKHR,	HANDLE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR);
53
54enum VkPipelineCacheHeaderVersion
55{
56	VK_PIPELINE_CACHE_HEADER_VERSION_ONE	= 1,
57};
58
59enum VkResult
60{
61	VK_SUCCESS							= 0,
62	VK_NOT_READY						= 1,
63	VK_TIMEOUT							= 2,
64	VK_EVENT_SET						= 3,
65	VK_EVENT_RESET						= 4,
66	VK_INCOMPLETE						= 5,
67	VK_ERROR_OUT_OF_HOST_MEMORY			= -1,
68	VK_ERROR_OUT_OF_DEVICE_MEMORY		= -2,
69	VK_ERROR_INITIALIZATION_FAILED		= -3,
70	VK_ERROR_DEVICE_LOST				= -4,
71	VK_ERROR_MEMORY_MAP_FAILED			= -5,
72	VK_ERROR_LAYER_NOT_PRESENT			= -6,
73	VK_ERROR_EXTENSION_NOT_PRESENT		= -7,
74	VK_ERROR_FEATURE_NOT_PRESENT		= -8,
75	VK_ERROR_INCOMPATIBLE_DRIVER		= -9,
76	VK_ERROR_TOO_MANY_OBJECTS			= -10,
77	VK_ERROR_FORMAT_NOT_SUPPORTED		= -11,
78	VK_ERROR_FRAGMENTED_POOL			= -12,
79	VK_ERROR_SURFACE_LOST_KHR			= -1000000000,
80	VK_ERROR_NATIVE_WINDOW_IN_USE_KHR	= -1000000001,
81	VK_SUBOPTIMAL_KHR					= 1000001003,
82	VK_ERROR_OUT_OF_DATE_KHR			= -1000001004,
83	VK_ERROR_INCOMPATIBLE_DISPLAY_KHR	= -1000003001,
84	VK_ERROR_VALIDATION_FAILED_EXT		= -1000011001,
85	VK_ERROR_INVALID_SHADER_NV			= -1000012000,
86	VK_ERROR_OUT_OF_POOL_MEMORY_KHR		= -1000069000,
87};
88
89enum VkStructureType
90{
91	VK_STRUCTURE_TYPE_APPLICATION_INFO										= 0,
92	VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO									= 1,
93	VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO								= 2,
94	VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO									= 3,
95	VK_STRUCTURE_TYPE_SUBMIT_INFO											= 4,
96	VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO									= 5,
97	VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE									= 6,
98	VK_STRUCTURE_TYPE_BIND_SPARSE_INFO										= 7,
99	VK_STRUCTURE_TYPE_FENCE_CREATE_INFO										= 8,
100	VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO									= 9,
101	VK_STRUCTURE_TYPE_EVENT_CREATE_INFO										= 10,
102	VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO								= 11,
103	VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO									= 12,
104	VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO								= 13,
105	VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO										= 14,
106	VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO								= 15,
107	VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO								= 16,
108	VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO							= 17,
109	VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO						= 18,
110	VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO				= 19,
111	VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO				= 20,
112	VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO				= 21,
113	VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO					= 22,
114	VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO				= 23,
115	VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO				= 24,
116	VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO				= 25,
117	VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO				= 26,
118	VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO					= 27,
119	VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO							= 28,
120	VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO							= 29,
121	VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO							= 30,
122	VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO									= 31,
123	VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO						= 32,
124	VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO							= 33,
125	VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO							= 34,
126	VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET									= 35,
127	VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET									= 36,
128	VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO								= 37,
129	VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO								= 38,
130	VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO								= 39,
131	VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO							= 40,
132	VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO						= 41,
133	VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO								= 42,
134	VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO								= 43,
135	VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER									= 44,
136	VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER									= 45,
137	VK_STRUCTURE_TYPE_MEMORY_BARRIER										= 46,
138	VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO							= 47,
139	VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO								= 48,
140	VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR								= 1000001000,
141	VK_STRUCTURE_TYPE_PRESENT_INFO_KHR										= 1000001001,
142	VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR							= 1000002000,
143	VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR						= 1000002001,
144	VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR								= 1000003000,
145	VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR							= 1000004000,
146	VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR							= 1000005000,
147	VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR						= 1000006000,
148	VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR							= 1000007000,
149	VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR						= 1000008000,
150	VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR							= 1000009000,
151	VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT					= 1000011000,
152	VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD	= 1000018000,
153	VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT						= 1000022000,
154	VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT						= 1000022001,
155	VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT							= 1000022002,
156	VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV				= 1000026000,
157	VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV			= 1000026001,
158	VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV			= 1000026002,
159	VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV					= 1000056000,
160	VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV						= 1000056001,
161	VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV					= 1000057000,
162	VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV					= 1000057001,
163	VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV				= 1000058000,
164	VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR						= 1000059000,
165	VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR						= 1000059001,
166	VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR								= 1000059002,
167	VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR							= 1000059003,
168	VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR				= 1000059004,
169	VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR							= 1000059005,
170	VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR				= 1000059006,
171	VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR					= 1000059007,
172	VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR		= 1000059008,
173	VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT									= 1000061000,
174	VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR		= 1000080000,
175	VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR									= 1000084000,
176	VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR				= 1000111000,
177	VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR			= 1000085000,
178	VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX							= 1000086000,
179	VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX				= 1000086001,
180	VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX							= 1000086002,
181	VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX				= 1000086003,
182	VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX					= 1000086004,
183	VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX				= 1000086005,
184	VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE								= 1000092000,
185	VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR					= 1000119000,
186	VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR							= 1000119001,
187	VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR									= 1000119002,
188};
189
190enum VkSystemAllocationScope
191{
192	VK_SYSTEM_ALLOCATION_SCOPE_COMMAND	= 0,
193	VK_SYSTEM_ALLOCATION_SCOPE_OBJECT	= 1,
194	VK_SYSTEM_ALLOCATION_SCOPE_CACHE	= 2,
195	VK_SYSTEM_ALLOCATION_SCOPE_DEVICE	= 3,
196	VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE	= 4,
197
198	VK_SYSTEM_ALLOCATION_SCOPE_LAST
199};
200
201enum VkInternalAllocationType
202{
203	VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE	= 0,
204
205	VK_INTERNAL_ALLOCATION_TYPE_LAST
206};
207
208enum VkFormat
209{
210	VK_FORMAT_UNDEFINED						= 0,
211	VK_FORMAT_R4G4_UNORM_PACK8				= 1,
212	VK_FORMAT_R4G4B4A4_UNORM_PACK16			= 2,
213	VK_FORMAT_B4G4R4A4_UNORM_PACK16			= 3,
214	VK_FORMAT_R5G6B5_UNORM_PACK16			= 4,
215	VK_FORMAT_B5G6R5_UNORM_PACK16			= 5,
216	VK_FORMAT_R5G5B5A1_UNORM_PACK16			= 6,
217	VK_FORMAT_B5G5R5A1_UNORM_PACK16			= 7,
218	VK_FORMAT_A1R5G5B5_UNORM_PACK16			= 8,
219	VK_FORMAT_R8_UNORM						= 9,
220	VK_FORMAT_R8_SNORM						= 10,
221	VK_FORMAT_R8_USCALED					= 11,
222	VK_FORMAT_R8_SSCALED					= 12,
223	VK_FORMAT_R8_UINT						= 13,
224	VK_FORMAT_R8_SINT						= 14,
225	VK_FORMAT_R8_SRGB						= 15,
226	VK_FORMAT_R8G8_UNORM					= 16,
227	VK_FORMAT_R8G8_SNORM					= 17,
228	VK_FORMAT_R8G8_USCALED					= 18,
229	VK_FORMAT_R8G8_SSCALED					= 19,
230	VK_FORMAT_R8G8_UINT						= 20,
231	VK_FORMAT_R8G8_SINT						= 21,
232	VK_FORMAT_R8G8_SRGB						= 22,
233	VK_FORMAT_R8G8B8_UNORM					= 23,
234	VK_FORMAT_R8G8B8_SNORM					= 24,
235	VK_FORMAT_R8G8B8_USCALED				= 25,
236	VK_FORMAT_R8G8B8_SSCALED				= 26,
237	VK_FORMAT_R8G8B8_UINT					= 27,
238	VK_FORMAT_R8G8B8_SINT					= 28,
239	VK_FORMAT_R8G8B8_SRGB					= 29,
240	VK_FORMAT_B8G8R8_UNORM					= 30,
241	VK_FORMAT_B8G8R8_SNORM					= 31,
242	VK_FORMAT_B8G8R8_USCALED				= 32,
243	VK_FORMAT_B8G8R8_SSCALED				= 33,
244	VK_FORMAT_B8G8R8_UINT					= 34,
245	VK_FORMAT_B8G8R8_SINT					= 35,
246	VK_FORMAT_B8G8R8_SRGB					= 36,
247	VK_FORMAT_R8G8B8A8_UNORM				= 37,
248	VK_FORMAT_R8G8B8A8_SNORM				= 38,
249	VK_FORMAT_R8G8B8A8_USCALED				= 39,
250	VK_FORMAT_R8G8B8A8_SSCALED				= 40,
251	VK_FORMAT_R8G8B8A8_UINT					= 41,
252	VK_FORMAT_R8G8B8A8_SINT					= 42,
253	VK_FORMAT_R8G8B8A8_SRGB					= 43,
254	VK_FORMAT_B8G8R8A8_UNORM				= 44,
255	VK_FORMAT_B8G8R8A8_SNORM				= 45,
256	VK_FORMAT_B8G8R8A8_USCALED				= 46,
257	VK_FORMAT_B8G8R8A8_SSCALED				= 47,
258	VK_FORMAT_B8G8R8A8_UINT					= 48,
259	VK_FORMAT_B8G8R8A8_SINT					= 49,
260	VK_FORMAT_B8G8R8A8_SRGB					= 50,
261	VK_FORMAT_A8B8G8R8_UNORM_PACK32			= 51,
262	VK_FORMAT_A8B8G8R8_SNORM_PACK32			= 52,
263	VK_FORMAT_A8B8G8R8_USCALED_PACK32		= 53,
264	VK_FORMAT_A8B8G8R8_SSCALED_PACK32		= 54,
265	VK_FORMAT_A8B8G8R8_UINT_PACK32			= 55,
266	VK_FORMAT_A8B8G8R8_SINT_PACK32			= 56,
267	VK_FORMAT_A8B8G8R8_SRGB_PACK32			= 57,
268	VK_FORMAT_A2R10G10B10_UNORM_PACK32		= 58,
269	VK_FORMAT_A2R10G10B10_SNORM_PACK32		= 59,
270	VK_FORMAT_A2R10G10B10_USCALED_PACK32	= 60,
271	VK_FORMAT_A2R10G10B10_SSCALED_PACK32	= 61,
272	VK_FORMAT_A2R10G10B10_UINT_PACK32		= 62,
273	VK_FORMAT_A2R10G10B10_SINT_PACK32		= 63,
274	VK_FORMAT_A2B10G10R10_UNORM_PACK32		= 64,
275	VK_FORMAT_A2B10G10R10_SNORM_PACK32		= 65,
276	VK_FORMAT_A2B10G10R10_USCALED_PACK32	= 66,
277	VK_FORMAT_A2B10G10R10_SSCALED_PACK32	= 67,
278	VK_FORMAT_A2B10G10R10_UINT_PACK32		= 68,
279	VK_FORMAT_A2B10G10R10_SINT_PACK32		= 69,
280	VK_FORMAT_R16_UNORM						= 70,
281	VK_FORMAT_R16_SNORM						= 71,
282	VK_FORMAT_R16_USCALED					= 72,
283	VK_FORMAT_R16_SSCALED					= 73,
284	VK_FORMAT_R16_UINT						= 74,
285	VK_FORMAT_R16_SINT						= 75,
286	VK_FORMAT_R16_SFLOAT					= 76,
287	VK_FORMAT_R16G16_UNORM					= 77,
288	VK_FORMAT_R16G16_SNORM					= 78,
289	VK_FORMAT_R16G16_USCALED				= 79,
290	VK_FORMAT_R16G16_SSCALED				= 80,
291	VK_FORMAT_R16G16_UINT					= 81,
292	VK_FORMAT_R16G16_SINT					= 82,
293	VK_FORMAT_R16G16_SFLOAT					= 83,
294	VK_FORMAT_R16G16B16_UNORM				= 84,
295	VK_FORMAT_R16G16B16_SNORM				= 85,
296	VK_FORMAT_R16G16B16_USCALED				= 86,
297	VK_FORMAT_R16G16B16_SSCALED				= 87,
298	VK_FORMAT_R16G16B16_UINT				= 88,
299	VK_FORMAT_R16G16B16_SINT				= 89,
300	VK_FORMAT_R16G16B16_SFLOAT				= 90,
301	VK_FORMAT_R16G16B16A16_UNORM			= 91,
302	VK_FORMAT_R16G16B16A16_SNORM			= 92,
303	VK_FORMAT_R16G16B16A16_USCALED			= 93,
304	VK_FORMAT_R16G16B16A16_SSCALED			= 94,
305	VK_FORMAT_R16G16B16A16_UINT				= 95,
306	VK_FORMAT_R16G16B16A16_SINT				= 96,
307	VK_FORMAT_R16G16B16A16_SFLOAT			= 97,
308	VK_FORMAT_R32_UINT						= 98,
309	VK_FORMAT_R32_SINT						= 99,
310	VK_FORMAT_R32_SFLOAT					= 100,
311	VK_FORMAT_R32G32_UINT					= 101,
312	VK_FORMAT_R32G32_SINT					= 102,
313	VK_FORMAT_R32G32_SFLOAT					= 103,
314	VK_FORMAT_R32G32B32_UINT				= 104,
315	VK_FORMAT_R32G32B32_SINT				= 105,
316	VK_FORMAT_R32G32B32_SFLOAT				= 106,
317	VK_FORMAT_R32G32B32A32_UINT				= 107,
318	VK_FORMAT_R32G32B32A32_SINT				= 108,
319	VK_FORMAT_R32G32B32A32_SFLOAT			= 109,
320	VK_FORMAT_R64_UINT						= 110,
321	VK_FORMAT_R64_SINT						= 111,
322	VK_FORMAT_R64_SFLOAT					= 112,
323	VK_FORMAT_R64G64_UINT					= 113,
324	VK_FORMAT_R64G64_SINT					= 114,
325	VK_FORMAT_R64G64_SFLOAT					= 115,
326	VK_FORMAT_R64G64B64_UINT				= 116,
327	VK_FORMAT_R64G64B64_SINT				= 117,
328	VK_FORMAT_R64G64B64_SFLOAT				= 118,
329	VK_FORMAT_R64G64B64A64_UINT				= 119,
330	VK_FORMAT_R64G64B64A64_SINT				= 120,
331	VK_FORMAT_R64G64B64A64_SFLOAT			= 121,
332	VK_FORMAT_B10G11R11_UFLOAT_PACK32		= 122,
333	VK_FORMAT_E5B9G9R9_UFLOAT_PACK32		= 123,
334	VK_FORMAT_D16_UNORM						= 124,
335	VK_FORMAT_X8_D24_UNORM_PACK32			= 125,
336	VK_FORMAT_D32_SFLOAT					= 126,
337	VK_FORMAT_S8_UINT						= 127,
338	VK_FORMAT_D16_UNORM_S8_UINT				= 128,
339	VK_FORMAT_D24_UNORM_S8_UINT				= 129,
340	VK_FORMAT_D32_SFLOAT_S8_UINT			= 130,
341	VK_FORMAT_BC1_RGB_UNORM_BLOCK			= 131,
342	VK_FORMAT_BC1_RGB_SRGB_BLOCK			= 132,
343	VK_FORMAT_BC1_RGBA_UNORM_BLOCK			= 133,
344	VK_FORMAT_BC1_RGBA_SRGB_BLOCK			= 134,
345	VK_FORMAT_BC2_UNORM_BLOCK				= 135,
346	VK_FORMAT_BC2_SRGB_BLOCK				= 136,
347	VK_FORMAT_BC3_UNORM_BLOCK				= 137,
348	VK_FORMAT_BC3_SRGB_BLOCK				= 138,
349	VK_FORMAT_BC4_UNORM_BLOCK				= 139,
350	VK_FORMAT_BC4_SNORM_BLOCK				= 140,
351	VK_FORMAT_BC5_UNORM_BLOCK				= 141,
352	VK_FORMAT_BC5_SNORM_BLOCK				= 142,
353	VK_FORMAT_BC6H_UFLOAT_BLOCK				= 143,
354	VK_FORMAT_BC6H_SFLOAT_BLOCK				= 144,
355	VK_FORMAT_BC7_UNORM_BLOCK				= 145,
356	VK_FORMAT_BC7_SRGB_BLOCK				= 146,
357	VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK		= 147,
358	VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK		= 148,
359	VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK		= 149,
360	VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK		= 150,
361	VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK		= 151,
362	VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK		= 152,
363	VK_FORMAT_EAC_R11_UNORM_BLOCK			= 153,
364	VK_FORMAT_EAC_R11_SNORM_BLOCK			= 154,
365	VK_FORMAT_EAC_R11G11_UNORM_BLOCK		= 155,
366	VK_FORMAT_EAC_R11G11_SNORM_BLOCK		= 156,
367	VK_FORMAT_ASTC_4x4_UNORM_BLOCK			= 157,
368	VK_FORMAT_ASTC_4x4_SRGB_BLOCK			= 158,
369	VK_FORMAT_ASTC_5x4_UNORM_BLOCK			= 159,
370	VK_FORMAT_ASTC_5x4_SRGB_BLOCK			= 160,
371	VK_FORMAT_ASTC_5x5_UNORM_BLOCK			= 161,
372	VK_FORMAT_ASTC_5x5_SRGB_BLOCK			= 162,
373	VK_FORMAT_ASTC_6x5_UNORM_BLOCK			= 163,
374	VK_FORMAT_ASTC_6x5_SRGB_BLOCK			= 164,
375	VK_FORMAT_ASTC_6x6_UNORM_BLOCK			= 165,
376	VK_FORMAT_ASTC_6x6_SRGB_BLOCK			= 166,
377	VK_FORMAT_ASTC_8x5_UNORM_BLOCK			= 167,
378	VK_FORMAT_ASTC_8x5_SRGB_BLOCK			= 168,
379	VK_FORMAT_ASTC_8x6_UNORM_BLOCK			= 169,
380	VK_FORMAT_ASTC_8x6_SRGB_BLOCK			= 170,
381	VK_FORMAT_ASTC_8x8_UNORM_BLOCK			= 171,
382	VK_FORMAT_ASTC_8x8_SRGB_BLOCK			= 172,
383	VK_FORMAT_ASTC_10x5_UNORM_BLOCK			= 173,
384	VK_FORMAT_ASTC_10x5_SRGB_BLOCK			= 174,
385	VK_FORMAT_ASTC_10x6_UNORM_BLOCK			= 175,
386	VK_FORMAT_ASTC_10x6_SRGB_BLOCK			= 176,
387	VK_FORMAT_ASTC_10x8_UNORM_BLOCK			= 177,
388	VK_FORMAT_ASTC_10x8_SRGB_BLOCK			= 178,
389	VK_FORMAT_ASTC_10x10_UNORM_BLOCK		= 179,
390	VK_FORMAT_ASTC_10x10_SRGB_BLOCK			= 180,
391	VK_FORMAT_ASTC_12x10_UNORM_BLOCK		= 181,
392	VK_FORMAT_ASTC_12x10_SRGB_BLOCK			= 182,
393	VK_FORMAT_ASTC_12x12_UNORM_BLOCK		= 183,
394	VK_FORMAT_ASTC_12x12_SRGB_BLOCK			= 184,
395	VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG	= 1000054000,
396	VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG	= 1000054001,
397	VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG	= 1000054002,
398	VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG	= 1000054003,
399	VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG	= 1000054004,
400	VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG	= 1000054005,
401	VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG	= 1000054006,
402	VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG	= 1000054007,
403};
404
405enum VkImageType
406{
407	VK_IMAGE_TYPE_1D	= 0,
408	VK_IMAGE_TYPE_2D	= 1,
409	VK_IMAGE_TYPE_3D	= 2,
410
411	VK_IMAGE_TYPE_LAST
412};
413
414enum VkImageTiling
415{
416	VK_IMAGE_TILING_OPTIMAL	= 0,
417	VK_IMAGE_TILING_LINEAR	= 1,
418
419	VK_IMAGE_TILING_LAST
420};
421
422enum VkPhysicalDeviceType
423{
424	VK_PHYSICAL_DEVICE_TYPE_OTHER			= 0,
425	VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU	= 1,
426	VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU	= 2,
427	VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU		= 3,
428	VK_PHYSICAL_DEVICE_TYPE_CPU				= 4,
429
430	VK_PHYSICAL_DEVICE_TYPE_LAST
431};
432
433enum VkQueryType
434{
435	VK_QUERY_TYPE_OCCLUSION				= 0,
436	VK_QUERY_TYPE_PIPELINE_STATISTICS	= 1,
437	VK_QUERY_TYPE_TIMESTAMP				= 2,
438
439	VK_QUERY_TYPE_LAST
440};
441
442enum VkSharingMode
443{
444	VK_SHARING_MODE_EXCLUSIVE	= 0,
445	VK_SHARING_MODE_CONCURRENT	= 1,
446
447	VK_SHARING_MODE_LAST
448};
449
450enum VkImageLayout
451{
452	VK_IMAGE_LAYOUT_UNDEFINED							= 0,
453	VK_IMAGE_LAYOUT_GENERAL								= 1,
454	VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL			= 2,
455	VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL	= 3,
456	VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL		= 4,
457	VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL			= 5,
458	VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL				= 6,
459	VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL				= 7,
460	VK_IMAGE_LAYOUT_PREINITIALIZED						= 8,
461	VK_IMAGE_LAYOUT_PRESENT_SRC_KHR						= 1000001002,
462	VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR					= 1000111000,
463};
464
465enum VkImageViewType
466{
467	VK_IMAGE_VIEW_TYPE_1D			= 0,
468	VK_IMAGE_VIEW_TYPE_2D			= 1,
469	VK_IMAGE_VIEW_TYPE_3D			= 2,
470	VK_IMAGE_VIEW_TYPE_CUBE			= 3,
471	VK_IMAGE_VIEW_TYPE_1D_ARRAY		= 4,
472	VK_IMAGE_VIEW_TYPE_2D_ARRAY		= 5,
473	VK_IMAGE_VIEW_TYPE_CUBE_ARRAY	= 6,
474
475	VK_IMAGE_VIEW_TYPE_LAST
476};
477
478enum VkComponentSwizzle
479{
480	VK_COMPONENT_SWIZZLE_IDENTITY	= 0,
481	VK_COMPONENT_SWIZZLE_ZERO		= 1,
482	VK_COMPONENT_SWIZZLE_ONE		= 2,
483	VK_COMPONENT_SWIZZLE_R			= 3,
484	VK_COMPONENT_SWIZZLE_G			= 4,
485	VK_COMPONENT_SWIZZLE_B			= 5,
486	VK_COMPONENT_SWIZZLE_A			= 6,
487
488	VK_COMPONENT_SWIZZLE_LAST
489};
490
491enum VkVertexInputRate
492{
493	VK_VERTEX_INPUT_RATE_VERTEX		= 0,
494	VK_VERTEX_INPUT_RATE_INSTANCE	= 1,
495
496	VK_VERTEX_INPUT_RATE_LAST
497};
498
499enum VkPrimitiveTopology
500{
501	VK_PRIMITIVE_TOPOLOGY_POINT_LIST					= 0,
502	VK_PRIMITIVE_TOPOLOGY_LINE_LIST						= 1,
503	VK_PRIMITIVE_TOPOLOGY_LINE_STRIP					= 2,
504	VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST					= 3,
505	VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP				= 4,
506	VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN					= 5,
507	VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY		= 6,
508	VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY		= 7,
509	VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY	= 8,
510	VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY	= 9,
511	VK_PRIMITIVE_TOPOLOGY_PATCH_LIST					= 10,
512
513	VK_PRIMITIVE_TOPOLOGY_LAST
514};
515
516enum VkPolygonMode
517{
518	VK_POLYGON_MODE_FILL	= 0,
519	VK_POLYGON_MODE_LINE	= 1,
520	VK_POLYGON_MODE_POINT	= 2,
521
522	VK_POLYGON_MODE_LAST
523};
524
525enum VkFrontFace
526{
527	VK_FRONT_FACE_COUNTER_CLOCKWISE	= 0,
528	VK_FRONT_FACE_CLOCKWISE			= 1,
529
530	VK_FRONT_FACE_LAST
531};
532
533enum VkCompareOp
534{
535	VK_COMPARE_OP_NEVER				= 0,
536	VK_COMPARE_OP_LESS				= 1,
537	VK_COMPARE_OP_EQUAL				= 2,
538	VK_COMPARE_OP_LESS_OR_EQUAL		= 3,
539	VK_COMPARE_OP_GREATER			= 4,
540	VK_COMPARE_OP_NOT_EQUAL			= 5,
541	VK_COMPARE_OP_GREATER_OR_EQUAL	= 6,
542	VK_COMPARE_OP_ALWAYS			= 7,
543
544	VK_COMPARE_OP_LAST
545};
546
547enum VkStencilOp
548{
549	VK_STENCIL_OP_KEEP					= 0,
550	VK_STENCIL_OP_ZERO					= 1,
551	VK_STENCIL_OP_REPLACE				= 2,
552	VK_STENCIL_OP_INCREMENT_AND_CLAMP	= 3,
553	VK_STENCIL_OP_DECREMENT_AND_CLAMP	= 4,
554	VK_STENCIL_OP_INVERT				= 5,
555	VK_STENCIL_OP_INCREMENT_AND_WRAP	= 6,
556	VK_STENCIL_OP_DECREMENT_AND_WRAP	= 7,
557
558	VK_STENCIL_OP_LAST
559};
560
561enum VkLogicOp
562{
563	VK_LOGIC_OP_CLEAR			= 0,
564	VK_LOGIC_OP_AND				= 1,
565	VK_LOGIC_OP_AND_REVERSE		= 2,
566	VK_LOGIC_OP_COPY			= 3,
567	VK_LOGIC_OP_AND_INVERTED	= 4,
568	VK_LOGIC_OP_NO_OP			= 5,
569	VK_LOGIC_OP_XOR				= 6,
570	VK_LOGIC_OP_OR				= 7,
571	VK_LOGIC_OP_NOR				= 8,
572	VK_LOGIC_OP_EQUIVALENT		= 9,
573	VK_LOGIC_OP_INVERT			= 10,
574	VK_LOGIC_OP_OR_REVERSE		= 11,
575	VK_LOGIC_OP_COPY_INVERTED	= 12,
576	VK_LOGIC_OP_OR_INVERTED		= 13,
577	VK_LOGIC_OP_NAND			= 14,
578	VK_LOGIC_OP_SET				= 15,
579
580	VK_LOGIC_OP_LAST
581};
582
583enum VkBlendFactor
584{
585	VK_BLEND_FACTOR_ZERO						= 0,
586	VK_BLEND_FACTOR_ONE							= 1,
587	VK_BLEND_FACTOR_SRC_COLOR					= 2,
588	VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR			= 3,
589	VK_BLEND_FACTOR_DST_COLOR					= 4,
590	VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR			= 5,
591	VK_BLEND_FACTOR_SRC_ALPHA					= 6,
592	VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA			= 7,
593	VK_BLEND_FACTOR_DST_ALPHA					= 8,
594	VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA			= 9,
595	VK_BLEND_FACTOR_CONSTANT_COLOR				= 10,
596	VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR	= 11,
597	VK_BLEND_FACTOR_CONSTANT_ALPHA				= 12,
598	VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA	= 13,
599	VK_BLEND_FACTOR_SRC_ALPHA_SATURATE			= 14,
600	VK_BLEND_FACTOR_SRC1_COLOR					= 15,
601	VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR		= 16,
602	VK_BLEND_FACTOR_SRC1_ALPHA					= 17,
603	VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA		= 18,
604
605	VK_BLEND_FACTOR_LAST
606};
607
608enum VkBlendOp
609{
610	VK_BLEND_OP_ADD					= 0,
611	VK_BLEND_OP_SUBTRACT			= 1,
612	VK_BLEND_OP_REVERSE_SUBTRACT	= 2,
613	VK_BLEND_OP_MIN					= 3,
614	VK_BLEND_OP_MAX					= 4,
615
616	VK_BLEND_OP_LAST
617};
618
619enum VkDynamicState
620{
621	VK_DYNAMIC_STATE_VIEWPORT				= 0,
622	VK_DYNAMIC_STATE_SCISSOR				= 1,
623	VK_DYNAMIC_STATE_LINE_WIDTH				= 2,
624	VK_DYNAMIC_STATE_DEPTH_BIAS				= 3,
625	VK_DYNAMIC_STATE_BLEND_CONSTANTS		= 4,
626	VK_DYNAMIC_STATE_DEPTH_BOUNDS			= 5,
627	VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK	= 6,
628	VK_DYNAMIC_STATE_STENCIL_WRITE_MASK		= 7,
629	VK_DYNAMIC_STATE_STENCIL_REFERENCE		= 8,
630
631	VK_DYNAMIC_STATE_LAST
632};
633
634enum VkFilter
635{
636	VK_FILTER_NEAREST	= 0,
637	VK_FILTER_LINEAR	= 1,
638	VK_FILTER_CUBIC_IMG	= 1000015000,
639};
640
641enum VkSamplerMipmapMode
642{
643	VK_SAMPLER_MIPMAP_MODE_NEAREST	= 0,
644	VK_SAMPLER_MIPMAP_MODE_LINEAR	= 1,
645
646	VK_SAMPLER_MIPMAP_MODE_LAST
647};
648
649enum VkSamplerAddressMode
650{
651	VK_SAMPLER_ADDRESS_MODE_REPEAT					= 0,
652	VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT			= 1,
653	VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE			= 2,
654	VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER			= 3,
655	VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE	= 4,
656
657	VK_SAMPLER_ADDRESS_MODE_LAST
658};
659
660enum VkBorderColor
661{
662	VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK	= 0,
663	VK_BORDER_COLOR_INT_TRANSPARENT_BLACK	= 1,
664	VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK		= 2,
665	VK_BORDER_COLOR_INT_OPAQUE_BLACK		= 3,
666	VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE		= 4,
667	VK_BORDER_COLOR_INT_OPAQUE_WHITE		= 5,
668
669	VK_BORDER_COLOR_LAST
670};
671
672enum VkDescriptorType
673{
674	VK_DESCRIPTOR_TYPE_SAMPLER					= 0,
675	VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER	= 1,
676	VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE			= 2,
677	VK_DESCRIPTOR_TYPE_STORAGE_IMAGE			= 3,
678	VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER		= 4,
679	VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER		= 5,
680	VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER			= 6,
681	VK_DESCRIPTOR_TYPE_STORAGE_BUFFER			= 7,
682	VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC	= 8,
683	VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC	= 9,
684	VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT			= 10,
685
686	VK_DESCRIPTOR_TYPE_LAST
687};
688
689enum VkAttachmentLoadOp
690{
691	VK_ATTACHMENT_LOAD_OP_LOAD		= 0,
692	VK_ATTACHMENT_LOAD_OP_CLEAR		= 1,
693	VK_ATTACHMENT_LOAD_OP_DONT_CARE	= 2,
694
695	VK_ATTACHMENT_LOAD_OP_LAST
696};
697
698enum VkAttachmentStoreOp
699{
700	VK_ATTACHMENT_STORE_OP_STORE		= 0,
701	VK_ATTACHMENT_STORE_OP_DONT_CARE	= 1,
702
703	VK_ATTACHMENT_STORE_OP_LAST
704};
705
706enum VkPipelineBindPoint
707{
708	VK_PIPELINE_BIND_POINT_GRAPHICS	= 0,
709	VK_PIPELINE_BIND_POINT_COMPUTE	= 1,
710
711	VK_PIPELINE_BIND_POINT_LAST
712};
713
714enum VkCommandBufferLevel
715{
716	VK_COMMAND_BUFFER_LEVEL_PRIMARY		= 0,
717	VK_COMMAND_BUFFER_LEVEL_SECONDARY	= 1,
718
719	VK_COMMAND_BUFFER_LEVEL_LAST
720};
721
722enum VkIndexType
723{
724	VK_INDEX_TYPE_UINT16	= 0,
725	VK_INDEX_TYPE_UINT32	= 1,
726
727	VK_INDEX_TYPE_LAST
728};
729
730enum VkSubpassContents
731{
732	VK_SUBPASS_CONTENTS_INLINE						= 0,
733	VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS	= 1,
734
735	VK_SUBPASS_CONTENTS_LAST
736};
737
738enum VkColorSpaceKHR
739{
740	VK_COLOR_SPACE_SRGB_NONLINEAR_KHR		= 0,
741	VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT	= 1000104001,
742	VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT	= 1000104002,
743	VK_COLOR_SPACE_DCI_P3_LINEAR_EXT		= 1000104003,
744	VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT		= 1000104004,
745	VK_COLOR_SPACE_BT709_LINEAR_EXT			= 1000104005,
746	VK_COLOR_SPACE_BT709_NONLINEAR_EXT		= 1000104006,
747	VK_COLOR_SPACE_BT2020_LINEAR_EXT		= 1000104007,
748	VK_COLOR_SPACE_HDR10_ST2084_EXT			= 1000104008,
749	VK_COLOR_SPACE_DOLBYVISION_EXT			= 1000104009,
750	VK_COLOR_SPACE_HDR10_HLG_EXT			= 1000104010,
751	VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT		= 1000104011,
752	VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT	= 1000104012,
753	VK_COLOR_SPACE_PASS_THROUGH_EXT			= 1000104013,
754};
755
756enum VkPresentModeKHR
757{
758	VK_PRESENT_MODE_IMMEDIATE_KHR					= 0,
759	VK_PRESENT_MODE_MAILBOX_KHR						= 1,
760	VK_PRESENT_MODE_FIFO_KHR						= 2,
761	VK_PRESENT_MODE_FIFO_RELAXED_KHR				= 3,
762	VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR		= 1000111000,
763	VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR	= 1000111001,
764};
765
766enum VkDebugReportObjectTypeEXT
767{
768	VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT					= 0,
769	VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT				= 1,
770	VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT			= 2,
771	VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT					= 3,
772	VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT					= 4,
773	VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT				= 5,
774	VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT			= 6,
775	VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT					= 7,
776	VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT			= 8,
777	VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT					= 9,
778	VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT					= 10,
779	VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT					= 11,
780	VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT				= 12,
781	VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT				= 13,
782	VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT				= 14,
783	VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT			= 15,
784	VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT			= 16,
785	VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT			= 17,
786	VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT				= 18,
787	VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT				= 19,
788	VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT	= 20,
789	VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT					= 21,
790	VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT			= 22,
791	VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT			= 23,
792	VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT				= 24,
793	VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT			= 25,
794	VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT				= 26,
795	VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT			= 27,
796	VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT			= 28,
797
798	VK_DEBUG_REPORT_OBJECT_TYPE_EXT_LAST
799};
800
801enum VkDebugReportErrorEXT
802{
803	VK_DEBUG_REPORT_ERROR_NONE_EXT			= 0,
804	VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT	= 1,
805
806	VK_DEBUG_REPORT_ERROR_EXT_LAST
807};
808
809enum VkRasterizationOrderAMD
810{
811	VK_RASTERIZATION_ORDER_STRICT_AMD	= 0,
812	VK_RASTERIZATION_ORDER_RELAXED_AMD	= 1,
813
814	VK_RASTERIZATION_ORDER_AMD_LAST
815};
816
817enum VkValidationCheckEXT
818{
819	VK_VALIDATION_CHECK_ALL_EXT	= 0,
820
821	VK_VALIDATION_CHECK_EXT_LAST
822};
823
824enum VkIndirectCommandsTokenTypeNVX
825{
826	VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX			= 0,
827	VK_INDIRECT_COMMANDS_TOKEN_DESCRIPTOR_SET_NVX	= 1,
828	VK_INDIRECT_COMMANDS_TOKEN_INDEX_BUFFER_NVX		= 2,
829	VK_INDIRECT_COMMANDS_TOKEN_VERTEX_BUFFER_NVX	= 3,
830	VK_INDIRECT_COMMANDS_TOKEN_PUSH_CONSTANT_NVX	= 4,
831	VK_INDIRECT_COMMANDS_TOKEN_DRAW_INDEXED_NVX		= 5,
832	VK_INDIRECT_COMMANDS_TOKEN_DRAW_NVX				= 6,
833	VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX			= 7,
834
835	VK_INDIRECT_COMMANDS_TOKEN_TYPE_NVX_LAST
836};
837
838enum VkObjectEntryTypeNVX
839{
840	VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX	= 0,
841	VK_OBJECT_ENTRY_PIPELINE_NVX		= 1,
842	VK_OBJECT_ENTRY_INDEX_BUFFER_NVX	= 2,
843	VK_OBJECT_ENTRY_VERTEX_BUFFER_NVX	= 3,
844	VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX	= 4,
845
846	VK_OBJECT_ENTRY_TYPE_NVX_LAST
847};
848
849enum VkDescriptorUpdateTemplateTypeKHR
850{
851	VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR	= 0,
852	VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR	= 1,
853
854	VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_KHR_LAST
855};
856
857enum VkFormatFeatureFlagBits
858{
859	VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT						= 0x00000001,
860	VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT						= 0x00000002,
861	VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT				= 0x00000004,
862	VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT				= 0x00000008,
863	VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT				= 0x00000010,
864	VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT		= 0x00000020,
865	VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT						= 0x00000040,
866	VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT					= 0x00000080,
867	VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT			= 0x00000100,
868	VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT			= 0x00000200,
869	VK_FORMAT_FEATURE_BLIT_SRC_BIT							= 0x00000400,
870	VK_FORMAT_FEATURE_BLIT_DST_BIT							= 0x00000800,
871	VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT		= 0x00001000,
872	VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG	= 0x00002000,
873	VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR					= 0x00004000,
874	VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR					= 0x00008000,
875};
876typedef deUint32 VkFormatFeatureFlags;
877
878enum VkImageUsageFlagBits
879{
880	VK_IMAGE_USAGE_TRANSFER_SRC_BIT				= 0x00000001,
881	VK_IMAGE_USAGE_TRANSFER_DST_BIT				= 0x00000002,
882	VK_IMAGE_USAGE_SAMPLED_BIT					= 0x00000004,
883	VK_IMAGE_USAGE_STORAGE_BIT					= 0x00000008,
884	VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT			= 0x00000010,
885	VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT	= 0x00000020,
886	VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT		= 0x00000040,
887	VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT			= 0x00000080,
888};
889typedef deUint32 VkImageUsageFlags;
890
891enum VkImageCreateFlagBits
892{
893	VK_IMAGE_CREATE_SPARSE_BINDING_BIT			= 0x00000001,
894	VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT		= 0x00000002,
895	VK_IMAGE_CREATE_SPARSE_ALIASED_BIT			= 0x00000004,
896	VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT			= 0x00000008,
897	VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT			= 0x00000010,
898	VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR	= 0x00000020,
899};
900typedef deUint32 VkImageCreateFlags;
901
902enum VkSampleCountFlagBits
903{
904	VK_SAMPLE_COUNT_1_BIT	= 0x00000001,
905	VK_SAMPLE_COUNT_2_BIT	= 0x00000002,
906	VK_SAMPLE_COUNT_4_BIT	= 0x00000004,
907	VK_SAMPLE_COUNT_8_BIT	= 0x00000008,
908	VK_SAMPLE_COUNT_16_BIT	= 0x00000010,
909	VK_SAMPLE_COUNT_32_BIT	= 0x00000020,
910	VK_SAMPLE_COUNT_64_BIT	= 0x00000040,
911};
912typedef deUint32 VkSampleCountFlags;
913
914enum VkQueueFlagBits
915{
916	VK_QUEUE_GRAPHICS_BIT		= 0x00000001,
917	VK_QUEUE_COMPUTE_BIT		= 0x00000002,
918	VK_QUEUE_TRANSFER_BIT		= 0x00000004,
919	VK_QUEUE_SPARSE_BINDING_BIT	= 0x00000008,
920};
921typedef deUint32 VkQueueFlags;
922
923enum VkMemoryPropertyFlagBits
924{
925	VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT		= 0x00000001,
926	VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT		= 0x00000002,
927	VK_MEMORY_PROPERTY_HOST_COHERENT_BIT	= 0x00000004,
928	VK_MEMORY_PROPERTY_HOST_CACHED_BIT		= 0x00000008,
929	VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT	= 0x00000010,
930};
931typedef deUint32 VkMemoryPropertyFlags;
932
933enum VkMemoryHeapFlagBits
934{
935	VK_MEMORY_HEAP_DEVICE_LOCAL_BIT	= 0x00000001,
936};
937typedef deUint32 VkMemoryHeapFlags;
938
939enum VkPipelineStageFlagBits
940{
941	VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT						= 0x00000001,
942	VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT						= 0x00000002,
943	VK_PIPELINE_STAGE_VERTEX_INPUT_BIT						= 0x00000004,
944	VK_PIPELINE_STAGE_VERTEX_SHADER_BIT						= 0x00000008,
945	VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT		= 0x00000010,
946	VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT	= 0x00000020,
947	VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT					= 0x00000040,
948	VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT					= 0x00000080,
949	VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT				= 0x00000100,
950	VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT				= 0x00000200,
951	VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT			= 0x00000400,
952	VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT					= 0x00000800,
953	VK_PIPELINE_STAGE_TRANSFER_BIT							= 0x00001000,
954	VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT					= 0x00002000,
955	VK_PIPELINE_STAGE_HOST_BIT								= 0x00004000,
956	VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT						= 0x00008000,
957	VK_PIPELINE_STAGE_ALL_COMMANDS_BIT						= 0x00010000,
958	VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX				= 0x00020000,
959};
960typedef deUint32 VkPipelineStageFlags;
961
962enum VkImageAspectFlagBits
963{
964	VK_IMAGE_ASPECT_COLOR_BIT		= 0x00000001,
965	VK_IMAGE_ASPECT_DEPTH_BIT		= 0x00000002,
966	VK_IMAGE_ASPECT_STENCIL_BIT		= 0x00000004,
967	VK_IMAGE_ASPECT_METADATA_BIT	= 0x00000008,
968};
969typedef deUint32 VkImageAspectFlags;
970
971enum VkSparseImageFormatFlagBits
972{
973	VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT			= 0x00000001,
974	VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT			= 0x00000002,
975	VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT	= 0x00000004,
976};
977typedef deUint32 VkSparseImageFormatFlags;
978
979enum VkSparseMemoryBindFlagBits
980{
981	VK_SPARSE_MEMORY_BIND_METADATA_BIT	= 0x00000001,
982};
983typedef deUint32 VkSparseMemoryBindFlags;
984
985enum VkFenceCreateFlagBits
986{
987	VK_FENCE_CREATE_SIGNALED_BIT	= 0x00000001,
988};
989typedef deUint32 VkFenceCreateFlags;
990
991enum VkQueryPipelineStatisticFlagBits
992{
993	VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT						= 0x00000001,
994	VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT					= 0x00000002,
995	VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT					= 0x00000004,
996	VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT					= 0x00000008,
997	VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT					= 0x00000010,
998	VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT						= 0x00000020,
999	VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT							= 0x00000040,
1000	VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT					= 0x00000080,
1001	VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT			= 0x00000100,
1002	VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT	= 0x00000200,
1003	VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT					= 0x00000400,
1004};
1005typedef deUint32 VkQueryPipelineStatisticFlags;
1006
1007enum VkQueryResultFlagBits
1008{
1009	VK_QUERY_RESULT_64_BIT					= 0x00000001,
1010	VK_QUERY_RESULT_WAIT_BIT				= 0x00000002,
1011	VK_QUERY_RESULT_WITH_AVAILABILITY_BIT	= 0x00000004,
1012	VK_QUERY_RESULT_PARTIAL_BIT				= 0x00000008,
1013};
1014typedef deUint32 VkQueryResultFlags;
1015
1016enum VkBufferCreateFlagBits
1017{
1018	VK_BUFFER_CREATE_SPARSE_BINDING_BIT		= 0x00000001,
1019	VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT	= 0x00000002,
1020	VK_BUFFER_CREATE_SPARSE_ALIASED_BIT		= 0x00000004,
1021};
1022typedef deUint32 VkBufferCreateFlags;
1023
1024enum VkBufferUsageFlagBits
1025{
1026	VK_BUFFER_USAGE_TRANSFER_SRC_BIT			= 0x00000001,
1027	VK_BUFFER_USAGE_TRANSFER_DST_BIT			= 0x00000002,
1028	VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT	= 0x00000004,
1029	VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT	= 0x00000008,
1030	VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT			= 0x00000010,
1031	VK_BUFFER_USAGE_STORAGE_BUFFER_BIT			= 0x00000020,
1032	VK_BUFFER_USAGE_INDEX_BUFFER_BIT			= 0x00000040,
1033	VK_BUFFER_USAGE_VERTEX_BUFFER_BIT			= 0x00000080,
1034	VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT			= 0x00000100,
1035};
1036typedef deUint32 VkBufferUsageFlags;
1037
1038enum VkPipelineCreateFlagBits
1039{
1040	VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT	= 0x00000001,
1041	VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT	= 0x00000002,
1042	VK_PIPELINE_CREATE_DERIVATIVE_BIT			= 0x00000004,
1043};
1044typedef deUint32 VkPipelineCreateFlags;
1045
1046enum VkShaderStageFlagBits
1047{
1048	VK_SHADER_STAGE_VERTEX_BIT					= 0x00000001,
1049	VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT	= 0x00000002,
1050	VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT	= 0x00000004,
1051	VK_SHADER_STAGE_GEOMETRY_BIT				= 0x00000008,
1052	VK_SHADER_STAGE_FRAGMENT_BIT				= 0x00000010,
1053	VK_SHADER_STAGE_COMPUTE_BIT					= 0x00000020,
1054	VK_SHADER_STAGE_ALL_GRAPHICS				= 0x0000001F,
1055	VK_SHADER_STAGE_ALL							= 0x7FFFFFFF,
1056};
1057typedef deUint32 VkShaderStageFlags;
1058
1059enum VkCullModeFlagBits
1060{
1061	VK_CULL_MODE_NONE			= 0,
1062	VK_CULL_MODE_FRONT_BIT		= 0x00000001,
1063	VK_CULL_MODE_BACK_BIT		= 0x00000002,
1064	VK_CULL_MODE_FRONT_AND_BACK	= 0x00000003,
1065};
1066typedef deUint32 VkCullModeFlags;
1067
1068enum VkColorComponentFlagBits
1069{
1070	VK_COLOR_COMPONENT_R_BIT	= 0x00000001,
1071	VK_COLOR_COMPONENT_G_BIT	= 0x00000002,
1072	VK_COLOR_COMPONENT_B_BIT	= 0x00000004,
1073	VK_COLOR_COMPONENT_A_BIT	= 0x00000008,
1074};
1075typedef deUint32 VkColorComponentFlags;
1076
1077enum VkDescriptorSetLayoutCreateFlagBits
1078{
1079	VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR	= 0x00000001,
1080};
1081typedef deUint32 VkDescriptorSetLayoutCreateFlags;
1082
1083enum VkDescriptorPoolCreateFlagBits
1084{
1085	VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT	= 0x00000001,
1086};
1087typedef deUint32 VkDescriptorPoolCreateFlags;
1088
1089enum VkAttachmentDescriptionFlagBits
1090{
1091	VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT	= 0x00000001,
1092};
1093typedef deUint32 VkAttachmentDescriptionFlags;
1094
1095enum VkAccessFlagBits
1096{
1097	VK_ACCESS_INDIRECT_COMMAND_READ_BIT				= 0x00000001,
1098	VK_ACCESS_INDEX_READ_BIT						= 0x00000002,
1099	VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT				= 0x00000004,
1100	VK_ACCESS_UNIFORM_READ_BIT						= 0x00000008,
1101	VK_ACCESS_INPUT_ATTACHMENT_READ_BIT				= 0x00000010,
1102	VK_ACCESS_SHADER_READ_BIT						= 0x00000020,
1103	VK_ACCESS_SHADER_WRITE_BIT						= 0x00000040,
1104	VK_ACCESS_COLOR_ATTACHMENT_READ_BIT				= 0x00000080,
1105	VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT			= 0x00000100,
1106	VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT		= 0x00000200,
1107	VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT	= 0x00000400,
1108	VK_ACCESS_TRANSFER_READ_BIT						= 0x00000800,
1109	VK_ACCESS_TRANSFER_WRITE_BIT					= 0x00001000,
1110	VK_ACCESS_HOST_READ_BIT							= 0x00002000,
1111	VK_ACCESS_HOST_WRITE_BIT						= 0x00004000,
1112	VK_ACCESS_MEMORY_READ_BIT						= 0x00008000,
1113	VK_ACCESS_MEMORY_WRITE_BIT						= 0x00010000,
1114};
1115typedef deUint32 VkAccessFlags;
1116
1117enum VkDependencyFlagBits
1118{
1119	VK_DEPENDENCY_BY_REGION_BIT	= 0x00000001,
1120};
1121typedef deUint32 VkDependencyFlags;
1122
1123enum VkCommandPoolCreateFlagBits
1124{
1125	VK_COMMAND_POOL_CREATE_TRANSIENT_BIT			= 0x00000001,
1126	VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT	= 0x00000002,
1127};
1128typedef deUint32 VkCommandPoolCreateFlags;
1129
1130enum VkCommandPoolResetFlagBits
1131{
1132	VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT	= 0x00000001,
1133};
1134typedef deUint32 VkCommandPoolResetFlags;
1135
1136enum VkCommandBufferUsageFlagBits
1137{
1138	VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT			= 0x00000001,
1139	VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT	= 0x00000002,
1140	VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT		= 0x00000004,
1141};
1142typedef deUint32 VkCommandBufferUsageFlags;
1143
1144enum VkQueryControlFlagBits
1145{
1146	VK_QUERY_CONTROL_PRECISE_BIT	= 0x00000001,
1147};
1148typedef deUint32 VkQueryControlFlags;
1149
1150enum VkCommandBufferResetFlagBits
1151{
1152	VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT	= 0x00000001,
1153};
1154typedef deUint32 VkCommandBufferResetFlags;
1155
1156enum VkStencilFaceFlagBits
1157{
1158	VK_STENCIL_FACE_FRONT_BIT	= 0x00000001,
1159	VK_STENCIL_FACE_BACK_BIT	= 0x00000002,
1160	VK_STENCIL_FRONT_AND_BACK	= 0x00000003,
1161};
1162typedef deUint32 VkStencilFaceFlags;
1163
1164enum VkSurfaceTransformFlagBitsKHR
1165{
1166	VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR						= 0x00000001,
1167	VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR						= 0x00000002,
1168	VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR						= 0x00000004,
1169	VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR						= 0x00000008,
1170	VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR				= 0x00000010,
1171	VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR	= 0x00000020,
1172	VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR	= 0x00000040,
1173	VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR	= 0x00000080,
1174	VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR						= 0x00000100,
1175};
1176typedef deUint32 VkSurfaceTransformFlagsKHR;
1177
1178enum VkCompositeAlphaFlagBitsKHR
1179{
1180	VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR			= 0x00000001,
1181	VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR	= 0x00000002,
1182	VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR	= 0x00000004,
1183	VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR			= 0x00000008,
1184};
1185typedef deUint32 VkCompositeAlphaFlagsKHR;
1186
1187enum VkDisplayPlaneAlphaFlagBitsKHR
1188{
1189	VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR					= 0x00000001,
1190	VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR					= 0x00000002,
1191	VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR				= 0x00000004,
1192	VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR	= 0x00000008,
1193};
1194typedef deUint32 VkDisplayPlaneAlphaFlagsKHR;
1195
1196enum VkDebugReportFlagBitsEXT
1197{
1198	VK_DEBUG_REPORT_INFORMATION_BIT_EXT			= 0x00000001,
1199	VK_DEBUG_REPORT_WARNING_BIT_EXT				= 0x00000002,
1200	VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT	= 0x00000004,
1201	VK_DEBUG_REPORT_ERROR_BIT_EXT				= 0x00000008,
1202	VK_DEBUG_REPORT_DEBUG_BIT_EXT				= 0x00000010,
1203};
1204typedef deUint32 VkDebugReportFlagsEXT;
1205
1206enum VkExternalMemoryHandleTypeFlagBitsNV
1207{
1208	VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV		= 0x00000001,
1209	VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV	= 0x00000002,
1210	VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV		= 0x00000004,
1211	VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV	= 0x00000008,
1212};
1213typedef deUint32 VkExternalMemoryHandleTypeFlagsNV;
1214
1215enum VkExternalMemoryFeatureFlagBitsNV
1216{
1217	VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV	= 0x00000001,
1218	VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV		= 0x00000002,
1219	VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV		= 0x00000004,
1220};
1221typedef deUint32 VkExternalMemoryFeatureFlagsNV;
1222
1223enum VkIndirectCommandsLayoutUsageFlagBitsNVX
1224{
1225	VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX	= 0x00000001,
1226	VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX		= 0x00000002,
1227	VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX		= 0x00000004,
1228	VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX		= 0x00000008,
1229};
1230typedef deUint32 VkIndirectCommandsLayoutUsageFlagsNVX;
1231
1232enum VkObjectEntryUsageFlagBitsNVX
1233{
1234	VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX	= 0x00000001,
1235	VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX	= 0x00000002,
1236};
1237typedef deUint32 VkObjectEntryUsageFlagsNVX;
1238
1239typedef deUint32 VkInstanceCreateFlags;
1240
1241typedef deUint32 VkDeviceCreateFlags;
1242
1243typedef deUint32 VkDeviceQueueCreateFlags;
1244
1245typedef deUint32 VkMemoryMapFlags;
1246
1247typedef deUint32 VkSemaphoreCreateFlags;
1248
1249typedef deUint32 VkEventCreateFlags;
1250
1251typedef deUint32 VkQueryPoolCreateFlags;
1252
1253typedef deUint32 VkBufferViewCreateFlags;
1254
1255typedef deUint32 VkImageViewCreateFlags;
1256
1257typedef deUint32 VkShaderModuleCreateFlags;
1258
1259typedef deUint32 VkPipelineCacheCreateFlags;
1260
1261typedef deUint32 VkPipelineShaderStageCreateFlags;
1262
1263typedef deUint32 VkPipelineVertexInputStateCreateFlags;
1264
1265typedef deUint32 VkPipelineInputAssemblyStateCreateFlags;
1266
1267typedef deUint32 VkPipelineTessellationStateCreateFlags;
1268
1269typedef deUint32 VkPipelineViewportStateCreateFlags;
1270
1271typedef deUint32 VkPipelineRasterizationStateCreateFlags;
1272
1273typedef deUint32 VkPipelineMultisampleStateCreateFlags;
1274
1275typedef deUint32 VkPipelineDepthStencilStateCreateFlags;
1276
1277typedef deUint32 VkPipelineColorBlendStateCreateFlags;
1278
1279typedef deUint32 VkPipelineDynamicStateCreateFlags;
1280
1281typedef deUint32 VkPipelineLayoutCreateFlags;
1282
1283typedef deUint32 VkSamplerCreateFlags;
1284
1285typedef deUint32 VkDescriptorPoolResetFlags;
1286
1287typedef deUint32 VkFramebufferCreateFlags;
1288
1289typedef deUint32 VkRenderPassCreateFlags;
1290
1291typedef deUint32 VkSubpassDescriptionFlags;
1292
1293typedef deUint32 VkSwapchainCreateFlagsKHR;
1294
1295typedef deUint32 VkDisplayModeCreateFlagsKHR;
1296
1297typedef deUint32 VkDisplaySurfaceCreateFlagsKHR;
1298
1299typedef deUint32 VkXlibSurfaceCreateFlagsKHR;
1300
1301typedef deUint32 VkXcbSurfaceCreateFlagsKHR;
1302
1303typedef deUint32 VkWaylandSurfaceCreateFlagsKHR;
1304
1305typedef deUint32 VkMirSurfaceCreateFlagsKHR;
1306
1307typedef deUint32 VkAndroidSurfaceCreateFlagsKHR;
1308
1309typedef deUint32 VkWin32SurfaceCreateFlagsKHR;
1310
1311typedef deUint32 VkCommandPoolTrimFlagsKHR;
1312
1313typedef deUint32 VkDescriptorUpdateTemplateCreateFlagsKHR;
1314
1315VK_DEFINE_PLATFORM_TYPE(XlibDisplayPtr,				void*);
1316VK_DEFINE_PLATFORM_TYPE(XlibWindow,					deUintptr);
1317VK_DEFINE_PLATFORM_TYPE(XlibVisualID,				deUint32);
1318VK_DEFINE_PLATFORM_TYPE(XcbConnectionPtr,			void*);
1319VK_DEFINE_PLATFORM_TYPE(XcbWindow,					deUintptr);
1320VK_DEFINE_PLATFORM_TYPE(XcbVisualid,				deUint32);
1321VK_DEFINE_PLATFORM_TYPE(WaylandDisplayPtr,			void*);
1322VK_DEFINE_PLATFORM_TYPE(WaylandSurfacePtr,			void*);
1323VK_DEFINE_PLATFORM_TYPE(MirConnectionPtr,			void*);
1324VK_DEFINE_PLATFORM_TYPE(MirSurfacePtr,				void*);
1325VK_DEFINE_PLATFORM_TYPE(AndroidNativeWindowPtr,		void*);
1326VK_DEFINE_PLATFORM_TYPE(Win32InstanceHandle,		void*);
1327VK_DEFINE_PLATFORM_TYPE(Win32WindowHandle,			void*);
1328VK_DEFINE_PLATFORM_TYPE(Win32Handle,				void*);
1329VK_DEFINE_PLATFORM_TYPE(Win32SecurityAttributesPtr,	const void*);
1330