1 // Copyright (C) 2018 The Android Open Source Project
2 // Copyright (C) 2018 Google Inc.
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 // http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15
16 // Autogenerated module goldfish_vk_dispatch
17 // (impl) generated by protocols/vulkan/xml/genvk.py -registry protocols/vulkan/xml/vk.xml cereal -o stream-servers/vulkan/cereal
18 // Please do not modify directly;
19 // re-run generate-vulkan-sources.sh,
20 // or directly from Python by defining:
21 // VULKAN_REGISTRY_XML_DIR : Directory containing genvk.py and vk.xml
22 // CEREAL_OUTPUT_DIR: Where to put the generated sources.
23 // python3 $VULKAN_REGISTRY_XML_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o $CEREAL_OUTPUT_DIR
24
25 #include "goldfish_vk_dispatch.h"
26
27
28 #include <stdio.h>
29 #include <stdlib.h>
30 #include <string.h>
31
32
33 namespace goldfish_vk {
34
35 #ifdef VK_VERSION_1_0
36 #endif
37 #ifdef VK_VERSION_1_1
38 #endif
39 #ifdef VK_VERSION_1_2
40 #endif
41 #ifdef VK_KHR_surface
42 #endif
43 #ifdef VK_KHR_swapchain
44 #endif
45 #ifdef VK_KHR_display
46 #endif
47 #ifdef VK_KHR_display_swapchain
48 #endif
49 #ifdef VK_KHR_xlib_surface
50 #endif
51 #ifdef VK_KHR_xcb_surface
52 #endif
53 #ifdef VK_KHR_wayland_surface
54 #endif
55 #ifdef VK_KHR_android_surface
56 #endif
57 #ifdef VK_KHR_win32_surface
58 #endif
59 #ifdef VK_KHR_sampler_mirror_clamp_to_edge
60 #endif
61 #ifdef VK_KHR_multiview
62 #endif
63 #ifdef VK_KHR_get_physical_device_properties2
64 #endif
65 #ifdef VK_KHR_device_group
66 #endif
67 #ifdef VK_KHR_shader_draw_parameters
68 #endif
69 #ifdef VK_KHR_maintenance1
70 #endif
71 #ifdef VK_KHR_device_group_creation
72 #endif
73 #ifdef VK_KHR_external_memory_capabilities
74 #endif
75 #ifdef VK_KHR_external_memory
76 #endif
77 #ifdef VK_KHR_external_memory_win32
78 #endif
79 #ifdef VK_KHR_external_memory_fd
80 #endif
81 #ifdef VK_KHR_win32_keyed_mutex
82 #endif
83 #ifdef VK_KHR_external_semaphore_capabilities
84 #endif
85 #ifdef VK_KHR_external_semaphore
86 #endif
87 #ifdef VK_KHR_external_semaphore_win32
88 #endif
89 #ifdef VK_KHR_external_semaphore_fd
90 #endif
91 #ifdef VK_KHR_push_descriptor
92 #endif
93 #ifdef VK_KHR_shader_float16_int8
94 #endif
95 #ifdef VK_KHR_16bit_storage
96 #endif
97 #ifdef VK_KHR_incremental_present
98 #endif
99 #ifdef VK_KHR_descriptor_update_template
100 #endif
101 #ifdef VK_KHR_imageless_framebuffer
102 #endif
103 #ifdef VK_KHR_create_renderpass2
104 #endif
105 #ifdef VK_KHR_shared_presentable_image
106 #endif
107 #ifdef VK_KHR_external_fence_capabilities
108 #endif
109 #ifdef VK_KHR_external_fence
110 #endif
111 #ifdef VK_KHR_external_fence_win32
112 #endif
113 #ifdef VK_KHR_external_fence_fd
114 #endif
115 #ifdef VK_KHR_performance_query
116 #endif
117 #ifdef VK_KHR_maintenance2
118 #endif
119 #ifdef VK_KHR_get_surface_capabilities2
120 #endif
121 #ifdef VK_KHR_variable_pointers
122 #endif
123 #ifdef VK_KHR_get_display_properties2
124 #endif
125 #ifdef VK_KHR_dedicated_allocation
126 #endif
127 #ifdef VK_KHR_storage_buffer_storage_class
128 #endif
129 #ifdef VK_KHR_relaxed_block_layout
130 #endif
131 #ifdef VK_KHR_get_memory_requirements2
132 #endif
133 #ifdef VK_KHR_image_format_list
134 #endif
135 #ifdef VK_KHR_sampler_ycbcr_conversion
136 #endif
137 #ifdef VK_KHR_bind_memory2
138 #endif
139 #ifdef VK_KHR_portability_subset
140 #endif
141 #ifdef VK_KHR_maintenance3
142 #endif
143 #ifdef VK_KHR_draw_indirect_count
144 #endif
145 #ifdef VK_KHR_shader_subgroup_extended_types
146 #endif
147 #ifdef VK_KHR_8bit_storage
148 #endif
149 #ifdef VK_KHR_shader_atomic_int64
150 #endif
151 #ifdef VK_KHR_shader_clock
152 #endif
153 #ifdef VK_KHR_driver_properties
154 #endif
155 #ifdef VK_KHR_shader_float_controls
156 #endif
157 #ifdef VK_KHR_depth_stencil_resolve
158 #endif
159 #ifdef VK_KHR_swapchain_mutable_format
160 #endif
161 #ifdef VK_KHR_timeline_semaphore
162 #endif
163 #ifdef VK_KHR_vulkan_memory_model
164 #endif
165 #ifdef VK_KHR_shader_terminate_invocation
166 #endif
167 #ifdef VK_KHR_fragment_shading_rate
168 #endif
169 #ifdef VK_KHR_spirv_1_4
170 #endif
171 #ifdef VK_KHR_surface_protected_capabilities
172 #endif
173 #ifdef VK_KHR_separate_depth_stencil_layouts
174 #endif
175 #ifdef VK_KHR_uniform_buffer_standard_layout
176 #endif
177 #ifdef VK_KHR_buffer_device_address
178 #endif
179 #ifdef VK_KHR_deferred_host_operations
180 #endif
181 #ifdef VK_KHR_pipeline_executable_properties
182 #endif
183 #ifdef VK_KHR_pipeline_library
184 #endif
185 #ifdef VK_KHR_shader_non_semantic_info
186 #endif
187 #ifdef VK_KHR_copy_commands2
188 #endif
189 #ifdef VK_ANDROID_native_buffer
190 #endif
191 #ifdef VK_EXT_debug_report
192 #endif
193 #ifdef VK_NV_glsl_shader
194 #endif
195 #ifdef VK_EXT_depth_range_unrestricted
196 #endif
197 #ifdef VK_IMG_filter_cubic
198 #endif
199 #ifdef VK_AMD_rasterization_order
200 #endif
201 #ifdef VK_AMD_shader_trinary_minmax
202 #endif
203 #ifdef VK_AMD_shader_explicit_vertex_parameter
204 #endif
205 #ifdef VK_EXT_debug_marker
206 #endif
207 #ifdef VK_AMD_gcn_shader
208 #endif
209 #ifdef VK_NV_dedicated_allocation
210 #endif
211 #ifdef VK_EXT_transform_feedback
212 #endif
213 #ifdef VK_NVX_image_view_handle
214 #endif
215 #ifdef VK_AMD_draw_indirect_count
216 #endif
217 #ifdef VK_AMD_negative_viewport_height
218 #endif
219 #ifdef VK_AMD_gpu_shader_half_float
220 #endif
221 #ifdef VK_AMD_shader_ballot
222 #endif
223 #ifdef VK_AMD_texture_gather_bias_lod
224 #endif
225 #ifdef VK_AMD_shader_info
226 #endif
227 #ifdef VK_AMD_shader_image_load_store_lod
228 #endif
229 #ifdef VK_GGP_stream_descriptor_surface
230 #endif
231 #ifdef VK_NV_corner_sampled_image
232 #endif
233 #ifdef VK_IMG_format_pvrtc
234 #endif
235 #ifdef VK_NV_external_memory_capabilities
236 #endif
237 #ifdef VK_NV_external_memory
238 #endif
239 #ifdef VK_NV_external_memory_win32
240 #endif
241 #ifdef VK_NV_win32_keyed_mutex
242 #endif
243 #ifdef VK_EXT_validation_flags
244 #endif
245 #ifdef VK_NN_vi_surface
246 #endif
247 #ifdef VK_EXT_shader_subgroup_ballot
248 #endif
249 #ifdef VK_EXT_shader_subgroup_vote
250 #endif
251 #ifdef VK_EXT_texture_compression_astc_hdr
252 #endif
253 #ifdef VK_EXT_astc_decode_mode
254 #endif
255 #ifdef VK_EXT_conditional_rendering
256 #endif
257 #ifdef VK_NV_clip_space_w_scaling
258 #endif
259 #ifdef VK_EXT_direct_mode_display
260 #endif
261 #ifdef VK_EXT_acquire_xlib_display
262 #endif
263 #ifdef VK_EXT_display_surface_counter
264 #endif
265 #ifdef VK_EXT_display_control
266 #endif
267 #ifdef VK_GOOGLE_display_timing
268 #endif
269 #ifdef VK_NV_sample_mask_override_coverage
270 #endif
271 #ifdef VK_NV_geometry_shader_passthrough
272 #endif
273 #ifdef VK_NV_viewport_array2
274 #endif
275 #ifdef VK_NVX_multiview_per_view_attributes
276 #endif
277 #ifdef VK_NV_viewport_swizzle
278 #endif
279 #ifdef VK_EXT_discard_rectangles
280 #endif
281 #ifdef VK_EXT_conservative_rasterization
282 #endif
283 #ifdef VK_EXT_depth_clip_enable
284 #endif
285 #ifdef VK_EXT_swapchain_colorspace
286 #endif
287 #ifdef VK_EXT_hdr_metadata
288 #endif
289 #ifdef VK_MVK_ios_surface
290 #endif
291 #ifdef VK_MVK_macos_surface
292 #endif
293 #ifdef VK_MVK_moltenvk
294 #endif
295 #ifdef VK_EXT_external_memory_dma_buf
296 #endif
297 #ifdef VK_EXT_queue_family_foreign
298 #endif
299 #ifdef VK_EXT_debug_utils
300 #endif
301 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
302 #endif
303 #ifdef VK_EXT_sampler_filter_minmax
304 #endif
305 #ifdef VK_AMD_gpu_shader_int16
306 #endif
307 #ifdef VK_AMD_mixed_attachment_samples
308 #endif
309 #ifdef VK_AMD_shader_fragment_mask
310 #endif
311 #ifdef VK_EXT_inline_uniform_block
312 #endif
313 #ifdef VK_EXT_shader_stencil_export
314 #endif
315 #ifdef VK_EXT_sample_locations
316 #endif
317 #ifdef VK_EXT_blend_operation_advanced
318 #endif
319 #ifdef VK_NV_fragment_coverage_to_color
320 #endif
321 #ifdef VK_NV_framebuffer_mixed_samples
322 #endif
323 #ifdef VK_NV_fill_rectangle
324 #endif
325 #ifdef VK_NV_shader_sm_builtins
326 #endif
327 #ifdef VK_EXT_post_depth_coverage
328 #endif
329 #ifdef VK_EXT_image_drm_format_modifier
330 #endif
331 #ifdef VK_EXT_validation_cache
332 #endif
333 #ifdef VK_EXT_descriptor_indexing
334 #endif
335 #ifdef VK_EXT_shader_viewport_index_layer
336 #endif
337 #ifdef VK_NV_shading_rate_image
338 #endif
339 #ifdef VK_NV_ray_tracing
340 #endif
341 #ifdef VK_NV_representative_fragment_test
342 #endif
343 #ifdef VK_EXT_filter_cubic
344 #endif
345 #ifdef VK_QCOM_render_pass_shader_resolve
346 #endif
347 #ifdef VK_EXT_global_priority
348 #endif
349 #ifdef VK_EXT_external_memory_host
350 #endif
351 #ifdef VK_AMD_buffer_marker
352 #endif
353 #ifdef VK_AMD_pipeline_compiler_control
354 #endif
355 #ifdef VK_EXT_calibrated_timestamps
356 #endif
357 #ifdef VK_AMD_shader_core_properties
358 #endif
359 #ifdef VK_AMD_memory_overallocation_behavior
360 #endif
361 #ifdef VK_EXT_vertex_attribute_divisor
362 #endif
363 #ifdef VK_GGP_frame_token
364 #endif
365 #ifdef VK_EXT_pipeline_creation_feedback
366 #endif
367 #ifdef VK_NV_shader_subgroup_partitioned
368 #endif
369 #ifdef VK_NV_compute_shader_derivatives
370 #endif
371 #ifdef VK_NV_mesh_shader
372 #endif
373 #ifdef VK_NV_fragment_shader_barycentric
374 #endif
375 #ifdef VK_NV_shader_image_footprint
376 #endif
377 #ifdef VK_NV_scissor_exclusive
378 #endif
379 #ifdef VK_NV_device_diagnostic_checkpoints
380 #endif
381 #ifdef VK_INTEL_shader_integer_functions2
382 #endif
383 #ifdef VK_INTEL_performance_query
384 #endif
385 #ifdef VK_EXT_pci_bus_info
386 #endif
387 #ifdef VK_AMD_display_native_hdr
388 #endif
389 #ifdef VK_FUCHSIA_imagepipe_surface
390 #endif
391 #ifdef VK_EXT_metal_surface
392 #endif
393 #ifdef VK_EXT_fragment_density_map
394 #endif
395 #ifdef VK_EXT_scalar_block_layout
396 #endif
397 #ifdef VK_GOOGLE_hlsl_functionality1
398 #endif
399 #ifdef VK_GOOGLE_decorate_string
400 #endif
401 #ifdef VK_EXT_subgroup_size_control
402 #endif
403 #ifdef VK_AMD_shader_core_properties2
404 #endif
405 #ifdef VK_AMD_device_coherent_memory
406 #endif
407 #ifdef VK_EXT_shader_image_atomic_int64
408 #endif
409 #ifdef VK_EXT_memory_budget
410 #endif
411 #ifdef VK_EXT_memory_priority
412 #endif
413 #ifdef VK_NV_dedicated_allocation_image_aliasing
414 #endif
415 #ifdef VK_EXT_buffer_device_address
416 #endif
417 #ifdef VK_EXT_tooling_info
418 #endif
419 #ifdef VK_EXT_separate_stencil_usage
420 #endif
421 #ifdef VK_EXT_validation_features
422 #endif
423 #ifdef VK_NV_cooperative_matrix
424 #endif
425 #ifdef VK_NV_coverage_reduction_mode
426 #endif
427 #ifdef VK_EXT_fragment_shader_interlock
428 #endif
429 #ifdef VK_EXT_ycbcr_image_arrays
430 #endif
431 #ifdef VK_EXT_full_screen_exclusive
432 #endif
433 #ifdef VK_EXT_headless_surface
434 #endif
435 #ifdef VK_EXT_line_rasterization
436 #endif
437 #ifdef VK_EXT_shader_atomic_float
438 #endif
439 #ifdef VK_EXT_host_query_reset
440 #endif
441 #ifdef VK_EXT_index_type_uint8
442 #endif
443 #ifdef VK_EXT_extended_dynamic_state
444 #endif
445 #ifdef VK_EXT_shader_demote_to_helper_invocation
446 #endif
447 #ifdef VK_NV_device_generated_commands
448 #endif
449 #ifdef VK_EXT_texel_buffer_alignment
450 #endif
451 #ifdef VK_QCOM_render_pass_transform
452 #endif
453 #ifdef VK_EXT_device_memory_report
454 #endif
455 #ifdef VK_EXT_robustness2
456 #endif
457 #ifdef VK_EXT_custom_border_color
458 #endif
459 #ifdef VK_GOOGLE_user_type
460 #endif
461 #ifdef VK_EXT_private_data
462 #endif
463 #ifdef VK_EXT_pipeline_creation_cache_control
464 #endif
465 #ifdef VK_NV_device_diagnostics_config
466 #endif
467 #ifdef VK_QCOM_render_pass_store_ops
468 #endif
469 #ifdef VK_NV_fragment_shading_rate_enums
470 #endif
471 #ifdef VK_EXT_fragment_density_map2
472 #endif
473 #ifdef VK_QCOM_rotated_copy_commands
474 #endif
475 #ifdef VK_EXT_image_robustness
476 #endif
477 #ifdef VK_EXT_4444_formats
478 #endif
479 #ifdef VK_EXT_directfb_surface
480 #endif
481 #ifdef VK_GOOGLE_gfxstream
482 #endif
483 #ifdef VK_KHR_acceleration_structure
484 #endif
485 #ifdef VK_KHR_ray_tracing_pipeline
486 #endif
487 #ifdef VK_KHR_ray_query
488 #endif
489
init_vulkan_dispatch_from_system_loader(DlOpenFunc dlOpenFunc,DlSymFunc dlSymFunc,VulkanDispatch * out)490 void init_vulkan_dispatch_from_system_loader(
491 DlOpenFunc dlOpenFunc,
492 DlSymFunc dlSymFunc,
493 VulkanDispatch* out)
494 {
495 memset(out, 0x0, sizeof(VulkanDispatch));
496 void* lib = dlOpenFunc();
497 if (!lib) return;
498 #ifdef VK_VERSION_1_0
499 out->vkDestroyInstance = (PFN_vkDestroyInstance)dlSymFunc(lib, "vkDestroyInstance");
500 out->vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)dlSymFunc(lib, "vkEnumeratePhysicalDevices");
501 out->vkGetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)dlSymFunc(lib, "vkGetPhysicalDeviceFeatures");
502 out->vkGetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)dlSymFunc(lib, "vkGetPhysicalDeviceFormatProperties");
503 out->vkGetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)dlSymFunc(lib, "vkGetPhysicalDeviceImageFormatProperties");
504 out->vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)dlSymFunc(lib, "vkGetPhysicalDeviceProperties");
505 out->vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)dlSymFunc(lib, "vkGetPhysicalDeviceQueueFamilyProperties");
506 out->vkGetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)dlSymFunc(lib, "vkGetPhysicalDeviceMemoryProperties");
507 out->vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlSymFunc(lib, "vkGetInstanceProcAddr");
508 out->vkCreateDevice = (PFN_vkCreateDevice)dlSymFunc(lib, "vkCreateDevice");
509 out->vkDestroyDevice = (PFN_vkDestroyDevice)dlSymFunc(lib, "vkDestroyDevice");
510 out->vkEnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)dlSymFunc(lib, "vkEnumerateDeviceExtensionProperties");
511 out->vkEnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)dlSymFunc(lib, "vkEnumerateDeviceLayerProperties");
512 out->vkCreateInstance = (PFN_vkCreateInstance)dlSymFunc(lib, "vkCreateInstance");
513 out->vkEnumerateInstanceExtensionProperties = (PFN_vkEnumerateInstanceExtensionProperties)dlSymFunc(lib, "vkEnumerateInstanceExtensionProperties");
514 out->vkEnumerateInstanceLayerProperties = (PFN_vkEnumerateInstanceLayerProperties)dlSymFunc(lib, "vkEnumerateInstanceLayerProperties");
515 out->vkGetDeviceProcAddr = (PFN_vkGetDeviceProcAddr)dlSymFunc(lib, "vkGetDeviceProcAddr");
516 out->vkGetPhysicalDeviceSparseImageFormatProperties = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties)dlSymFunc(lib, "vkGetPhysicalDeviceSparseImageFormatProperties");
517 #endif
518 #ifdef VK_VERSION_1_1
519 out->vkEnumerateInstanceVersion = (PFN_vkEnumerateInstanceVersion)dlSymFunc(lib, "vkEnumerateInstanceVersion");
520 out->vkEnumeratePhysicalDeviceGroups = (PFN_vkEnumeratePhysicalDeviceGroups)dlSymFunc(lib, "vkEnumeratePhysicalDeviceGroups");
521 out->vkGetPhysicalDeviceFeatures2 = (PFN_vkGetPhysicalDeviceFeatures2)dlSymFunc(lib, "vkGetPhysicalDeviceFeatures2");
522 out->vkGetPhysicalDeviceProperties2 = (PFN_vkGetPhysicalDeviceProperties2)dlSymFunc(lib, "vkGetPhysicalDeviceProperties2");
523 out->vkGetPhysicalDeviceFormatProperties2 = (PFN_vkGetPhysicalDeviceFormatProperties2)dlSymFunc(lib, "vkGetPhysicalDeviceFormatProperties2");
524 out->vkGetPhysicalDeviceImageFormatProperties2 = (PFN_vkGetPhysicalDeviceImageFormatProperties2)dlSymFunc(lib, "vkGetPhysicalDeviceImageFormatProperties2");
525 out->vkGetPhysicalDeviceQueueFamilyProperties2 = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2)dlSymFunc(lib, "vkGetPhysicalDeviceQueueFamilyProperties2");
526 out->vkGetPhysicalDeviceMemoryProperties2 = (PFN_vkGetPhysicalDeviceMemoryProperties2)dlSymFunc(lib, "vkGetPhysicalDeviceMemoryProperties2");
527 out->vkGetPhysicalDeviceSparseImageFormatProperties2 = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)dlSymFunc(lib, "vkGetPhysicalDeviceSparseImageFormatProperties2");
528 out->vkGetPhysicalDeviceExternalBufferProperties = (PFN_vkGetPhysicalDeviceExternalBufferProperties)dlSymFunc(lib, "vkGetPhysicalDeviceExternalBufferProperties");
529 out->vkGetPhysicalDeviceExternalFenceProperties = (PFN_vkGetPhysicalDeviceExternalFenceProperties)dlSymFunc(lib, "vkGetPhysicalDeviceExternalFenceProperties");
530 out->vkGetPhysicalDeviceExternalSemaphoreProperties = (PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)dlSymFunc(lib, "vkGetPhysicalDeviceExternalSemaphoreProperties");
531 #endif
532 #ifdef VK_KHR_surface
533 out->vkDestroySurfaceKHR = (PFN_vkDestroySurfaceKHR)dlSymFunc(lib, "vkDestroySurfaceKHR");
534 #endif
535 #ifdef VK_KHR_swapchain
536 out->vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)dlSymFunc(lib, "vkCreateSwapchainKHR");
537 out->vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)dlSymFunc(lib, "vkDestroySwapchainKHR");
538 out->vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)dlSymFunc(lib, "vkGetSwapchainImagesKHR");
539 out->vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)dlSymFunc(lib, "vkAcquireNextImageKHR");
540 out->vkQueuePresentKHR = (PFN_vkQueuePresentKHR)dlSymFunc(lib, "vkQueuePresentKHR");
541 #endif
542 #ifdef VK_KHR_display
543 out->vkCreateDisplayPlaneSurfaceKHR = (PFN_vkCreateDisplayPlaneSurfaceKHR)dlSymFunc(lib, "vkCreateDisplayPlaneSurfaceKHR");
544 #endif
545 #ifdef VK_KHR_xlib_surface
546 out->vkCreateXlibSurfaceKHR = (PFN_vkCreateXlibSurfaceKHR)dlSymFunc(lib, "vkCreateXlibSurfaceKHR");
547 out->vkGetPhysicalDeviceXlibPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)dlSymFunc(lib, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
548 #endif
549 #ifdef VK_KHR_xcb_surface
550 out->vkCreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR)dlSymFunc(lib, "vkCreateXcbSurfaceKHR");
551 out->vkGetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)dlSymFunc(lib, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
552 #endif
553 #ifdef VK_KHR_wayland_surface
554 out->vkCreateWaylandSurfaceKHR = (PFN_vkCreateWaylandSurfaceKHR)dlSymFunc(lib, "vkCreateWaylandSurfaceKHR");
555 #endif
556 #ifdef VK_KHR_android_surface
557 out->vkCreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR)dlSymFunc(lib, "vkCreateAndroidSurfaceKHR");
558 #endif
559 #ifdef VK_KHR_win32_surface
560 out->vkCreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR)dlSymFunc(lib, "vkCreateWin32SurfaceKHR");
561 out->vkGetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)dlSymFunc(lib, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
562 #endif
563 #ifdef VK_KHR_device_group_creation
564 out->vkEnumeratePhysicalDeviceGroupsKHR = (PFN_vkEnumeratePhysicalDeviceGroupsKHR)dlSymFunc(lib, "vkEnumeratePhysicalDeviceGroupsKHR");
565 #endif
566 #ifdef VK_EXT_debug_report
567 out->vkCreateDebugReportCallbackEXT = (PFN_vkCreateDebugReportCallbackEXT)dlSymFunc(lib, "vkCreateDebugReportCallbackEXT");
568 out->vkDestroyDebugReportCallbackEXT = (PFN_vkDestroyDebugReportCallbackEXT)dlSymFunc(lib, "vkDestroyDebugReportCallbackEXT");
569 out->vkDebugReportMessageEXT = (PFN_vkDebugReportMessageEXT)dlSymFunc(lib, "vkDebugReportMessageEXT");
570 #endif
571 #ifdef VK_GGP_stream_descriptor_surface
572 out->vkCreateStreamDescriptorSurfaceGGP = (PFN_vkCreateStreamDescriptorSurfaceGGP)dlSymFunc(lib, "vkCreateStreamDescriptorSurfaceGGP");
573 #endif
574 #ifdef VK_NN_vi_surface
575 out->vkCreateViSurfaceNN = (PFN_vkCreateViSurfaceNN)dlSymFunc(lib, "vkCreateViSurfaceNN");
576 #endif
577 #ifdef VK_MVK_ios_surface
578 out->vkCreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK)dlSymFunc(lib, "vkCreateIOSSurfaceMVK");
579 #endif
580 #ifdef VK_MVK_macos_surface
581 out->vkCreateMacOSSurfaceMVK = (PFN_vkCreateMacOSSurfaceMVK)dlSymFunc(lib, "vkCreateMacOSSurfaceMVK");
582 #endif
583 #ifdef VK_EXT_debug_utils
584 out->vkCreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT)dlSymFunc(lib, "vkCreateDebugUtilsMessengerEXT");
585 out->vkDestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT)dlSymFunc(lib, "vkDestroyDebugUtilsMessengerEXT");
586 out->vkSubmitDebugUtilsMessageEXT = (PFN_vkSubmitDebugUtilsMessageEXT)dlSymFunc(lib, "vkSubmitDebugUtilsMessageEXT");
587 #endif
588 #ifdef VK_FUCHSIA_imagepipe_surface
589 out->vkCreateImagePipeSurfaceFUCHSIA = (PFN_vkCreateImagePipeSurfaceFUCHSIA)dlSymFunc(lib, "vkCreateImagePipeSurfaceFUCHSIA");
590 #endif
591 #ifdef VK_EXT_metal_surface
592 out->vkCreateMetalSurfaceEXT = (PFN_vkCreateMetalSurfaceEXT)dlSymFunc(lib, "vkCreateMetalSurfaceEXT");
593 #endif
594 #ifdef VK_EXT_headless_surface
595 out->vkCreateHeadlessSurfaceEXT = (PFN_vkCreateHeadlessSurfaceEXT)dlSymFunc(lib, "vkCreateHeadlessSurfaceEXT");
596 #endif
597 #ifdef VK_EXT_directfb_surface
598 out->vkCreateDirectFBSurfaceEXT = (PFN_vkCreateDirectFBSurfaceEXT)dlSymFunc(lib, "vkCreateDirectFBSurfaceEXT");
599 #endif
600 #ifdef VK_VERSION_1_0
601 out->vkGetDeviceQueue = (PFN_vkGetDeviceQueue)dlSymFunc(lib, "vkGetDeviceQueue");
602 out->vkQueueSubmit = (PFN_vkQueueSubmit)dlSymFunc(lib, "vkQueueSubmit");
603 out->vkQueueWaitIdle = (PFN_vkQueueWaitIdle)dlSymFunc(lib, "vkQueueWaitIdle");
604 out->vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)dlSymFunc(lib, "vkDeviceWaitIdle");
605 out->vkAllocateMemory = (PFN_vkAllocateMemory)dlSymFunc(lib, "vkAllocateMemory");
606 out->vkFreeMemory = (PFN_vkFreeMemory)dlSymFunc(lib, "vkFreeMemory");
607 out->vkMapMemory = (PFN_vkMapMemory)dlSymFunc(lib, "vkMapMemory");
608 out->vkUnmapMemory = (PFN_vkUnmapMemory)dlSymFunc(lib, "vkUnmapMemory");
609 out->vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)dlSymFunc(lib, "vkFlushMappedMemoryRanges");
610 out->vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)dlSymFunc(lib, "vkInvalidateMappedMemoryRanges");
611 out->vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)dlSymFunc(lib, "vkGetDeviceMemoryCommitment");
612 out->vkBindBufferMemory = (PFN_vkBindBufferMemory)dlSymFunc(lib, "vkBindBufferMemory");
613 out->vkBindImageMemory = (PFN_vkBindImageMemory)dlSymFunc(lib, "vkBindImageMemory");
614 out->vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)dlSymFunc(lib, "vkGetBufferMemoryRequirements");
615 out->vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)dlSymFunc(lib, "vkGetImageMemoryRequirements");
616 out->vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)dlSymFunc(lib, "vkGetImageSparseMemoryRequirements");
617 out->vkQueueBindSparse = (PFN_vkQueueBindSparse)dlSymFunc(lib, "vkQueueBindSparse");
618 out->vkCreateFence = (PFN_vkCreateFence)dlSymFunc(lib, "vkCreateFence");
619 out->vkDestroyFence = (PFN_vkDestroyFence)dlSymFunc(lib, "vkDestroyFence");
620 out->vkResetFences = (PFN_vkResetFences)dlSymFunc(lib, "vkResetFences");
621 out->vkGetFenceStatus = (PFN_vkGetFenceStatus)dlSymFunc(lib, "vkGetFenceStatus");
622 out->vkWaitForFences = (PFN_vkWaitForFences)dlSymFunc(lib, "vkWaitForFences");
623 out->vkCreateSemaphore = (PFN_vkCreateSemaphore)dlSymFunc(lib, "vkCreateSemaphore");
624 out->vkDestroySemaphore = (PFN_vkDestroySemaphore)dlSymFunc(lib, "vkDestroySemaphore");
625 out->vkCreateEvent = (PFN_vkCreateEvent)dlSymFunc(lib, "vkCreateEvent");
626 out->vkDestroyEvent = (PFN_vkDestroyEvent)dlSymFunc(lib, "vkDestroyEvent");
627 out->vkGetEventStatus = (PFN_vkGetEventStatus)dlSymFunc(lib, "vkGetEventStatus");
628 out->vkSetEvent = (PFN_vkSetEvent)dlSymFunc(lib, "vkSetEvent");
629 out->vkResetEvent = (PFN_vkResetEvent)dlSymFunc(lib, "vkResetEvent");
630 out->vkCreateQueryPool = (PFN_vkCreateQueryPool)dlSymFunc(lib, "vkCreateQueryPool");
631 out->vkDestroyQueryPool = (PFN_vkDestroyQueryPool)dlSymFunc(lib, "vkDestroyQueryPool");
632 out->vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)dlSymFunc(lib, "vkGetQueryPoolResults");
633 out->vkCreateBuffer = (PFN_vkCreateBuffer)dlSymFunc(lib, "vkCreateBuffer");
634 out->vkDestroyBuffer = (PFN_vkDestroyBuffer)dlSymFunc(lib, "vkDestroyBuffer");
635 out->vkCreateBufferView = (PFN_vkCreateBufferView)dlSymFunc(lib, "vkCreateBufferView");
636 out->vkDestroyBufferView = (PFN_vkDestroyBufferView)dlSymFunc(lib, "vkDestroyBufferView");
637 out->vkCreateImage = (PFN_vkCreateImage)dlSymFunc(lib, "vkCreateImage");
638 out->vkDestroyImage = (PFN_vkDestroyImage)dlSymFunc(lib, "vkDestroyImage");
639 out->vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)dlSymFunc(lib, "vkGetImageSubresourceLayout");
640 out->vkCreateImageView = (PFN_vkCreateImageView)dlSymFunc(lib, "vkCreateImageView");
641 out->vkDestroyImageView = (PFN_vkDestroyImageView)dlSymFunc(lib, "vkDestroyImageView");
642 out->vkCreateShaderModule = (PFN_vkCreateShaderModule)dlSymFunc(lib, "vkCreateShaderModule");
643 out->vkDestroyShaderModule = (PFN_vkDestroyShaderModule)dlSymFunc(lib, "vkDestroyShaderModule");
644 out->vkCreatePipelineCache = (PFN_vkCreatePipelineCache)dlSymFunc(lib, "vkCreatePipelineCache");
645 out->vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)dlSymFunc(lib, "vkDestroyPipelineCache");
646 out->vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)dlSymFunc(lib, "vkGetPipelineCacheData");
647 out->vkMergePipelineCaches = (PFN_vkMergePipelineCaches)dlSymFunc(lib, "vkMergePipelineCaches");
648 out->vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)dlSymFunc(lib, "vkCreateGraphicsPipelines");
649 out->vkCreateComputePipelines = (PFN_vkCreateComputePipelines)dlSymFunc(lib, "vkCreateComputePipelines");
650 out->vkDestroyPipeline = (PFN_vkDestroyPipeline)dlSymFunc(lib, "vkDestroyPipeline");
651 out->vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)dlSymFunc(lib, "vkCreatePipelineLayout");
652 out->vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)dlSymFunc(lib, "vkDestroyPipelineLayout");
653 out->vkCreateSampler = (PFN_vkCreateSampler)dlSymFunc(lib, "vkCreateSampler");
654 out->vkDestroySampler = (PFN_vkDestroySampler)dlSymFunc(lib, "vkDestroySampler");
655 out->vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)dlSymFunc(lib, "vkCreateDescriptorSetLayout");
656 out->vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)dlSymFunc(lib, "vkDestroyDescriptorSetLayout");
657 out->vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)dlSymFunc(lib, "vkCreateDescriptorPool");
658 out->vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)dlSymFunc(lib, "vkDestroyDescriptorPool");
659 out->vkResetDescriptorPool = (PFN_vkResetDescriptorPool)dlSymFunc(lib, "vkResetDescriptorPool");
660 out->vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)dlSymFunc(lib, "vkAllocateDescriptorSets");
661 out->vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)dlSymFunc(lib, "vkFreeDescriptorSets");
662 out->vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)dlSymFunc(lib, "vkUpdateDescriptorSets");
663 out->vkCreateFramebuffer = (PFN_vkCreateFramebuffer)dlSymFunc(lib, "vkCreateFramebuffer");
664 out->vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)dlSymFunc(lib, "vkDestroyFramebuffer");
665 out->vkCreateRenderPass = (PFN_vkCreateRenderPass)dlSymFunc(lib, "vkCreateRenderPass");
666 out->vkDestroyRenderPass = (PFN_vkDestroyRenderPass)dlSymFunc(lib, "vkDestroyRenderPass");
667 out->vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)dlSymFunc(lib, "vkGetRenderAreaGranularity");
668 out->vkCreateCommandPool = (PFN_vkCreateCommandPool)dlSymFunc(lib, "vkCreateCommandPool");
669 out->vkDestroyCommandPool = (PFN_vkDestroyCommandPool)dlSymFunc(lib, "vkDestroyCommandPool");
670 out->vkResetCommandPool = (PFN_vkResetCommandPool)dlSymFunc(lib, "vkResetCommandPool");
671 out->vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)dlSymFunc(lib, "vkAllocateCommandBuffers");
672 out->vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)dlSymFunc(lib, "vkFreeCommandBuffers");
673 out->vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)dlSymFunc(lib, "vkBeginCommandBuffer");
674 out->vkEndCommandBuffer = (PFN_vkEndCommandBuffer)dlSymFunc(lib, "vkEndCommandBuffer");
675 out->vkResetCommandBuffer = (PFN_vkResetCommandBuffer)dlSymFunc(lib, "vkResetCommandBuffer");
676 out->vkCmdBindPipeline = (PFN_vkCmdBindPipeline)dlSymFunc(lib, "vkCmdBindPipeline");
677 out->vkCmdSetViewport = (PFN_vkCmdSetViewport)dlSymFunc(lib, "vkCmdSetViewport");
678 out->vkCmdSetScissor = (PFN_vkCmdSetScissor)dlSymFunc(lib, "vkCmdSetScissor");
679 out->vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)dlSymFunc(lib, "vkCmdSetLineWidth");
680 out->vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)dlSymFunc(lib, "vkCmdSetDepthBias");
681 out->vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)dlSymFunc(lib, "vkCmdSetBlendConstants");
682 out->vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)dlSymFunc(lib, "vkCmdSetDepthBounds");
683 out->vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)dlSymFunc(lib, "vkCmdSetStencilCompareMask");
684 out->vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)dlSymFunc(lib, "vkCmdSetStencilWriteMask");
685 out->vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)dlSymFunc(lib, "vkCmdSetStencilReference");
686 out->vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)dlSymFunc(lib, "vkCmdBindDescriptorSets");
687 out->vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)dlSymFunc(lib, "vkCmdBindIndexBuffer");
688 out->vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)dlSymFunc(lib, "vkCmdBindVertexBuffers");
689 out->vkCmdDraw = (PFN_vkCmdDraw)dlSymFunc(lib, "vkCmdDraw");
690 out->vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)dlSymFunc(lib, "vkCmdDrawIndexed");
691 out->vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)dlSymFunc(lib, "vkCmdDrawIndirect");
692 out->vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)dlSymFunc(lib, "vkCmdDrawIndexedIndirect");
693 out->vkCmdDispatch = (PFN_vkCmdDispatch)dlSymFunc(lib, "vkCmdDispatch");
694 out->vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)dlSymFunc(lib, "vkCmdDispatchIndirect");
695 out->vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)dlSymFunc(lib, "vkCmdCopyBuffer");
696 out->vkCmdCopyImage = (PFN_vkCmdCopyImage)dlSymFunc(lib, "vkCmdCopyImage");
697 out->vkCmdBlitImage = (PFN_vkCmdBlitImage)dlSymFunc(lib, "vkCmdBlitImage");
698 out->vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)dlSymFunc(lib, "vkCmdCopyBufferToImage");
699 out->vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)dlSymFunc(lib, "vkCmdCopyImageToBuffer");
700 out->vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)dlSymFunc(lib, "vkCmdUpdateBuffer");
701 out->vkCmdFillBuffer = (PFN_vkCmdFillBuffer)dlSymFunc(lib, "vkCmdFillBuffer");
702 out->vkCmdClearColorImage = (PFN_vkCmdClearColorImage)dlSymFunc(lib, "vkCmdClearColorImage");
703 out->vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)dlSymFunc(lib, "vkCmdClearDepthStencilImage");
704 out->vkCmdClearAttachments = (PFN_vkCmdClearAttachments)dlSymFunc(lib, "vkCmdClearAttachments");
705 out->vkCmdResolveImage = (PFN_vkCmdResolveImage)dlSymFunc(lib, "vkCmdResolveImage");
706 out->vkCmdSetEvent = (PFN_vkCmdSetEvent)dlSymFunc(lib, "vkCmdSetEvent");
707 out->vkCmdResetEvent = (PFN_vkCmdResetEvent)dlSymFunc(lib, "vkCmdResetEvent");
708 out->vkCmdWaitEvents = (PFN_vkCmdWaitEvents)dlSymFunc(lib, "vkCmdWaitEvents");
709 out->vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)dlSymFunc(lib, "vkCmdPipelineBarrier");
710 out->vkCmdBeginQuery = (PFN_vkCmdBeginQuery)dlSymFunc(lib, "vkCmdBeginQuery");
711 out->vkCmdEndQuery = (PFN_vkCmdEndQuery)dlSymFunc(lib, "vkCmdEndQuery");
712 out->vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)dlSymFunc(lib, "vkCmdResetQueryPool");
713 out->vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)dlSymFunc(lib, "vkCmdWriteTimestamp");
714 out->vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)dlSymFunc(lib, "vkCmdCopyQueryPoolResults");
715 out->vkCmdPushConstants = (PFN_vkCmdPushConstants)dlSymFunc(lib, "vkCmdPushConstants");
716 out->vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)dlSymFunc(lib, "vkCmdBeginRenderPass");
717 out->vkCmdNextSubpass = (PFN_vkCmdNextSubpass)dlSymFunc(lib, "vkCmdNextSubpass");
718 out->vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)dlSymFunc(lib, "vkCmdEndRenderPass");
719 out->vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)dlSymFunc(lib, "vkCmdExecuteCommands");
720 #endif
721 #ifdef VK_VERSION_1_1
722 out->vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)dlSymFunc(lib, "vkBindBufferMemory2");
723 out->vkBindImageMemory2 = (PFN_vkBindImageMemory2)dlSymFunc(lib, "vkBindImageMemory2");
724 out->vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)dlSymFunc(lib, "vkGetDeviceGroupPeerMemoryFeatures");
725 out->vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)dlSymFunc(lib, "vkCmdSetDeviceMask");
726 out->vkCmdDispatchBase = (PFN_vkCmdDispatchBase)dlSymFunc(lib, "vkCmdDispatchBase");
727 out->vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)dlSymFunc(lib, "vkGetImageMemoryRequirements2");
728 out->vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)dlSymFunc(lib, "vkGetBufferMemoryRequirements2");
729 out->vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)dlSymFunc(lib, "vkGetImageSparseMemoryRequirements2");
730 out->vkTrimCommandPool = (PFN_vkTrimCommandPool)dlSymFunc(lib, "vkTrimCommandPool");
731 out->vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)dlSymFunc(lib, "vkGetDeviceQueue2");
732 out->vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)dlSymFunc(lib, "vkCreateSamplerYcbcrConversion");
733 out->vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)dlSymFunc(lib, "vkDestroySamplerYcbcrConversion");
734 out->vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)dlSymFunc(lib, "vkCreateDescriptorUpdateTemplate");
735 out->vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)dlSymFunc(lib, "vkDestroyDescriptorUpdateTemplate");
736 out->vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)dlSymFunc(lib, "vkUpdateDescriptorSetWithTemplate");
737 out->vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)dlSymFunc(lib, "vkGetDescriptorSetLayoutSupport");
738 #endif
739 #ifdef VK_VERSION_1_2
740 out->vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)dlSymFunc(lib, "vkCmdDrawIndirectCount");
741 out->vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)dlSymFunc(lib, "vkCmdDrawIndexedIndirectCount");
742 out->vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)dlSymFunc(lib, "vkCreateRenderPass2");
743 out->vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)dlSymFunc(lib, "vkCmdBeginRenderPass2");
744 out->vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)dlSymFunc(lib, "vkCmdNextSubpass2");
745 out->vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)dlSymFunc(lib, "vkCmdEndRenderPass2");
746 out->vkResetQueryPool = (PFN_vkResetQueryPool)dlSymFunc(lib, "vkResetQueryPool");
747 out->vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)dlSymFunc(lib, "vkGetSemaphoreCounterValue");
748 out->vkWaitSemaphores = (PFN_vkWaitSemaphores)dlSymFunc(lib, "vkWaitSemaphores");
749 out->vkSignalSemaphore = (PFN_vkSignalSemaphore)dlSymFunc(lib, "vkSignalSemaphore");
750 out->vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)dlSymFunc(lib, "vkGetBufferDeviceAddress");
751 out->vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)dlSymFunc(lib, "vkGetBufferOpaqueCaptureAddress");
752 out->vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)dlSymFunc(lib, "vkGetDeviceMemoryOpaqueCaptureAddress");
753 #endif
754 #ifdef VK_KHR_surface
755 out->vkGetPhysicalDeviceSurfaceSupportKHR = (PFN_vkGetPhysicalDeviceSurfaceSupportKHR)dlSymFunc(lib, "vkGetPhysicalDeviceSurfaceSupportKHR");
756 out->vkGetPhysicalDeviceSurfaceCapabilitiesKHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
757 out->vkGetPhysicalDeviceSurfaceFormatsKHR = (PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)dlSymFunc(lib, "vkGetPhysicalDeviceSurfaceFormatsKHR");
758 out->vkGetPhysicalDeviceSurfacePresentModesKHR = (PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceSurfacePresentModesKHR");
759 #endif
760 #ifdef VK_KHR_swapchain
761 out->vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)dlSymFunc(lib, "vkGetDeviceGroupPresentCapabilitiesKHR");
762 out->vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)dlSymFunc(lib, "vkGetDeviceGroupSurfacePresentModesKHR");
763 out->vkGetPhysicalDevicePresentRectanglesKHR = (PFN_vkGetPhysicalDevicePresentRectanglesKHR)dlSymFunc(lib, "vkGetPhysicalDevicePresentRectanglesKHR");
764 out->vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)dlSymFunc(lib, "vkAcquireNextImage2KHR");
765 #endif
766 #ifdef VK_KHR_display
767 out->vkGetPhysicalDeviceDisplayPropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceDisplayPropertiesKHR");
768 out->vkGetPhysicalDeviceDisplayPlanePropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
769 out->vkGetDisplayPlaneSupportedDisplaysKHR = (PFN_vkGetDisplayPlaneSupportedDisplaysKHR)dlSymFunc(lib, "vkGetDisplayPlaneSupportedDisplaysKHR");
770 out->vkGetDisplayModePropertiesKHR = (PFN_vkGetDisplayModePropertiesKHR)dlSymFunc(lib, "vkGetDisplayModePropertiesKHR");
771 out->vkCreateDisplayModeKHR = (PFN_vkCreateDisplayModeKHR)dlSymFunc(lib, "vkCreateDisplayModeKHR");
772 out->vkGetDisplayPlaneCapabilitiesKHR = (PFN_vkGetDisplayPlaneCapabilitiesKHR)dlSymFunc(lib, "vkGetDisplayPlaneCapabilitiesKHR");
773 #endif
774 #ifdef VK_KHR_display_swapchain
775 out->vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)dlSymFunc(lib, "vkCreateSharedSwapchainsKHR");
776 #endif
777 #ifdef VK_KHR_wayland_surface
778 out->vkGetPhysicalDeviceWaylandPresentationSupportKHR = (PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)dlSymFunc(lib, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
779 #endif
780 #ifdef VK_KHR_get_physical_device_properties2
781 out->vkGetPhysicalDeviceFeatures2KHR = (PFN_vkGetPhysicalDeviceFeatures2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceFeatures2KHR");
782 out->vkGetPhysicalDeviceProperties2KHR = (PFN_vkGetPhysicalDeviceProperties2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceProperties2KHR");
783 out->vkGetPhysicalDeviceFormatProperties2KHR = (PFN_vkGetPhysicalDeviceFormatProperties2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceFormatProperties2KHR");
784 out->vkGetPhysicalDeviceImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceImageFormatProperties2KHR");
785 out->vkGetPhysicalDeviceQueueFamilyProperties2KHR = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceQueueFamilyProperties2KHR");
786 out->vkGetPhysicalDeviceMemoryProperties2KHR = (PFN_vkGetPhysicalDeviceMemoryProperties2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceMemoryProperties2KHR");
787 out->vkGetPhysicalDeviceSparseImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
788 #endif
789 #ifdef VK_KHR_device_group
790 out->vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)dlSymFunc(lib, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
791 out->vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)dlSymFunc(lib, "vkCmdSetDeviceMaskKHR");
792 out->vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)dlSymFunc(lib, "vkCmdDispatchBaseKHR");
793 #endif
794 #ifdef VK_KHR_maintenance1
795 out->vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)dlSymFunc(lib, "vkTrimCommandPoolKHR");
796 #endif
797 #ifdef VK_KHR_external_memory_capabilities
798 out->vkGetPhysicalDeviceExternalBufferPropertiesKHR = (PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceExternalBufferPropertiesKHR");
799 #endif
800 #ifdef VK_KHR_external_memory_win32
801 out->vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)dlSymFunc(lib, "vkGetMemoryWin32HandleKHR");
802 out->vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)dlSymFunc(lib, "vkGetMemoryWin32HandlePropertiesKHR");
803 #endif
804 #ifdef VK_KHR_external_memory_fd
805 out->vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)dlSymFunc(lib, "vkGetMemoryFdKHR");
806 out->vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)dlSymFunc(lib, "vkGetMemoryFdPropertiesKHR");
807 #endif
808 #ifdef VK_KHR_external_semaphore_capabilities
809 out->vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
810 #endif
811 #ifdef VK_KHR_external_semaphore_win32
812 out->vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)dlSymFunc(lib, "vkImportSemaphoreWin32HandleKHR");
813 out->vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)dlSymFunc(lib, "vkGetSemaphoreWin32HandleKHR");
814 #endif
815 #ifdef VK_KHR_external_semaphore_fd
816 out->vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)dlSymFunc(lib, "vkImportSemaphoreFdKHR");
817 out->vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)dlSymFunc(lib, "vkGetSemaphoreFdKHR");
818 #endif
819 #ifdef VK_KHR_push_descriptor
820 out->vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)dlSymFunc(lib, "vkCmdPushDescriptorSetKHR");
821 out->vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)dlSymFunc(lib, "vkCmdPushDescriptorSetWithTemplateKHR");
822 #endif
823 #ifdef VK_KHR_descriptor_update_template
824 out->vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)dlSymFunc(lib, "vkCreateDescriptorUpdateTemplateKHR");
825 out->vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)dlSymFunc(lib, "vkDestroyDescriptorUpdateTemplateKHR");
826 out->vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)dlSymFunc(lib, "vkUpdateDescriptorSetWithTemplateKHR");
827 #endif
828 #ifdef VK_KHR_create_renderpass2
829 out->vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)dlSymFunc(lib, "vkCreateRenderPass2KHR");
830 out->vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)dlSymFunc(lib, "vkCmdBeginRenderPass2KHR");
831 out->vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)dlSymFunc(lib, "vkCmdNextSubpass2KHR");
832 out->vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)dlSymFunc(lib, "vkCmdEndRenderPass2KHR");
833 #endif
834 #ifdef VK_KHR_shared_presentable_image
835 out->vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)dlSymFunc(lib, "vkGetSwapchainStatusKHR");
836 #endif
837 #ifdef VK_KHR_external_fence_capabilities
838 out->vkGetPhysicalDeviceExternalFencePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceExternalFencePropertiesKHR");
839 #endif
840 #ifdef VK_KHR_external_fence_win32
841 out->vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)dlSymFunc(lib, "vkImportFenceWin32HandleKHR");
842 out->vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)dlSymFunc(lib, "vkGetFenceWin32HandleKHR");
843 #endif
844 #ifdef VK_KHR_external_fence_fd
845 out->vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)dlSymFunc(lib, "vkImportFenceFdKHR");
846 out->vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)dlSymFunc(lib, "vkGetFenceFdKHR");
847 #endif
848 #ifdef VK_KHR_performance_query
849 out->vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)dlSymFunc(lib, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
850 out->vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
851 out->vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)dlSymFunc(lib, "vkAcquireProfilingLockKHR");
852 out->vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)dlSymFunc(lib, "vkReleaseProfilingLockKHR");
853 #endif
854 #ifdef VK_KHR_get_surface_capabilities2
855 out->vkGetPhysicalDeviceSurfaceCapabilities2KHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceSurfaceCapabilities2KHR");
856 out->vkGetPhysicalDeviceSurfaceFormats2KHR = (PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceSurfaceFormats2KHR");
857 #endif
858 #ifdef VK_KHR_get_display_properties2
859 out->vkGetPhysicalDeviceDisplayProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayProperties2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceDisplayProperties2KHR");
860 out->vkGetPhysicalDeviceDisplayPlaneProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)dlSymFunc(lib, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
861 out->vkGetDisplayModeProperties2KHR = (PFN_vkGetDisplayModeProperties2KHR)dlSymFunc(lib, "vkGetDisplayModeProperties2KHR");
862 out->vkGetDisplayPlaneCapabilities2KHR = (PFN_vkGetDisplayPlaneCapabilities2KHR)dlSymFunc(lib, "vkGetDisplayPlaneCapabilities2KHR");
863 #endif
864 #ifdef VK_KHR_get_memory_requirements2
865 out->vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)dlSymFunc(lib, "vkGetImageMemoryRequirements2KHR");
866 out->vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)dlSymFunc(lib, "vkGetBufferMemoryRequirements2KHR");
867 out->vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)dlSymFunc(lib, "vkGetImageSparseMemoryRequirements2KHR");
868 #endif
869 #ifdef VK_KHR_sampler_ycbcr_conversion
870 out->vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)dlSymFunc(lib, "vkCreateSamplerYcbcrConversionKHR");
871 out->vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)dlSymFunc(lib, "vkDestroySamplerYcbcrConversionKHR");
872 #endif
873 #ifdef VK_KHR_bind_memory2
874 out->vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)dlSymFunc(lib, "vkBindBufferMemory2KHR");
875 out->vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)dlSymFunc(lib, "vkBindImageMemory2KHR");
876 #endif
877 #ifdef VK_KHR_maintenance3
878 out->vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)dlSymFunc(lib, "vkGetDescriptorSetLayoutSupportKHR");
879 #endif
880 #ifdef VK_KHR_draw_indirect_count
881 out->vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)dlSymFunc(lib, "vkCmdDrawIndirectCountKHR");
882 out->vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)dlSymFunc(lib, "vkCmdDrawIndexedIndirectCountKHR");
883 #endif
884 #ifdef VK_KHR_timeline_semaphore
885 out->vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)dlSymFunc(lib, "vkGetSemaphoreCounterValueKHR");
886 out->vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)dlSymFunc(lib, "vkWaitSemaphoresKHR");
887 out->vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)dlSymFunc(lib, "vkSignalSemaphoreKHR");
888 #endif
889 #ifdef VK_KHR_fragment_shading_rate
890 out->vkGetPhysicalDeviceFragmentShadingRatesKHR = (PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR)dlSymFunc(lib, "vkGetPhysicalDeviceFragmentShadingRatesKHR");
891 out->vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)dlSymFunc(lib, "vkCmdSetFragmentShadingRateKHR");
892 #endif
893 #ifdef VK_KHR_buffer_device_address
894 out->vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)dlSymFunc(lib, "vkGetBufferDeviceAddressKHR");
895 out->vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)dlSymFunc(lib, "vkGetBufferOpaqueCaptureAddressKHR");
896 out->vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)dlSymFunc(lib, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
897 #endif
898 #ifdef VK_KHR_deferred_host_operations
899 out->vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)dlSymFunc(lib, "vkCreateDeferredOperationKHR");
900 out->vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)dlSymFunc(lib, "vkDestroyDeferredOperationKHR");
901 out->vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)dlSymFunc(lib, "vkGetDeferredOperationMaxConcurrencyKHR");
902 out->vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)dlSymFunc(lib, "vkGetDeferredOperationResultKHR");
903 out->vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)dlSymFunc(lib, "vkDeferredOperationJoinKHR");
904 #endif
905 #ifdef VK_KHR_pipeline_executable_properties
906 out->vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)dlSymFunc(lib, "vkGetPipelineExecutablePropertiesKHR");
907 out->vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)dlSymFunc(lib, "vkGetPipelineExecutableStatisticsKHR");
908 out->vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)dlSymFunc(lib, "vkGetPipelineExecutableInternalRepresentationsKHR");
909 #endif
910 #ifdef VK_KHR_copy_commands2
911 out->vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)dlSymFunc(lib, "vkCmdCopyBuffer2KHR");
912 out->vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)dlSymFunc(lib, "vkCmdCopyImage2KHR");
913 out->vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)dlSymFunc(lib, "vkCmdCopyBufferToImage2KHR");
914 out->vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)dlSymFunc(lib, "vkCmdCopyImageToBuffer2KHR");
915 out->vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)dlSymFunc(lib, "vkCmdBlitImage2KHR");
916 out->vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)dlSymFunc(lib, "vkCmdResolveImage2KHR");
917 #endif
918 #ifdef VK_ANDROID_native_buffer
919 out->vkGetSwapchainGrallocUsageANDROID = (PFN_vkGetSwapchainGrallocUsageANDROID)dlSymFunc(lib, "vkGetSwapchainGrallocUsageANDROID");
920 out->vkAcquireImageANDROID = (PFN_vkAcquireImageANDROID)dlSymFunc(lib, "vkAcquireImageANDROID");
921 out->vkQueueSignalReleaseImageANDROID = (PFN_vkQueueSignalReleaseImageANDROID)dlSymFunc(lib, "vkQueueSignalReleaseImageANDROID");
922 #endif
923 #ifdef VK_EXT_debug_marker
924 out->vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)dlSymFunc(lib, "vkDebugMarkerSetObjectTagEXT");
925 out->vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)dlSymFunc(lib, "vkDebugMarkerSetObjectNameEXT");
926 out->vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)dlSymFunc(lib, "vkCmdDebugMarkerBeginEXT");
927 out->vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)dlSymFunc(lib, "vkCmdDebugMarkerEndEXT");
928 out->vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)dlSymFunc(lib, "vkCmdDebugMarkerInsertEXT");
929 #endif
930 #ifdef VK_EXT_transform_feedback
931 out->vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)dlSymFunc(lib, "vkCmdBindTransformFeedbackBuffersEXT");
932 out->vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)dlSymFunc(lib, "vkCmdBeginTransformFeedbackEXT");
933 out->vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)dlSymFunc(lib, "vkCmdEndTransformFeedbackEXT");
934 out->vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)dlSymFunc(lib, "vkCmdBeginQueryIndexedEXT");
935 out->vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)dlSymFunc(lib, "vkCmdEndQueryIndexedEXT");
936 out->vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)dlSymFunc(lib, "vkCmdDrawIndirectByteCountEXT");
937 #endif
938 #ifdef VK_NVX_image_view_handle
939 out->vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)dlSymFunc(lib, "vkGetImageViewHandleNVX");
940 out->vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)dlSymFunc(lib, "vkGetImageViewAddressNVX");
941 #endif
942 #ifdef VK_AMD_draw_indirect_count
943 out->vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)dlSymFunc(lib, "vkCmdDrawIndirectCountAMD");
944 out->vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)dlSymFunc(lib, "vkCmdDrawIndexedIndirectCountAMD");
945 #endif
946 #ifdef VK_AMD_shader_info
947 out->vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)dlSymFunc(lib, "vkGetShaderInfoAMD");
948 #endif
949 #ifdef VK_NV_external_memory_capabilities
950 out->vkGetPhysicalDeviceExternalImageFormatPropertiesNV = (PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)dlSymFunc(lib, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
951 #endif
952 #ifdef VK_NV_external_memory_win32
953 out->vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)dlSymFunc(lib, "vkGetMemoryWin32HandleNV");
954 #endif
955 #ifdef VK_EXT_conditional_rendering
956 out->vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)dlSymFunc(lib, "vkCmdBeginConditionalRenderingEXT");
957 out->vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)dlSymFunc(lib, "vkCmdEndConditionalRenderingEXT");
958 #endif
959 #ifdef VK_NV_clip_space_w_scaling
960 out->vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)dlSymFunc(lib, "vkCmdSetViewportWScalingNV");
961 #endif
962 #ifdef VK_EXT_direct_mode_display
963 out->vkReleaseDisplayEXT = (PFN_vkReleaseDisplayEXT)dlSymFunc(lib, "vkReleaseDisplayEXT");
964 #endif
965 #ifdef VK_EXT_acquire_xlib_display
966 out->vkAcquireXlibDisplayEXT = (PFN_vkAcquireXlibDisplayEXT)dlSymFunc(lib, "vkAcquireXlibDisplayEXT");
967 out->vkGetRandROutputDisplayEXT = (PFN_vkGetRandROutputDisplayEXT)dlSymFunc(lib, "vkGetRandROutputDisplayEXT");
968 #endif
969 #ifdef VK_EXT_display_surface_counter
970 out->vkGetPhysicalDeviceSurfaceCapabilities2EXT = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)dlSymFunc(lib, "vkGetPhysicalDeviceSurfaceCapabilities2EXT");
971 #endif
972 #ifdef VK_EXT_display_control
973 out->vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)dlSymFunc(lib, "vkDisplayPowerControlEXT");
974 out->vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)dlSymFunc(lib, "vkRegisterDeviceEventEXT");
975 out->vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)dlSymFunc(lib, "vkRegisterDisplayEventEXT");
976 out->vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)dlSymFunc(lib, "vkGetSwapchainCounterEXT");
977 #endif
978 #ifdef VK_GOOGLE_display_timing
979 out->vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)dlSymFunc(lib, "vkGetRefreshCycleDurationGOOGLE");
980 out->vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)dlSymFunc(lib, "vkGetPastPresentationTimingGOOGLE");
981 #endif
982 #ifdef VK_EXT_discard_rectangles
983 out->vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)dlSymFunc(lib, "vkCmdSetDiscardRectangleEXT");
984 #endif
985 #ifdef VK_EXT_hdr_metadata
986 out->vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)dlSymFunc(lib, "vkSetHdrMetadataEXT");
987 #endif
988 #ifdef VK_EXT_debug_utils
989 out->vkSetDebugUtilsObjectNameEXT = (PFN_vkSetDebugUtilsObjectNameEXT)dlSymFunc(lib, "vkSetDebugUtilsObjectNameEXT");
990 out->vkSetDebugUtilsObjectTagEXT = (PFN_vkSetDebugUtilsObjectTagEXT)dlSymFunc(lib, "vkSetDebugUtilsObjectTagEXT");
991 out->vkQueueBeginDebugUtilsLabelEXT = (PFN_vkQueueBeginDebugUtilsLabelEXT)dlSymFunc(lib, "vkQueueBeginDebugUtilsLabelEXT");
992 out->vkQueueEndDebugUtilsLabelEXT = (PFN_vkQueueEndDebugUtilsLabelEXT)dlSymFunc(lib, "vkQueueEndDebugUtilsLabelEXT");
993 out->vkQueueInsertDebugUtilsLabelEXT = (PFN_vkQueueInsertDebugUtilsLabelEXT)dlSymFunc(lib, "vkQueueInsertDebugUtilsLabelEXT");
994 out->vkCmdBeginDebugUtilsLabelEXT = (PFN_vkCmdBeginDebugUtilsLabelEXT)dlSymFunc(lib, "vkCmdBeginDebugUtilsLabelEXT");
995 out->vkCmdEndDebugUtilsLabelEXT = (PFN_vkCmdEndDebugUtilsLabelEXT)dlSymFunc(lib, "vkCmdEndDebugUtilsLabelEXT");
996 out->vkCmdInsertDebugUtilsLabelEXT = (PFN_vkCmdInsertDebugUtilsLabelEXT)dlSymFunc(lib, "vkCmdInsertDebugUtilsLabelEXT");
997 #endif
998 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
999 out->vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)dlSymFunc(lib, "vkGetAndroidHardwareBufferPropertiesANDROID");
1000 out->vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)dlSymFunc(lib, "vkGetMemoryAndroidHardwareBufferANDROID");
1001 #endif
1002 #ifdef VK_EXT_sample_locations
1003 out->vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)dlSymFunc(lib, "vkCmdSetSampleLocationsEXT");
1004 out->vkGetPhysicalDeviceMultisamplePropertiesEXT = (PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)dlSymFunc(lib, "vkGetPhysicalDeviceMultisamplePropertiesEXT");
1005 #endif
1006 #ifdef VK_EXT_image_drm_format_modifier
1007 out->vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)dlSymFunc(lib, "vkGetImageDrmFormatModifierPropertiesEXT");
1008 #endif
1009 #ifdef VK_EXT_validation_cache
1010 out->vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)dlSymFunc(lib, "vkCreateValidationCacheEXT");
1011 out->vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)dlSymFunc(lib, "vkDestroyValidationCacheEXT");
1012 out->vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)dlSymFunc(lib, "vkMergeValidationCachesEXT");
1013 out->vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)dlSymFunc(lib, "vkGetValidationCacheDataEXT");
1014 #endif
1015 #ifdef VK_NV_shading_rate_image
1016 out->vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)dlSymFunc(lib, "vkCmdBindShadingRateImageNV");
1017 out->vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)dlSymFunc(lib, "vkCmdSetViewportShadingRatePaletteNV");
1018 out->vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)dlSymFunc(lib, "vkCmdSetCoarseSampleOrderNV");
1019 #endif
1020 #ifdef VK_NV_ray_tracing
1021 out->vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)dlSymFunc(lib, "vkCreateAccelerationStructureNV");
1022 out->vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)dlSymFunc(lib, "vkDestroyAccelerationStructureNV");
1023 out->vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)dlSymFunc(lib, "vkGetAccelerationStructureMemoryRequirementsNV");
1024 out->vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)dlSymFunc(lib, "vkBindAccelerationStructureMemoryNV");
1025 out->vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)dlSymFunc(lib, "vkCmdBuildAccelerationStructureNV");
1026 out->vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)dlSymFunc(lib, "vkCmdCopyAccelerationStructureNV");
1027 out->vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)dlSymFunc(lib, "vkCmdTraceRaysNV");
1028 out->vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)dlSymFunc(lib, "vkCreateRayTracingPipelinesNV");
1029 out->vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)dlSymFunc(lib, "vkGetRayTracingShaderGroupHandlesKHR");
1030 out->vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)dlSymFunc(lib, "vkGetRayTracingShaderGroupHandlesNV");
1031 out->vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)dlSymFunc(lib, "vkGetAccelerationStructureHandleNV");
1032 out->vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)dlSymFunc(lib, "vkCmdWriteAccelerationStructuresPropertiesNV");
1033 out->vkCompileDeferredNV = (PFN_vkCompileDeferredNV)dlSymFunc(lib, "vkCompileDeferredNV");
1034 #endif
1035 #ifdef VK_EXT_external_memory_host
1036 out->vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)dlSymFunc(lib, "vkGetMemoryHostPointerPropertiesEXT");
1037 #endif
1038 #ifdef VK_AMD_buffer_marker
1039 out->vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)dlSymFunc(lib, "vkCmdWriteBufferMarkerAMD");
1040 #endif
1041 #ifdef VK_EXT_calibrated_timestamps
1042 out->vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = (PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)dlSymFunc(lib, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
1043 out->vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)dlSymFunc(lib, "vkGetCalibratedTimestampsEXT");
1044 #endif
1045 #ifdef VK_NV_mesh_shader
1046 out->vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)dlSymFunc(lib, "vkCmdDrawMeshTasksNV");
1047 out->vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)dlSymFunc(lib, "vkCmdDrawMeshTasksIndirectNV");
1048 out->vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)dlSymFunc(lib, "vkCmdDrawMeshTasksIndirectCountNV");
1049 #endif
1050 #ifdef VK_NV_scissor_exclusive
1051 out->vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)dlSymFunc(lib, "vkCmdSetExclusiveScissorNV");
1052 #endif
1053 #ifdef VK_NV_device_diagnostic_checkpoints
1054 out->vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)dlSymFunc(lib, "vkCmdSetCheckpointNV");
1055 out->vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)dlSymFunc(lib, "vkGetQueueCheckpointDataNV");
1056 #endif
1057 #ifdef VK_INTEL_performance_query
1058 out->vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)dlSymFunc(lib, "vkInitializePerformanceApiINTEL");
1059 out->vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)dlSymFunc(lib, "vkUninitializePerformanceApiINTEL");
1060 out->vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)dlSymFunc(lib, "vkCmdSetPerformanceMarkerINTEL");
1061 out->vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)dlSymFunc(lib, "vkCmdSetPerformanceStreamMarkerINTEL");
1062 out->vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)dlSymFunc(lib, "vkCmdSetPerformanceOverrideINTEL");
1063 out->vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)dlSymFunc(lib, "vkAcquirePerformanceConfigurationINTEL");
1064 out->vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)dlSymFunc(lib, "vkReleasePerformanceConfigurationINTEL");
1065 out->vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)dlSymFunc(lib, "vkQueueSetPerformanceConfigurationINTEL");
1066 out->vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)dlSymFunc(lib, "vkGetPerformanceParameterINTEL");
1067 #endif
1068 #ifdef VK_AMD_display_native_hdr
1069 out->vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)dlSymFunc(lib, "vkSetLocalDimmingAMD");
1070 #endif
1071 #ifdef VK_EXT_buffer_device_address
1072 out->vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)dlSymFunc(lib, "vkGetBufferDeviceAddressEXT");
1073 #endif
1074 #ifdef VK_EXT_tooling_info
1075 out->vkGetPhysicalDeviceToolPropertiesEXT = (PFN_vkGetPhysicalDeviceToolPropertiesEXT)dlSymFunc(lib, "vkGetPhysicalDeviceToolPropertiesEXT");
1076 #endif
1077 #ifdef VK_NV_cooperative_matrix
1078 out->vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = (PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)dlSymFunc(lib, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
1079 #endif
1080 #ifdef VK_NV_coverage_reduction_mode
1081 out->vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = (PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)dlSymFunc(lib, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
1082 #endif
1083 #ifdef VK_EXT_full_screen_exclusive
1084 out->vkGetPhysicalDeviceSurfacePresentModes2EXT = (PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT)dlSymFunc(lib, "vkGetPhysicalDeviceSurfacePresentModes2EXT");
1085 out->vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)dlSymFunc(lib, "vkAcquireFullScreenExclusiveModeEXT");
1086 out->vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)dlSymFunc(lib, "vkReleaseFullScreenExclusiveModeEXT");
1087 out->vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)dlSymFunc(lib, "vkGetDeviceGroupSurfacePresentModes2EXT");
1088 #endif
1089 #ifdef VK_EXT_line_rasterization
1090 out->vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)dlSymFunc(lib, "vkCmdSetLineStippleEXT");
1091 #endif
1092 #ifdef VK_EXT_host_query_reset
1093 out->vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)dlSymFunc(lib, "vkResetQueryPoolEXT");
1094 #endif
1095 #ifdef VK_EXT_extended_dynamic_state
1096 out->vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)dlSymFunc(lib, "vkCmdSetCullModeEXT");
1097 out->vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)dlSymFunc(lib, "vkCmdSetFrontFaceEXT");
1098 out->vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)dlSymFunc(lib, "vkCmdSetPrimitiveTopologyEXT");
1099 out->vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)dlSymFunc(lib, "vkCmdSetViewportWithCountEXT");
1100 out->vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)dlSymFunc(lib, "vkCmdSetScissorWithCountEXT");
1101 out->vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)dlSymFunc(lib, "vkCmdBindVertexBuffers2EXT");
1102 out->vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)dlSymFunc(lib, "vkCmdSetDepthTestEnableEXT");
1103 out->vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)dlSymFunc(lib, "vkCmdSetDepthWriteEnableEXT");
1104 out->vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)dlSymFunc(lib, "vkCmdSetDepthCompareOpEXT");
1105 out->vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)dlSymFunc(lib, "vkCmdSetDepthBoundsTestEnableEXT");
1106 out->vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)dlSymFunc(lib, "vkCmdSetStencilTestEnableEXT");
1107 out->vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)dlSymFunc(lib, "vkCmdSetStencilOpEXT");
1108 #endif
1109 #ifdef VK_NV_device_generated_commands
1110 out->vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)dlSymFunc(lib, "vkGetGeneratedCommandsMemoryRequirementsNV");
1111 out->vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)dlSymFunc(lib, "vkCmdPreprocessGeneratedCommandsNV");
1112 out->vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)dlSymFunc(lib, "vkCmdExecuteGeneratedCommandsNV");
1113 out->vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)dlSymFunc(lib, "vkCmdBindPipelineShaderGroupNV");
1114 out->vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)dlSymFunc(lib, "vkCreateIndirectCommandsLayoutNV");
1115 out->vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)dlSymFunc(lib, "vkDestroyIndirectCommandsLayoutNV");
1116 #endif
1117 #ifdef VK_EXT_private_data
1118 out->vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)dlSymFunc(lib, "vkCreatePrivateDataSlotEXT");
1119 out->vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)dlSymFunc(lib, "vkDestroyPrivateDataSlotEXT");
1120 out->vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)dlSymFunc(lib, "vkSetPrivateDataEXT");
1121 out->vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)dlSymFunc(lib, "vkGetPrivateDataEXT");
1122 #endif
1123 #ifdef VK_NV_fragment_shading_rate_enums
1124 out->vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)dlSymFunc(lib, "vkCmdSetFragmentShadingRateEnumNV");
1125 #endif
1126 #ifdef VK_EXT_directfb_surface
1127 out->vkGetPhysicalDeviceDirectFBPresentationSupportEXT = (PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT)dlSymFunc(lib, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT");
1128 #endif
1129 #ifdef VK_GOOGLE_gfxstream
1130 out->vkRegisterImageColorBufferGOOGLE = (PFN_vkRegisterImageColorBufferGOOGLE)dlSymFunc(lib, "vkRegisterImageColorBufferGOOGLE");
1131 out->vkRegisterBufferColorBufferGOOGLE = (PFN_vkRegisterBufferColorBufferGOOGLE)dlSymFunc(lib, "vkRegisterBufferColorBufferGOOGLE");
1132 out->vkMapMemoryIntoAddressSpaceGOOGLE = (PFN_vkMapMemoryIntoAddressSpaceGOOGLE)dlSymFunc(lib, "vkMapMemoryIntoAddressSpaceGOOGLE");
1133 out->vkUpdateDescriptorSetWithTemplateSizedGOOGLE = (PFN_vkUpdateDescriptorSetWithTemplateSizedGOOGLE)dlSymFunc(lib, "vkUpdateDescriptorSetWithTemplateSizedGOOGLE");
1134 out->vkBeginCommandBufferAsyncGOOGLE = (PFN_vkBeginCommandBufferAsyncGOOGLE)dlSymFunc(lib, "vkBeginCommandBufferAsyncGOOGLE");
1135 out->vkEndCommandBufferAsyncGOOGLE = (PFN_vkEndCommandBufferAsyncGOOGLE)dlSymFunc(lib, "vkEndCommandBufferAsyncGOOGLE");
1136 out->vkResetCommandBufferAsyncGOOGLE = (PFN_vkResetCommandBufferAsyncGOOGLE)dlSymFunc(lib, "vkResetCommandBufferAsyncGOOGLE");
1137 out->vkCommandBufferHostSyncGOOGLE = (PFN_vkCommandBufferHostSyncGOOGLE)dlSymFunc(lib, "vkCommandBufferHostSyncGOOGLE");
1138 out->vkCreateImageWithRequirementsGOOGLE = (PFN_vkCreateImageWithRequirementsGOOGLE)dlSymFunc(lib, "vkCreateImageWithRequirementsGOOGLE");
1139 out->vkCreateBufferWithRequirementsGOOGLE = (PFN_vkCreateBufferWithRequirementsGOOGLE)dlSymFunc(lib, "vkCreateBufferWithRequirementsGOOGLE");
1140 out->vkGetMemoryHostAddressInfoGOOGLE = (PFN_vkGetMemoryHostAddressInfoGOOGLE)dlSymFunc(lib, "vkGetMemoryHostAddressInfoGOOGLE");
1141 out->vkFreeMemorySyncGOOGLE = (PFN_vkFreeMemorySyncGOOGLE)dlSymFunc(lib, "vkFreeMemorySyncGOOGLE");
1142 out->vkQueueHostSyncGOOGLE = (PFN_vkQueueHostSyncGOOGLE)dlSymFunc(lib, "vkQueueHostSyncGOOGLE");
1143 out->vkQueueSubmitAsyncGOOGLE = (PFN_vkQueueSubmitAsyncGOOGLE)dlSymFunc(lib, "vkQueueSubmitAsyncGOOGLE");
1144 out->vkQueueWaitIdleAsyncGOOGLE = (PFN_vkQueueWaitIdleAsyncGOOGLE)dlSymFunc(lib, "vkQueueWaitIdleAsyncGOOGLE");
1145 out->vkQueueBindSparseAsyncGOOGLE = (PFN_vkQueueBindSparseAsyncGOOGLE)dlSymFunc(lib, "vkQueueBindSparseAsyncGOOGLE");
1146 out->vkGetLinearImageLayoutGOOGLE = (PFN_vkGetLinearImageLayoutGOOGLE)dlSymFunc(lib, "vkGetLinearImageLayoutGOOGLE");
1147 out->vkQueueFlushCommandsGOOGLE = (PFN_vkQueueFlushCommandsGOOGLE)dlSymFunc(lib, "vkQueueFlushCommandsGOOGLE");
1148 out->vkQueueCommitDescriptorSetUpdatesGOOGLE = (PFN_vkQueueCommitDescriptorSetUpdatesGOOGLE)dlSymFunc(lib, "vkQueueCommitDescriptorSetUpdatesGOOGLE");
1149 out->vkCollectDescriptorPoolIdsGOOGLE = (PFN_vkCollectDescriptorPoolIdsGOOGLE)dlSymFunc(lib, "vkCollectDescriptorPoolIdsGOOGLE");
1150 #endif
1151 #ifdef VK_KHR_acceleration_structure
1152 out->vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)dlSymFunc(lib, "vkCreateAccelerationStructureKHR");
1153 out->vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)dlSymFunc(lib, "vkDestroyAccelerationStructureKHR");
1154 out->vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)dlSymFunc(lib, "vkCmdBuildAccelerationStructuresKHR");
1155 out->vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)dlSymFunc(lib, "vkCmdBuildAccelerationStructuresIndirectKHR");
1156 out->vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)dlSymFunc(lib, "vkBuildAccelerationStructuresKHR");
1157 out->vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)dlSymFunc(lib, "vkCopyAccelerationStructureKHR");
1158 out->vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)dlSymFunc(lib, "vkCopyAccelerationStructureToMemoryKHR");
1159 out->vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)dlSymFunc(lib, "vkCopyMemoryToAccelerationStructureKHR");
1160 out->vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)dlSymFunc(lib, "vkWriteAccelerationStructuresPropertiesKHR");
1161 out->vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)dlSymFunc(lib, "vkCmdCopyAccelerationStructureKHR");
1162 out->vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)dlSymFunc(lib, "vkCmdCopyAccelerationStructureToMemoryKHR");
1163 out->vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)dlSymFunc(lib, "vkCmdCopyMemoryToAccelerationStructureKHR");
1164 out->vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)dlSymFunc(lib, "vkGetAccelerationStructureDeviceAddressKHR");
1165 out->vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)dlSymFunc(lib, "vkCmdWriteAccelerationStructuresPropertiesKHR");
1166 out->vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)dlSymFunc(lib, "vkGetDeviceAccelerationStructureCompatibilityKHR");
1167 out->vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)dlSymFunc(lib, "vkGetAccelerationStructureBuildSizesKHR");
1168 #endif
1169 #ifdef VK_KHR_ray_tracing_pipeline
1170 out->vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)dlSymFunc(lib, "vkCmdTraceRaysKHR");
1171 out->vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)dlSymFunc(lib, "vkCreateRayTracingPipelinesKHR");
1172 out->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)dlSymFunc(lib, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
1173 out->vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)dlSymFunc(lib, "vkCmdTraceRaysIndirectKHR");
1174 out->vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)dlSymFunc(lib, "vkGetRayTracingShaderGroupStackSizeKHR");
1175 out->vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)dlSymFunc(lib, "vkCmdSetRayTracingPipelineStackSizeKHR");
1176 #endif
1177 #ifdef VK_VERSION_1_0
1178 out->vkDestroyInstance = (PFN_vkDestroyInstance)dlSymFunc(lib, "vkDestroyInstance");
1179 out->vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)dlSymFunc(lib, "vkEnumeratePhysicalDevices");
1180 out->vkGetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)dlSymFunc(lib, "vkGetPhysicalDeviceFeatures");
1181 out->vkGetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)dlSymFunc(lib, "vkGetPhysicalDeviceFormatProperties");
1182 out->vkGetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)dlSymFunc(lib, "vkGetPhysicalDeviceImageFormatProperties");
1183 out->vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)dlSymFunc(lib, "vkGetPhysicalDeviceProperties");
1184 out->vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)dlSymFunc(lib, "vkGetPhysicalDeviceQueueFamilyProperties");
1185 out->vkGetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)dlSymFunc(lib, "vkGetPhysicalDeviceMemoryProperties");
1186 out->vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlSymFunc(lib, "vkGetInstanceProcAddr");
1187 out->vkCreateDevice = (PFN_vkCreateDevice)dlSymFunc(lib, "vkCreateDevice");
1188 out->vkDestroyDevice = (PFN_vkDestroyDevice)dlSymFunc(lib, "vkDestroyDevice");
1189 out->vkEnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)dlSymFunc(lib, "vkEnumerateDeviceExtensionProperties");
1190 out->vkEnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)dlSymFunc(lib, "vkEnumerateDeviceLayerProperties");
1191 out->vkDestroyInstance = (PFN_vkDestroyInstance)dlSymFunc(lib, "vkDestroyInstance");
1192 out->vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)dlSymFunc(lib, "vkEnumeratePhysicalDevices");
1193 out->vkGetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)dlSymFunc(lib, "vkGetPhysicalDeviceFeatures");
1194 out->vkGetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)dlSymFunc(lib, "vkGetPhysicalDeviceFormatProperties");
1195 out->vkGetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)dlSymFunc(lib, "vkGetPhysicalDeviceImageFormatProperties");
1196 out->vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)dlSymFunc(lib, "vkGetPhysicalDeviceProperties");
1197 out->vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)dlSymFunc(lib, "vkGetPhysicalDeviceQueueFamilyProperties");
1198 out->vkGetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)dlSymFunc(lib, "vkGetPhysicalDeviceMemoryProperties");
1199 out->vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlSymFunc(lib, "vkGetInstanceProcAddr");
1200 out->vkCreateDevice = (PFN_vkCreateDevice)dlSymFunc(lib, "vkCreateDevice");
1201 out->vkDestroyDevice = (PFN_vkDestroyDevice)dlSymFunc(lib, "vkDestroyDevice");
1202 out->vkEnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)dlSymFunc(lib, "vkEnumerateDeviceExtensionProperties");
1203 out->vkEnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)dlSymFunc(lib, "vkEnumerateDeviceLayerProperties");
1204 #endif
1205 }
1206
init_vulkan_dispatch_from_instance(VulkanDispatch * vk,VkInstance instance,VulkanDispatch * out)1207 void init_vulkan_dispatch_from_instance(
1208 VulkanDispatch* vk,
1209 VkInstance instance,
1210 VulkanDispatch* out)
1211 {
1212 memset(out, 0x0, sizeof(VulkanDispatch));
1213 #ifdef VK_VERSION_1_0
1214 out->vkDestroyInstance = (PFN_vkDestroyInstance)vk->vkGetInstanceProcAddr(instance, "vkDestroyInstance");
1215 out->vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)vk->vkGetInstanceProcAddr(instance, "vkEnumeratePhysicalDevices");
1216 out->vkGetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceFeatures");
1217 out->vkGetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceFormatProperties");
1218 out->vkGetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceImageFormatProperties");
1219 out->vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceProperties");
1220 out->vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceQueueFamilyProperties");
1221 out->vkGetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceMemoryProperties");
1222 out->vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)vk->vkGetInstanceProcAddr(instance, "vkGetInstanceProcAddr");
1223 out->vkCreateDevice = (PFN_vkCreateDevice)vk->vkGetInstanceProcAddr(instance, "vkCreateDevice");
1224 out->vkDestroyDevice = (PFN_vkDestroyDevice)vk->vkGetInstanceProcAddr(instance, "vkDestroyDevice");
1225 out->vkEnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)vk->vkGetInstanceProcAddr(instance, "vkEnumerateDeviceExtensionProperties");
1226 out->vkEnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)vk->vkGetInstanceProcAddr(instance, "vkEnumerateDeviceLayerProperties");
1227 out->vkCreateInstance = (PFN_vkCreateInstance)vk->vkGetInstanceProcAddr(instance, "vkCreateInstance");
1228 out->vkEnumerateInstanceExtensionProperties = (PFN_vkEnumerateInstanceExtensionProperties)vk->vkGetInstanceProcAddr(instance, "vkEnumerateInstanceExtensionProperties");
1229 out->vkEnumerateInstanceLayerProperties = (PFN_vkEnumerateInstanceLayerProperties)vk->vkGetInstanceProcAddr(instance, "vkEnumerateInstanceLayerProperties");
1230 out->vkGetDeviceProcAddr = (PFN_vkGetDeviceProcAddr)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceProcAddr");
1231 out->vkGetPhysicalDeviceSparseImageFormatProperties = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSparseImageFormatProperties");
1232 #endif
1233 #ifdef VK_VERSION_1_1
1234 out->vkEnumerateInstanceVersion = (PFN_vkEnumerateInstanceVersion)vk->vkGetInstanceProcAddr(instance, "vkEnumerateInstanceVersion");
1235 out->vkEnumeratePhysicalDeviceGroups = (PFN_vkEnumeratePhysicalDeviceGroups)vk->vkGetInstanceProcAddr(instance, "vkEnumeratePhysicalDeviceGroups");
1236 out->vkGetPhysicalDeviceFeatures2 = (PFN_vkGetPhysicalDeviceFeatures2)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceFeatures2");
1237 out->vkGetPhysicalDeviceProperties2 = (PFN_vkGetPhysicalDeviceProperties2)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceProperties2");
1238 out->vkGetPhysicalDeviceFormatProperties2 = (PFN_vkGetPhysicalDeviceFormatProperties2)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceFormatProperties2");
1239 out->vkGetPhysicalDeviceImageFormatProperties2 = (PFN_vkGetPhysicalDeviceImageFormatProperties2)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceImageFormatProperties2");
1240 out->vkGetPhysicalDeviceQueueFamilyProperties2 = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceQueueFamilyProperties2");
1241 out->vkGetPhysicalDeviceMemoryProperties2 = (PFN_vkGetPhysicalDeviceMemoryProperties2)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceMemoryProperties2");
1242 out->vkGetPhysicalDeviceSparseImageFormatProperties2 = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSparseImageFormatProperties2");
1243 out->vkGetPhysicalDeviceExternalBufferProperties = (PFN_vkGetPhysicalDeviceExternalBufferProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceExternalBufferProperties");
1244 out->vkGetPhysicalDeviceExternalFenceProperties = (PFN_vkGetPhysicalDeviceExternalFenceProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceExternalFenceProperties");
1245 out->vkGetPhysicalDeviceExternalSemaphoreProperties = (PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceExternalSemaphoreProperties");
1246 #endif
1247 #ifdef VK_KHR_surface
1248 out->vkDestroySurfaceKHR = (PFN_vkDestroySurfaceKHR)vk->vkGetInstanceProcAddr(instance, "vkDestroySurfaceKHR");
1249 #endif
1250 #ifdef VK_KHR_swapchain
1251 out->vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateSwapchainKHR");
1252 out->vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)vk->vkGetInstanceProcAddr(instance, "vkDestroySwapchainKHR");
1253 out->vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetSwapchainImagesKHR");
1254 out->vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)vk->vkGetInstanceProcAddr(instance, "vkAcquireNextImageKHR");
1255 out->vkQueuePresentKHR = (PFN_vkQueuePresentKHR)vk->vkGetInstanceProcAddr(instance, "vkQueuePresentKHR");
1256 #endif
1257 #ifdef VK_KHR_display
1258 out->vkCreateDisplayPlaneSurfaceKHR = (PFN_vkCreateDisplayPlaneSurfaceKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateDisplayPlaneSurfaceKHR");
1259 #endif
1260 #ifdef VK_KHR_xlib_surface
1261 out->vkCreateXlibSurfaceKHR = (PFN_vkCreateXlibSurfaceKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateXlibSurfaceKHR");
1262 out->vkGetPhysicalDeviceXlibPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
1263 #endif
1264 #ifdef VK_KHR_xcb_surface
1265 out->vkCreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateXcbSurfaceKHR");
1266 out->vkGetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
1267 #endif
1268 #ifdef VK_KHR_wayland_surface
1269 out->vkCreateWaylandSurfaceKHR = (PFN_vkCreateWaylandSurfaceKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateWaylandSurfaceKHR");
1270 #endif
1271 #ifdef VK_KHR_android_surface
1272 out->vkCreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateAndroidSurfaceKHR");
1273 #endif
1274 #ifdef VK_KHR_win32_surface
1275 out->vkCreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateWin32SurfaceKHR");
1276 out->vkGetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
1277 #endif
1278 #ifdef VK_KHR_device_group_creation
1279 out->vkEnumeratePhysicalDeviceGroupsKHR = (PFN_vkEnumeratePhysicalDeviceGroupsKHR)vk->vkGetInstanceProcAddr(instance, "vkEnumeratePhysicalDeviceGroupsKHR");
1280 #endif
1281 #ifdef VK_EXT_debug_report
1282 out->vkCreateDebugReportCallbackEXT = (PFN_vkCreateDebugReportCallbackEXT)vk->vkGetInstanceProcAddr(instance, "vkCreateDebugReportCallbackEXT");
1283 out->vkDestroyDebugReportCallbackEXT = (PFN_vkDestroyDebugReportCallbackEXT)vk->vkGetInstanceProcAddr(instance, "vkDestroyDebugReportCallbackEXT");
1284 out->vkDebugReportMessageEXT = (PFN_vkDebugReportMessageEXT)vk->vkGetInstanceProcAddr(instance, "vkDebugReportMessageEXT");
1285 #endif
1286 #ifdef VK_GGP_stream_descriptor_surface
1287 out->vkCreateStreamDescriptorSurfaceGGP = (PFN_vkCreateStreamDescriptorSurfaceGGP)vk->vkGetInstanceProcAddr(instance, "vkCreateStreamDescriptorSurfaceGGP");
1288 #endif
1289 #ifdef VK_NN_vi_surface
1290 out->vkCreateViSurfaceNN = (PFN_vkCreateViSurfaceNN)vk->vkGetInstanceProcAddr(instance, "vkCreateViSurfaceNN");
1291 #endif
1292 #ifdef VK_MVK_ios_surface
1293 out->vkCreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK)vk->vkGetInstanceProcAddr(instance, "vkCreateIOSSurfaceMVK");
1294 #endif
1295 #ifdef VK_MVK_macos_surface
1296 out->vkCreateMacOSSurfaceMVK = (PFN_vkCreateMacOSSurfaceMVK)vk->vkGetInstanceProcAddr(instance, "vkCreateMacOSSurfaceMVK");
1297 #endif
1298 #ifdef VK_EXT_debug_utils
1299 out->vkCreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT)vk->vkGetInstanceProcAddr(instance, "vkCreateDebugUtilsMessengerEXT");
1300 out->vkDestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT)vk->vkGetInstanceProcAddr(instance, "vkDestroyDebugUtilsMessengerEXT");
1301 out->vkSubmitDebugUtilsMessageEXT = (PFN_vkSubmitDebugUtilsMessageEXT)vk->vkGetInstanceProcAddr(instance, "vkSubmitDebugUtilsMessageEXT");
1302 #endif
1303 #ifdef VK_FUCHSIA_imagepipe_surface
1304 out->vkCreateImagePipeSurfaceFUCHSIA = (PFN_vkCreateImagePipeSurfaceFUCHSIA)vk->vkGetInstanceProcAddr(instance, "vkCreateImagePipeSurfaceFUCHSIA");
1305 #endif
1306 #ifdef VK_EXT_metal_surface
1307 out->vkCreateMetalSurfaceEXT = (PFN_vkCreateMetalSurfaceEXT)vk->vkGetInstanceProcAddr(instance, "vkCreateMetalSurfaceEXT");
1308 #endif
1309 #ifdef VK_EXT_headless_surface
1310 out->vkCreateHeadlessSurfaceEXT = (PFN_vkCreateHeadlessSurfaceEXT)vk->vkGetInstanceProcAddr(instance, "vkCreateHeadlessSurfaceEXT");
1311 #endif
1312 #ifdef VK_EXT_directfb_surface
1313 out->vkCreateDirectFBSurfaceEXT = (PFN_vkCreateDirectFBSurfaceEXT)vk->vkGetInstanceProcAddr(instance, "vkCreateDirectFBSurfaceEXT");
1314 #endif
1315 #ifdef VK_VERSION_1_0
1316 out->vkGetDeviceQueue = (PFN_vkGetDeviceQueue)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceQueue");
1317 out->vkQueueSubmit = (PFN_vkQueueSubmit)vk->vkGetInstanceProcAddr(instance, "vkQueueSubmit");
1318 out->vkQueueWaitIdle = (PFN_vkQueueWaitIdle)vk->vkGetInstanceProcAddr(instance, "vkQueueWaitIdle");
1319 out->vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)vk->vkGetInstanceProcAddr(instance, "vkDeviceWaitIdle");
1320 out->vkAllocateMemory = (PFN_vkAllocateMemory)vk->vkGetInstanceProcAddr(instance, "vkAllocateMemory");
1321 out->vkFreeMemory = (PFN_vkFreeMemory)vk->vkGetInstanceProcAddr(instance, "vkFreeMemory");
1322 out->vkMapMemory = (PFN_vkMapMemory)vk->vkGetInstanceProcAddr(instance, "vkMapMemory");
1323 out->vkUnmapMemory = (PFN_vkUnmapMemory)vk->vkGetInstanceProcAddr(instance, "vkUnmapMemory");
1324 out->vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)vk->vkGetInstanceProcAddr(instance, "vkFlushMappedMemoryRanges");
1325 out->vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)vk->vkGetInstanceProcAddr(instance, "vkInvalidateMappedMemoryRanges");
1326 out->vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceMemoryCommitment");
1327 out->vkBindBufferMemory = (PFN_vkBindBufferMemory)vk->vkGetInstanceProcAddr(instance, "vkBindBufferMemory");
1328 out->vkBindImageMemory = (PFN_vkBindImageMemory)vk->vkGetInstanceProcAddr(instance, "vkBindImageMemory");
1329 out->vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)vk->vkGetInstanceProcAddr(instance, "vkGetBufferMemoryRequirements");
1330 out->vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)vk->vkGetInstanceProcAddr(instance, "vkGetImageMemoryRequirements");
1331 out->vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)vk->vkGetInstanceProcAddr(instance, "vkGetImageSparseMemoryRequirements");
1332 out->vkQueueBindSparse = (PFN_vkQueueBindSparse)vk->vkGetInstanceProcAddr(instance, "vkQueueBindSparse");
1333 out->vkCreateFence = (PFN_vkCreateFence)vk->vkGetInstanceProcAddr(instance, "vkCreateFence");
1334 out->vkDestroyFence = (PFN_vkDestroyFence)vk->vkGetInstanceProcAddr(instance, "vkDestroyFence");
1335 out->vkResetFences = (PFN_vkResetFences)vk->vkGetInstanceProcAddr(instance, "vkResetFences");
1336 out->vkGetFenceStatus = (PFN_vkGetFenceStatus)vk->vkGetInstanceProcAddr(instance, "vkGetFenceStatus");
1337 out->vkWaitForFences = (PFN_vkWaitForFences)vk->vkGetInstanceProcAddr(instance, "vkWaitForFences");
1338 out->vkCreateSemaphore = (PFN_vkCreateSemaphore)vk->vkGetInstanceProcAddr(instance, "vkCreateSemaphore");
1339 out->vkDestroySemaphore = (PFN_vkDestroySemaphore)vk->vkGetInstanceProcAddr(instance, "vkDestroySemaphore");
1340 out->vkCreateEvent = (PFN_vkCreateEvent)vk->vkGetInstanceProcAddr(instance, "vkCreateEvent");
1341 out->vkDestroyEvent = (PFN_vkDestroyEvent)vk->vkGetInstanceProcAddr(instance, "vkDestroyEvent");
1342 out->vkGetEventStatus = (PFN_vkGetEventStatus)vk->vkGetInstanceProcAddr(instance, "vkGetEventStatus");
1343 out->vkSetEvent = (PFN_vkSetEvent)vk->vkGetInstanceProcAddr(instance, "vkSetEvent");
1344 out->vkResetEvent = (PFN_vkResetEvent)vk->vkGetInstanceProcAddr(instance, "vkResetEvent");
1345 out->vkCreateQueryPool = (PFN_vkCreateQueryPool)vk->vkGetInstanceProcAddr(instance, "vkCreateQueryPool");
1346 out->vkDestroyQueryPool = (PFN_vkDestroyQueryPool)vk->vkGetInstanceProcAddr(instance, "vkDestroyQueryPool");
1347 out->vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)vk->vkGetInstanceProcAddr(instance, "vkGetQueryPoolResults");
1348 out->vkCreateBuffer = (PFN_vkCreateBuffer)vk->vkGetInstanceProcAddr(instance, "vkCreateBuffer");
1349 out->vkDestroyBuffer = (PFN_vkDestroyBuffer)vk->vkGetInstanceProcAddr(instance, "vkDestroyBuffer");
1350 out->vkCreateBufferView = (PFN_vkCreateBufferView)vk->vkGetInstanceProcAddr(instance, "vkCreateBufferView");
1351 out->vkDestroyBufferView = (PFN_vkDestroyBufferView)vk->vkGetInstanceProcAddr(instance, "vkDestroyBufferView");
1352 out->vkCreateImage = (PFN_vkCreateImage)vk->vkGetInstanceProcAddr(instance, "vkCreateImage");
1353 out->vkDestroyImage = (PFN_vkDestroyImage)vk->vkGetInstanceProcAddr(instance, "vkDestroyImage");
1354 out->vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)vk->vkGetInstanceProcAddr(instance, "vkGetImageSubresourceLayout");
1355 out->vkCreateImageView = (PFN_vkCreateImageView)vk->vkGetInstanceProcAddr(instance, "vkCreateImageView");
1356 out->vkDestroyImageView = (PFN_vkDestroyImageView)vk->vkGetInstanceProcAddr(instance, "vkDestroyImageView");
1357 out->vkCreateShaderModule = (PFN_vkCreateShaderModule)vk->vkGetInstanceProcAddr(instance, "vkCreateShaderModule");
1358 out->vkDestroyShaderModule = (PFN_vkDestroyShaderModule)vk->vkGetInstanceProcAddr(instance, "vkDestroyShaderModule");
1359 out->vkCreatePipelineCache = (PFN_vkCreatePipelineCache)vk->vkGetInstanceProcAddr(instance, "vkCreatePipelineCache");
1360 out->vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)vk->vkGetInstanceProcAddr(instance, "vkDestroyPipelineCache");
1361 out->vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)vk->vkGetInstanceProcAddr(instance, "vkGetPipelineCacheData");
1362 out->vkMergePipelineCaches = (PFN_vkMergePipelineCaches)vk->vkGetInstanceProcAddr(instance, "vkMergePipelineCaches");
1363 out->vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)vk->vkGetInstanceProcAddr(instance, "vkCreateGraphicsPipelines");
1364 out->vkCreateComputePipelines = (PFN_vkCreateComputePipelines)vk->vkGetInstanceProcAddr(instance, "vkCreateComputePipelines");
1365 out->vkDestroyPipeline = (PFN_vkDestroyPipeline)vk->vkGetInstanceProcAddr(instance, "vkDestroyPipeline");
1366 out->vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)vk->vkGetInstanceProcAddr(instance, "vkCreatePipelineLayout");
1367 out->vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)vk->vkGetInstanceProcAddr(instance, "vkDestroyPipelineLayout");
1368 out->vkCreateSampler = (PFN_vkCreateSampler)vk->vkGetInstanceProcAddr(instance, "vkCreateSampler");
1369 out->vkDestroySampler = (PFN_vkDestroySampler)vk->vkGetInstanceProcAddr(instance, "vkDestroySampler");
1370 out->vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)vk->vkGetInstanceProcAddr(instance, "vkCreateDescriptorSetLayout");
1371 out->vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)vk->vkGetInstanceProcAddr(instance, "vkDestroyDescriptorSetLayout");
1372 out->vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)vk->vkGetInstanceProcAddr(instance, "vkCreateDescriptorPool");
1373 out->vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)vk->vkGetInstanceProcAddr(instance, "vkDestroyDescriptorPool");
1374 out->vkResetDescriptorPool = (PFN_vkResetDescriptorPool)vk->vkGetInstanceProcAddr(instance, "vkResetDescriptorPool");
1375 out->vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)vk->vkGetInstanceProcAddr(instance, "vkAllocateDescriptorSets");
1376 out->vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)vk->vkGetInstanceProcAddr(instance, "vkFreeDescriptorSets");
1377 out->vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)vk->vkGetInstanceProcAddr(instance, "vkUpdateDescriptorSets");
1378 out->vkCreateFramebuffer = (PFN_vkCreateFramebuffer)vk->vkGetInstanceProcAddr(instance, "vkCreateFramebuffer");
1379 out->vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)vk->vkGetInstanceProcAddr(instance, "vkDestroyFramebuffer");
1380 out->vkCreateRenderPass = (PFN_vkCreateRenderPass)vk->vkGetInstanceProcAddr(instance, "vkCreateRenderPass");
1381 out->vkDestroyRenderPass = (PFN_vkDestroyRenderPass)vk->vkGetInstanceProcAddr(instance, "vkDestroyRenderPass");
1382 out->vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)vk->vkGetInstanceProcAddr(instance, "vkGetRenderAreaGranularity");
1383 out->vkCreateCommandPool = (PFN_vkCreateCommandPool)vk->vkGetInstanceProcAddr(instance, "vkCreateCommandPool");
1384 out->vkDestroyCommandPool = (PFN_vkDestroyCommandPool)vk->vkGetInstanceProcAddr(instance, "vkDestroyCommandPool");
1385 out->vkResetCommandPool = (PFN_vkResetCommandPool)vk->vkGetInstanceProcAddr(instance, "vkResetCommandPool");
1386 out->vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)vk->vkGetInstanceProcAddr(instance, "vkAllocateCommandBuffers");
1387 out->vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)vk->vkGetInstanceProcAddr(instance, "vkFreeCommandBuffers");
1388 out->vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)vk->vkGetInstanceProcAddr(instance, "vkBeginCommandBuffer");
1389 out->vkEndCommandBuffer = (PFN_vkEndCommandBuffer)vk->vkGetInstanceProcAddr(instance, "vkEndCommandBuffer");
1390 out->vkResetCommandBuffer = (PFN_vkResetCommandBuffer)vk->vkGetInstanceProcAddr(instance, "vkResetCommandBuffer");
1391 out->vkCmdBindPipeline = (PFN_vkCmdBindPipeline)vk->vkGetInstanceProcAddr(instance, "vkCmdBindPipeline");
1392 out->vkCmdSetViewport = (PFN_vkCmdSetViewport)vk->vkGetInstanceProcAddr(instance, "vkCmdSetViewport");
1393 out->vkCmdSetScissor = (PFN_vkCmdSetScissor)vk->vkGetInstanceProcAddr(instance, "vkCmdSetScissor");
1394 out->vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)vk->vkGetInstanceProcAddr(instance, "vkCmdSetLineWidth");
1395 out->vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDepthBias");
1396 out->vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)vk->vkGetInstanceProcAddr(instance, "vkCmdSetBlendConstants");
1397 out->vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDepthBounds");
1398 out->vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)vk->vkGetInstanceProcAddr(instance, "vkCmdSetStencilCompareMask");
1399 out->vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)vk->vkGetInstanceProcAddr(instance, "vkCmdSetStencilWriteMask");
1400 out->vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)vk->vkGetInstanceProcAddr(instance, "vkCmdSetStencilReference");
1401 out->vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)vk->vkGetInstanceProcAddr(instance, "vkCmdBindDescriptorSets");
1402 out->vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)vk->vkGetInstanceProcAddr(instance, "vkCmdBindIndexBuffer");
1403 out->vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)vk->vkGetInstanceProcAddr(instance, "vkCmdBindVertexBuffers");
1404 out->vkCmdDraw = (PFN_vkCmdDraw)vk->vkGetInstanceProcAddr(instance, "vkCmdDraw");
1405 out->vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndexed");
1406 out->vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndirect");
1407 out->vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndexedIndirect");
1408 out->vkCmdDispatch = (PFN_vkCmdDispatch)vk->vkGetInstanceProcAddr(instance, "vkCmdDispatch");
1409 out->vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)vk->vkGetInstanceProcAddr(instance, "vkCmdDispatchIndirect");
1410 out->vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyBuffer");
1411 out->vkCmdCopyImage = (PFN_vkCmdCopyImage)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyImage");
1412 out->vkCmdBlitImage = (PFN_vkCmdBlitImage)vk->vkGetInstanceProcAddr(instance, "vkCmdBlitImage");
1413 out->vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyBufferToImage");
1414 out->vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyImageToBuffer");
1415 out->vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)vk->vkGetInstanceProcAddr(instance, "vkCmdUpdateBuffer");
1416 out->vkCmdFillBuffer = (PFN_vkCmdFillBuffer)vk->vkGetInstanceProcAddr(instance, "vkCmdFillBuffer");
1417 out->vkCmdClearColorImage = (PFN_vkCmdClearColorImage)vk->vkGetInstanceProcAddr(instance, "vkCmdClearColorImage");
1418 out->vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)vk->vkGetInstanceProcAddr(instance, "vkCmdClearDepthStencilImage");
1419 out->vkCmdClearAttachments = (PFN_vkCmdClearAttachments)vk->vkGetInstanceProcAddr(instance, "vkCmdClearAttachments");
1420 out->vkCmdResolveImage = (PFN_vkCmdResolveImage)vk->vkGetInstanceProcAddr(instance, "vkCmdResolveImage");
1421 out->vkCmdSetEvent = (PFN_vkCmdSetEvent)vk->vkGetInstanceProcAddr(instance, "vkCmdSetEvent");
1422 out->vkCmdResetEvent = (PFN_vkCmdResetEvent)vk->vkGetInstanceProcAddr(instance, "vkCmdResetEvent");
1423 out->vkCmdWaitEvents = (PFN_vkCmdWaitEvents)vk->vkGetInstanceProcAddr(instance, "vkCmdWaitEvents");
1424 out->vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)vk->vkGetInstanceProcAddr(instance, "vkCmdPipelineBarrier");
1425 out->vkCmdBeginQuery = (PFN_vkCmdBeginQuery)vk->vkGetInstanceProcAddr(instance, "vkCmdBeginQuery");
1426 out->vkCmdEndQuery = (PFN_vkCmdEndQuery)vk->vkGetInstanceProcAddr(instance, "vkCmdEndQuery");
1427 out->vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)vk->vkGetInstanceProcAddr(instance, "vkCmdResetQueryPool");
1428 out->vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)vk->vkGetInstanceProcAddr(instance, "vkCmdWriteTimestamp");
1429 out->vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyQueryPoolResults");
1430 out->vkCmdPushConstants = (PFN_vkCmdPushConstants)vk->vkGetInstanceProcAddr(instance, "vkCmdPushConstants");
1431 out->vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)vk->vkGetInstanceProcAddr(instance, "vkCmdBeginRenderPass");
1432 out->vkCmdNextSubpass = (PFN_vkCmdNextSubpass)vk->vkGetInstanceProcAddr(instance, "vkCmdNextSubpass");
1433 out->vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)vk->vkGetInstanceProcAddr(instance, "vkCmdEndRenderPass");
1434 out->vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)vk->vkGetInstanceProcAddr(instance, "vkCmdExecuteCommands");
1435 #endif
1436 #ifdef VK_VERSION_1_1
1437 out->vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)vk->vkGetInstanceProcAddr(instance, "vkBindBufferMemory2");
1438 out->vkBindImageMemory2 = (PFN_vkBindImageMemory2)vk->vkGetInstanceProcAddr(instance, "vkBindImageMemory2");
1439 out->vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceGroupPeerMemoryFeatures");
1440 out->vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDeviceMask");
1441 out->vkCmdDispatchBase = (PFN_vkCmdDispatchBase)vk->vkGetInstanceProcAddr(instance, "vkCmdDispatchBase");
1442 out->vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)vk->vkGetInstanceProcAddr(instance, "vkGetImageMemoryRequirements2");
1443 out->vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)vk->vkGetInstanceProcAddr(instance, "vkGetBufferMemoryRequirements2");
1444 out->vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)vk->vkGetInstanceProcAddr(instance, "vkGetImageSparseMemoryRequirements2");
1445 out->vkTrimCommandPool = (PFN_vkTrimCommandPool)vk->vkGetInstanceProcAddr(instance, "vkTrimCommandPool");
1446 out->vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceQueue2");
1447 out->vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)vk->vkGetInstanceProcAddr(instance, "vkCreateSamplerYcbcrConversion");
1448 out->vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)vk->vkGetInstanceProcAddr(instance, "vkDestroySamplerYcbcrConversion");
1449 out->vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)vk->vkGetInstanceProcAddr(instance, "vkCreateDescriptorUpdateTemplate");
1450 out->vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)vk->vkGetInstanceProcAddr(instance, "vkDestroyDescriptorUpdateTemplate");
1451 out->vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)vk->vkGetInstanceProcAddr(instance, "vkUpdateDescriptorSetWithTemplate");
1452 out->vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)vk->vkGetInstanceProcAddr(instance, "vkGetDescriptorSetLayoutSupport");
1453 #endif
1454 #ifdef VK_VERSION_1_2
1455 out->vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndirectCount");
1456 out->vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndexedIndirectCount");
1457 out->vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)vk->vkGetInstanceProcAddr(instance, "vkCreateRenderPass2");
1458 out->vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)vk->vkGetInstanceProcAddr(instance, "vkCmdBeginRenderPass2");
1459 out->vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)vk->vkGetInstanceProcAddr(instance, "vkCmdNextSubpass2");
1460 out->vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)vk->vkGetInstanceProcAddr(instance, "vkCmdEndRenderPass2");
1461 out->vkResetQueryPool = (PFN_vkResetQueryPool)vk->vkGetInstanceProcAddr(instance, "vkResetQueryPool");
1462 out->vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)vk->vkGetInstanceProcAddr(instance, "vkGetSemaphoreCounterValue");
1463 out->vkWaitSemaphores = (PFN_vkWaitSemaphores)vk->vkGetInstanceProcAddr(instance, "vkWaitSemaphores");
1464 out->vkSignalSemaphore = (PFN_vkSignalSemaphore)vk->vkGetInstanceProcAddr(instance, "vkSignalSemaphore");
1465 out->vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)vk->vkGetInstanceProcAddr(instance, "vkGetBufferDeviceAddress");
1466 out->vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)vk->vkGetInstanceProcAddr(instance, "vkGetBufferOpaqueCaptureAddress");
1467 out->vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceMemoryOpaqueCaptureAddress");
1468 #endif
1469 #ifdef VK_KHR_surface
1470 out->vkGetPhysicalDeviceSurfaceSupportKHR = (PFN_vkGetPhysicalDeviceSurfaceSupportKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSurfaceSupportKHR");
1471 out->vkGetPhysicalDeviceSurfaceCapabilitiesKHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
1472 out->vkGetPhysicalDeviceSurfaceFormatsKHR = (PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSurfaceFormatsKHR");
1473 out->vkGetPhysicalDeviceSurfacePresentModesKHR = (PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSurfacePresentModesKHR");
1474 #endif
1475 #ifdef VK_KHR_swapchain
1476 out->vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceGroupPresentCapabilitiesKHR");
1477 out->vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceGroupSurfacePresentModesKHR");
1478 out->vkGetPhysicalDevicePresentRectanglesKHR = (PFN_vkGetPhysicalDevicePresentRectanglesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDevicePresentRectanglesKHR");
1479 out->vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)vk->vkGetInstanceProcAddr(instance, "vkAcquireNextImage2KHR");
1480 #endif
1481 #ifdef VK_KHR_display
1482 out->vkGetPhysicalDeviceDisplayPropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceDisplayPropertiesKHR");
1483 out->vkGetPhysicalDeviceDisplayPlanePropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
1484 out->vkGetDisplayPlaneSupportedDisplaysKHR = (PFN_vkGetDisplayPlaneSupportedDisplaysKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDisplayPlaneSupportedDisplaysKHR");
1485 out->vkGetDisplayModePropertiesKHR = (PFN_vkGetDisplayModePropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDisplayModePropertiesKHR");
1486 out->vkCreateDisplayModeKHR = (PFN_vkCreateDisplayModeKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateDisplayModeKHR");
1487 out->vkGetDisplayPlaneCapabilitiesKHR = (PFN_vkGetDisplayPlaneCapabilitiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDisplayPlaneCapabilitiesKHR");
1488 #endif
1489 #ifdef VK_KHR_display_swapchain
1490 out->vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateSharedSwapchainsKHR");
1491 #endif
1492 #ifdef VK_KHR_wayland_surface
1493 out->vkGetPhysicalDeviceWaylandPresentationSupportKHR = (PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
1494 #endif
1495 #ifdef VK_KHR_get_physical_device_properties2
1496 out->vkGetPhysicalDeviceFeatures2KHR = (PFN_vkGetPhysicalDeviceFeatures2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceFeatures2KHR");
1497 out->vkGetPhysicalDeviceProperties2KHR = (PFN_vkGetPhysicalDeviceProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceProperties2KHR");
1498 out->vkGetPhysicalDeviceFormatProperties2KHR = (PFN_vkGetPhysicalDeviceFormatProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceFormatProperties2KHR");
1499 out->vkGetPhysicalDeviceImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceImageFormatProperties2KHR");
1500 out->vkGetPhysicalDeviceQueueFamilyProperties2KHR = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceQueueFamilyProperties2KHR");
1501 out->vkGetPhysicalDeviceMemoryProperties2KHR = (PFN_vkGetPhysicalDeviceMemoryProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceMemoryProperties2KHR");
1502 out->vkGetPhysicalDeviceSparseImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
1503 #endif
1504 #ifdef VK_KHR_device_group
1505 out->vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
1506 out->vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDeviceMaskKHR");
1507 out->vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdDispatchBaseKHR");
1508 #endif
1509 #ifdef VK_KHR_maintenance1
1510 out->vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)vk->vkGetInstanceProcAddr(instance, "vkTrimCommandPoolKHR");
1511 #endif
1512 #ifdef VK_KHR_external_memory_capabilities
1513 out->vkGetPhysicalDeviceExternalBufferPropertiesKHR = (PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceExternalBufferPropertiesKHR");
1514 #endif
1515 #ifdef VK_KHR_external_memory_win32
1516 out->vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)vk->vkGetInstanceProcAddr(instance, "vkGetMemoryWin32HandleKHR");
1517 out->vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetMemoryWin32HandlePropertiesKHR");
1518 #endif
1519 #ifdef VK_KHR_external_memory_fd
1520 out->vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)vk->vkGetInstanceProcAddr(instance, "vkGetMemoryFdKHR");
1521 out->vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetMemoryFdPropertiesKHR");
1522 #endif
1523 #ifdef VK_KHR_external_semaphore_capabilities
1524 out->vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
1525 #endif
1526 #ifdef VK_KHR_external_semaphore_win32
1527 out->vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)vk->vkGetInstanceProcAddr(instance, "vkImportSemaphoreWin32HandleKHR");
1528 out->vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)vk->vkGetInstanceProcAddr(instance, "vkGetSemaphoreWin32HandleKHR");
1529 #endif
1530 #ifdef VK_KHR_external_semaphore_fd
1531 out->vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)vk->vkGetInstanceProcAddr(instance, "vkImportSemaphoreFdKHR");
1532 out->vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)vk->vkGetInstanceProcAddr(instance, "vkGetSemaphoreFdKHR");
1533 #endif
1534 #ifdef VK_KHR_push_descriptor
1535 out->vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdPushDescriptorSetKHR");
1536 out->vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdPushDescriptorSetWithTemplateKHR");
1537 #endif
1538 #ifdef VK_KHR_descriptor_update_template
1539 out->vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateDescriptorUpdateTemplateKHR");
1540 out->vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)vk->vkGetInstanceProcAddr(instance, "vkDestroyDescriptorUpdateTemplateKHR");
1541 out->vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)vk->vkGetInstanceProcAddr(instance, "vkUpdateDescriptorSetWithTemplateKHR");
1542 #endif
1543 #ifdef VK_KHR_create_renderpass2
1544 out->vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)vk->vkGetInstanceProcAddr(instance, "vkCreateRenderPass2KHR");
1545 out->vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdBeginRenderPass2KHR");
1546 out->vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdNextSubpass2KHR");
1547 out->vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdEndRenderPass2KHR");
1548 #endif
1549 #ifdef VK_KHR_shared_presentable_image
1550 out->vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)vk->vkGetInstanceProcAddr(instance, "vkGetSwapchainStatusKHR");
1551 #endif
1552 #ifdef VK_KHR_external_fence_capabilities
1553 out->vkGetPhysicalDeviceExternalFencePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceExternalFencePropertiesKHR");
1554 #endif
1555 #ifdef VK_KHR_external_fence_win32
1556 out->vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)vk->vkGetInstanceProcAddr(instance, "vkImportFenceWin32HandleKHR");
1557 out->vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)vk->vkGetInstanceProcAddr(instance, "vkGetFenceWin32HandleKHR");
1558 #endif
1559 #ifdef VK_KHR_external_fence_fd
1560 out->vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)vk->vkGetInstanceProcAddr(instance, "vkImportFenceFdKHR");
1561 out->vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)vk->vkGetInstanceProcAddr(instance, "vkGetFenceFdKHR");
1562 #endif
1563 #ifdef VK_KHR_performance_query
1564 out->vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)vk->vkGetInstanceProcAddr(instance, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
1565 out->vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
1566 out->vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)vk->vkGetInstanceProcAddr(instance, "vkAcquireProfilingLockKHR");
1567 out->vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)vk->vkGetInstanceProcAddr(instance, "vkReleaseProfilingLockKHR");
1568 #endif
1569 #ifdef VK_KHR_get_surface_capabilities2
1570 out->vkGetPhysicalDeviceSurfaceCapabilities2KHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSurfaceCapabilities2KHR");
1571 out->vkGetPhysicalDeviceSurfaceFormats2KHR = (PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSurfaceFormats2KHR");
1572 #endif
1573 #ifdef VK_KHR_get_display_properties2
1574 out->vkGetPhysicalDeviceDisplayProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceDisplayProperties2KHR");
1575 out->vkGetPhysicalDeviceDisplayPlaneProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
1576 out->vkGetDisplayModeProperties2KHR = (PFN_vkGetDisplayModeProperties2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetDisplayModeProperties2KHR");
1577 out->vkGetDisplayPlaneCapabilities2KHR = (PFN_vkGetDisplayPlaneCapabilities2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetDisplayPlaneCapabilities2KHR");
1578 #endif
1579 #ifdef VK_KHR_get_memory_requirements2
1580 out->vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetImageMemoryRequirements2KHR");
1581 out->vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetBufferMemoryRequirements2KHR");
1582 out->vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)vk->vkGetInstanceProcAddr(instance, "vkGetImageSparseMemoryRequirements2KHR");
1583 #endif
1584 #ifdef VK_KHR_sampler_ycbcr_conversion
1585 out->vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateSamplerYcbcrConversionKHR");
1586 out->vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)vk->vkGetInstanceProcAddr(instance, "vkDestroySamplerYcbcrConversionKHR");
1587 #endif
1588 #ifdef VK_KHR_bind_memory2
1589 out->vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)vk->vkGetInstanceProcAddr(instance, "vkBindBufferMemory2KHR");
1590 out->vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)vk->vkGetInstanceProcAddr(instance, "vkBindImageMemory2KHR");
1591 #endif
1592 #ifdef VK_KHR_maintenance3
1593 out->vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDescriptorSetLayoutSupportKHR");
1594 #endif
1595 #ifdef VK_KHR_draw_indirect_count
1596 out->vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndirectCountKHR");
1597 out->vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndexedIndirectCountKHR");
1598 #endif
1599 #ifdef VK_KHR_timeline_semaphore
1600 out->vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)vk->vkGetInstanceProcAddr(instance, "vkGetSemaphoreCounterValueKHR");
1601 out->vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)vk->vkGetInstanceProcAddr(instance, "vkWaitSemaphoresKHR");
1602 out->vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)vk->vkGetInstanceProcAddr(instance, "vkSignalSemaphoreKHR");
1603 #endif
1604 #ifdef VK_KHR_fragment_shading_rate
1605 out->vkGetPhysicalDeviceFragmentShadingRatesKHR = (PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceFragmentShadingRatesKHR");
1606 out->vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdSetFragmentShadingRateKHR");
1607 #endif
1608 #ifdef VK_KHR_buffer_device_address
1609 out->vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)vk->vkGetInstanceProcAddr(instance, "vkGetBufferDeviceAddressKHR");
1610 out->vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)vk->vkGetInstanceProcAddr(instance, "vkGetBufferOpaqueCaptureAddressKHR");
1611 out->vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
1612 #endif
1613 #ifdef VK_KHR_deferred_host_operations
1614 out->vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateDeferredOperationKHR");
1615 out->vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)vk->vkGetInstanceProcAddr(instance, "vkDestroyDeferredOperationKHR");
1616 out->vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDeferredOperationMaxConcurrencyKHR");
1617 out->vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDeferredOperationResultKHR");
1618 out->vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)vk->vkGetInstanceProcAddr(instance, "vkDeferredOperationJoinKHR");
1619 #endif
1620 #ifdef VK_KHR_pipeline_executable_properties
1621 out->vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPipelineExecutablePropertiesKHR");
1622 out->vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPipelineExecutableStatisticsKHR");
1623 out->vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)vk->vkGetInstanceProcAddr(instance, "vkGetPipelineExecutableInternalRepresentationsKHR");
1624 #endif
1625 #ifdef VK_KHR_copy_commands2
1626 out->vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyBuffer2KHR");
1627 out->vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyImage2KHR");
1628 out->vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyBufferToImage2KHR");
1629 out->vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyImageToBuffer2KHR");
1630 out->vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdBlitImage2KHR");
1631 out->vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)vk->vkGetInstanceProcAddr(instance, "vkCmdResolveImage2KHR");
1632 #endif
1633 #ifdef VK_ANDROID_native_buffer
1634 out->vkGetSwapchainGrallocUsageANDROID = (PFN_vkGetSwapchainGrallocUsageANDROID)vk->vkGetInstanceProcAddr(instance, "vkGetSwapchainGrallocUsageANDROID");
1635 out->vkAcquireImageANDROID = (PFN_vkAcquireImageANDROID)vk->vkGetInstanceProcAddr(instance, "vkAcquireImageANDROID");
1636 out->vkQueueSignalReleaseImageANDROID = (PFN_vkQueueSignalReleaseImageANDROID)vk->vkGetInstanceProcAddr(instance, "vkQueueSignalReleaseImageANDROID");
1637 #endif
1638 #ifdef VK_EXT_debug_marker
1639 out->vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)vk->vkGetInstanceProcAddr(instance, "vkDebugMarkerSetObjectTagEXT");
1640 out->vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)vk->vkGetInstanceProcAddr(instance, "vkDebugMarkerSetObjectNameEXT");
1641 out->vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdDebugMarkerBeginEXT");
1642 out->vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdDebugMarkerEndEXT");
1643 out->vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdDebugMarkerInsertEXT");
1644 #endif
1645 #ifdef VK_EXT_transform_feedback
1646 out->vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdBindTransformFeedbackBuffersEXT");
1647 out->vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdBeginTransformFeedbackEXT");
1648 out->vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdEndTransformFeedbackEXT");
1649 out->vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdBeginQueryIndexedEXT");
1650 out->vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdEndQueryIndexedEXT");
1651 out->vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndirectByteCountEXT");
1652 #endif
1653 #ifdef VK_NVX_image_view_handle
1654 out->vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)vk->vkGetInstanceProcAddr(instance, "vkGetImageViewHandleNVX");
1655 out->vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)vk->vkGetInstanceProcAddr(instance, "vkGetImageViewAddressNVX");
1656 #endif
1657 #ifdef VK_AMD_draw_indirect_count
1658 out->vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndirectCountAMD");
1659 out->vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawIndexedIndirectCountAMD");
1660 #endif
1661 #ifdef VK_AMD_shader_info
1662 out->vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)vk->vkGetInstanceProcAddr(instance, "vkGetShaderInfoAMD");
1663 #endif
1664 #ifdef VK_NV_external_memory_capabilities
1665 out->vkGetPhysicalDeviceExternalImageFormatPropertiesNV = (PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
1666 #endif
1667 #ifdef VK_NV_external_memory_win32
1668 out->vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)vk->vkGetInstanceProcAddr(instance, "vkGetMemoryWin32HandleNV");
1669 #endif
1670 #ifdef VK_EXT_conditional_rendering
1671 out->vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdBeginConditionalRenderingEXT");
1672 out->vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdEndConditionalRenderingEXT");
1673 #endif
1674 #ifdef VK_NV_clip_space_w_scaling
1675 out->vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)vk->vkGetInstanceProcAddr(instance, "vkCmdSetViewportWScalingNV");
1676 #endif
1677 #ifdef VK_EXT_direct_mode_display
1678 out->vkReleaseDisplayEXT = (PFN_vkReleaseDisplayEXT)vk->vkGetInstanceProcAddr(instance, "vkReleaseDisplayEXT");
1679 #endif
1680 #ifdef VK_EXT_acquire_xlib_display
1681 out->vkAcquireXlibDisplayEXT = (PFN_vkAcquireXlibDisplayEXT)vk->vkGetInstanceProcAddr(instance, "vkAcquireXlibDisplayEXT");
1682 out->vkGetRandROutputDisplayEXT = (PFN_vkGetRandROutputDisplayEXT)vk->vkGetInstanceProcAddr(instance, "vkGetRandROutputDisplayEXT");
1683 #endif
1684 #ifdef VK_EXT_display_surface_counter
1685 out->vkGetPhysicalDeviceSurfaceCapabilities2EXT = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSurfaceCapabilities2EXT");
1686 #endif
1687 #ifdef VK_EXT_display_control
1688 out->vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)vk->vkGetInstanceProcAddr(instance, "vkDisplayPowerControlEXT");
1689 out->vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)vk->vkGetInstanceProcAddr(instance, "vkRegisterDeviceEventEXT");
1690 out->vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)vk->vkGetInstanceProcAddr(instance, "vkRegisterDisplayEventEXT");
1691 out->vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)vk->vkGetInstanceProcAddr(instance, "vkGetSwapchainCounterEXT");
1692 #endif
1693 #ifdef VK_GOOGLE_display_timing
1694 out->vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkGetRefreshCycleDurationGOOGLE");
1695 out->vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkGetPastPresentationTimingGOOGLE");
1696 #endif
1697 #ifdef VK_EXT_discard_rectangles
1698 out->vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDiscardRectangleEXT");
1699 #endif
1700 #ifdef VK_EXT_hdr_metadata
1701 out->vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)vk->vkGetInstanceProcAddr(instance, "vkSetHdrMetadataEXT");
1702 #endif
1703 #ifdef VK_EXT_debug_utils
1704 out->vkSetDebugUtilsObjectNameEXT = (PFN_vkSetDebugUtilsObjectNameEXT)vk->vkGetInstanceProcAddr(instance, "vkSetDebugUtilsObjectNameEXT");
1705 out->vkSetDebugUtilsObjectTagEXT = (PFN_vkSetDebugUtilsObjectTagEXT)vk->vkGetInstanceProcAddr(instance, "vkSetDebugUtilsObjectTagEXT");
1706 out->vkQueueBeginDebugUtilsLabelEXT = (PFN_vkQueueBeginDebugUtilsLabelEXT)vk->vkGetInstanceProcAddr(instance, "vkQueueBeginDebugUtilsLabelEXT");
1707 out->vkQueueEndDebugUtilsLabelEXT = (PFN_vkQueueEndDebugUtilsLabelEXT)vk->vkGetInstanceProcAddr(instance, "vkQueueEndDebugUtilsLabelEXT");
1708 out->vkQueueInsertDebugUtilsLabelEXT = (PFN_vkQueueInsertDebugUtilsLabelEXT)vk->vkGetInstanceProcAddr(instance, "vkQueueInsertDebugUtilsLabelEXT");
1709 out->vkCmdBeginDebugUtilsLabelEXT = (PFN_vkCmdBeginDebugUtilsLabelEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdBeginDebugUtilsLabelEXT");
1710 out->vkCmdEndDebugUtilsLabelEXT = (PFN_vkCmdEndDebugUtilsLabelEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdEndDebugUtilsLabelEXT");
1711 out->vkCmdInsertDebugUtilsLabelEXT = (PFN_vkCmdInsertDebugUtilsLabelEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdInsertDebugUtilsLabelEXT");
1712 #endif
1713 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
1714 out->vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)vk->vkGetInstanceProcAddr(instance, "vkGetAndroidHardwareBufferPropertiesANDROID");
1715 out->vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)vk->vkGetInstanceProcAddr(instance, "vkGetMemoryAndroidHardwareBufferANDROID");
1716 #endif
1717 #ifdef VK_EXT_sample_locations
1718 out->vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetSampleLocationsEXT");
1719 out->vkGetPhysicalDeviceMultisamplePropertiesEXT = (PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceMultisamplePropertiesEXT");
1720 #endif
1721 #ifdef VK_EXT_image_drm_format_modifier
1722 out->vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)vk->vkGetInstanceProcAddr(instance, "vkGetImageDrmFormatModifierPropertiesEXT");
1723 #endif
1724 #ifdef VK_EXT_validation_cache
1725 out->vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)vk->vkGetInstanceProcAddr(instance, "vkCreateValidationCacheEXT");
1726 out->vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)vk->vkGetInstanceProcAddr(instance, "vkDestroyValidationCacheEXT");
1727 out->vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)vk->vkGetInstanceProcAddr(instance, "vkMergeValidationCachesEXT");
1728 out->vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)vk->vkGetInstanceProcAddr(instance, "vkGetValidationCacheDataEXT");
1729 #endif
1730 #ifdef VK_NV_shading_rate_image
1731 out->vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)vk->vkGetInstanceProcAddr(instance, "vkCmdBindShadingRateImageNV");
1732 out->vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)vk->vkGetInstanceProcAddr(instance, "vkCmdSetViewportShadingRatePaletteNV");
1733 out->vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)vk->vkGetInstanceProcAddr(instance, "vkCmdSetCoarseSampleOrderNV");
1734 #endif
1735 #ifdef VK_NV_ray_tracing
1736 out->vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)vk->vkGetInstanceProcAddr(instance, "vkCreateAccelerationStructureNV");
1737 out->vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)vk->vkGetInstanceProcAddr(instance, "vkDestroyAccelerationStructureNV");
1738 out->vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)vk->vkGetInstanceProcAddr(instance, "vkGetAccelerationStructureMemoryRequirementsNV");
1739 out->vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)vk->vkGetInstanceProcAddr(instance, "vkBindAccelerationStructureMemoryNV");
1740 out->vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)vk->vkGetInstanceProcAddr(instance, "vkCmdBuildAccelerationStructureNV");
1741 out->vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyAccelerationStructureNV");
1742 out->vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)vk->vkGetInstanceProcAddr(instance, "vkCmdTraceRaysNV");
1743 out->vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)vk->vkGetInstanceProcAddr(instance, "vkCreateRayTracingPipelinesNV");
1744 out->vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetRayTracingShaderGroupHandlesKHR");
1745 out->vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)vk->vkGetInstanceProcAddr(instance, "vkGetRayTracingShaderGroupHandlesNV");
1746 out->vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)vk->vkGetInstanceProcAddr(instance, "vkGetAccelerationStructureHandleNV");
1747 out->vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)vk->vkGetInstanceProcAddr(instance, "vkCmdWriteAccelerationStructuresPropertiesNV");
1748 out->vkCompileDeferredNV = (PFN_vkCompileDeferredNV)vk->vkGetInstanceProcAddr(instance, "vkCompileDeferredNV");
1749 #endif
1750 #ifdef VK_EXT_external_memory_host
1751 out->vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)vk->vkGetInstanceProcAddr(instance, "vkGetMemoryHostPointerPropertiesEXT");
1752 #endif
1753 #ifdef VK_AMD_buffer_marker
1754 out->vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)vk->vkGetInstanceProcAddr(instance, "vkCmdWriteBufferMarkerAMD");
1755 #endif
1756 #ifdef VK_EXT_calibrated_timestamps
1757 out->vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = (PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
1758 out->vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)vk->vkGetInstanceProcAddr(instance, "vkGetCalibratedTimestampsEXT");
1759 #endif
1760 #ifdef VK_NV_mesh_shader
1761 out->vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawMeshTasksNV");
1762 out->vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawMeshTasksIndirectNV");
1763 out->vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)vk->vkGetInstanceProcAddr(instance, "vkCmdDrawMeshTasksIndirectCountNV");
1764 #endif
1765 #ifdef VK_NV_scissor_exclusive
1766 out->vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)vk->vkGetInstanceProcAddr(instance, "vkCmdSetExclusiveScissorNV");
1767 #endif
1768 #ifdef VK_NV_device_diagnostic_checkpoints
1769 out->vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)vk->vkGetInstanceProcAddr(instance, "vkCmdSetCheckpointNV");
1770 out->vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)vk->vkGetInstanceProcAddr(instance, "vkGetQueueCheckpointDataNV");
1771 #endif
1772 #ifdef VK_INTEL_performance_query
1773 out->vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)vk->vkGetInstanceProcAddr(instance, "vkInitializePerformanceApiINTEL");
1774 out->vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)vk->vkGetInstanceProcAddr(instance, "vkUninitializePerformanceApiINTEL");
1775 out->vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)vk->vkGetInstanceProcAddr(instance, "vkCmdSetPerformanceMarkerINTEL");
1776 out->vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)vk->vkGetInstanceProcAddr(instance, "vkCmdSetPerformanceStreamMarkerINTEL");
1777 out->vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)vk->vkGetInstanceProcAddr(instance, "vkCmdSetPerformanceOverrideINTEL");
1778 out->vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)vk->vkGetInstanceProcAddr(instance, "vkAcquirePerformanceConfigurationINTEL");
1779 out->vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)vk->vkGetInstanceProcAddr(instance, "vkReleasePerformanceConfigurationINTEL");
1780 out->vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)vk->vkGetInstanceProcAddr(instance, "vkQueueSetPerformanceConfigurationINTEL");
1781 out->vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)vk->vkGetInstanceProcAddr(instance, "vkGetPerformanceParameterINTEL");
1782 #endif
1783 #ifdef VK_AMD_display_native_hdr
1784 out->vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)vk->vkGetInstanceProcAddr(instance, "vkSetLocalDimmingAMD");
1785 #endif
1786 #ifdef VK_EXT_buffer_device_address
1787 out->vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)vk->vkGetInstanceProcAddr(instance, "vkGetBufferDeviceAddressEXT");
1788 #endif
1789 #ifdef VK_EXT_tooling_info
1790 out->vkGetPhysicalDeviceToolPropertiesEXT = (PFN_vkGetPhysicalDeviceToolPropertiesEXT)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceToolPropertiesEXT");
1791 #endif
1792 #ifdef VK_NV_cooperative_matrix
1793 out->vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = (PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
1794 #endif
1795 #ifdef VK_NV_coverage_reduction_mode
1796 out->vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = (PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
1797 #endif
1798 #ifdef VK_EXT_full_screen_exclusive
1799 out->vkGetPhysicalDeviceSurfacePresentModes2EXT = (PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceSurfacePresentModes2EXT");
1800 out->vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)vk->vkGetInstanceProcAddr(instance, "vkAcquireFullScreenExclusiveModeEXT");
1801 out->vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)vk->vkGetInstanceProcAddr(instance, "vkReleaseFullScreenExclusiveModeEXT");
1802 out->vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceGroupSurfacePresentModes2EXT");
1803 #endif
1804 #ifdef VK_EXT_line_rasterization
1805 out->vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetLineStippleEXT");
1806 #endif
1807 #ifdef VK_EXT_host_query_reset
1808 out->vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)vk->vkGetInstanceProcAddr(instance, "vkResetQueryPoolEXT");
1809 #endif
1810 #ifdef VK_EXT_extended_dynamic_state
1811 out->vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetCullModeEXT");
1812 out->vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetFrontFaceEXT");
1813 out->vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetPrimitiveTopologyEXT");
1814 out->vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetViewportWithCountEXT");
1815 out->vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetScissorWithCountEXT");
1816 out->vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)vk->vkGetInstanceProcAddr(instance, "vkCmdBindVertexBuffers2EXT");
1817 out->vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDepthTestEnableEXT");
1818 out->vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDepthWriteEnableEXT");
1819 out->vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDepthCompareOpEXT");
1820 out->vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetDepthBoundsTestEnableEXT");
1821 out->vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetStencilTestEnableEXT");
1822 out->vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)vk->vkGetInstanceProcAddr(instance, "vkCmdSetStencilOpEXT");
1823 #endif
1824 #ifdef VK_NV_device_generated_commands
1825 out->vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)vk->vkGetInstanceProcAddr(instance, "vkGetGeneratedCommandsMemoryRequirementsNV");
1826 out->vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)vk->vkGetInstanceProcAddr(instance, "vkCmdPreprocessGeneratedCommandsNV");
1827 out->vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)vk->vkGetInstanceProcAddr(instance, "vkCmdExecuteGeneratedCommandsNV");
1828 out->vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)vk->vkGetInstanceProcAddr(instance, "vkCmdBindPipelineShaderGroupNV");
1829 out->vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)vk->vkGetInstanceProcAddr(instance, "vkCreateIndirectCommandsLayoutNV");
1830 out->vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)vk->vkGetInstanceProcAddr(instance, "vkDestroyIndirectCommandsLayoutNV");
1831 #endif
1832 #ifdef VK_EXT_private_data
1833 out->vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)vk->vkGetInstanceProcAddr(instance, "vkCreatePrivateDataSlotEXT");
1834 out->vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)vk->vkGetInstanceProcAddr(instance, "vkDestroyPrivateDataSlotEXT");
1835 out->vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)vk->vkGetInstanceProcAddr(instance, "vkSetPrivateDataEXT");
1836 out->vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)vk->vkGetInstanceProcAddr(instance, "vkGetPrivateDataEXT");
1837 #endif
1838 #ifdef VK_NV_fragment_shading_rate_enums
1839 out->vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)vk->vkGetInstanceProcAddr(instance, "vkCmdSetFragmentShadingRateEnumNV");
1840 #endif
1841 #ifdef VK_EXT_directfb_surface
1842 out->vkGetPhysicalDeviceDirectFBPresentationSupportEXT = (PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT)vk->vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT");
1843 #endif
1844 #ifdef VK_GOOGLE_gfxstream
1845 out->vkRegisterImageColorBufferGOOGLE = (PFN_vkRegisterImageColorBufferGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkRegisterImageColorBufferGOOGLE");
1846 out->vkRegisterBufferColorBufferGOOGLE = (PFN_vkRegisterBufferColorBufferGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkRegisterBufferColorBufferGOOGLE");
1847 out->vkMapMemoryIntoAddressSpaceGOOGLE = (PFN_vkMapMemoryIntoAddressSpaceGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkMapMemoryIntoAddressSpaceGOOGLE");
1848 out->vkUpdateDescriptorSetWithTemplateSizedGOOGLE = (PFN_vkUpdateDescriptorSetWithTemplateSizedGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkUpdateDescriptorSetWithTemplateSizedGOOGLE");
1849 out->vkBeginCommandBufferAsyncGOOGLE = (PFN_vkBeginCommandBufferAsyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkBeginCommandBufferAsyncGOOGLE");
1850 out->vkEndCommandBufferAsyncGOOGLE = (PFN_vkEndCommandBufferAsyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkEndCommandBufferAsyncGOOGLE");
1851 out->vkResetCommandBufferAsyncGOOGLE = (PFN_vkResetCommandBufferAsyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkResetCommandBufferAsyncGOOGLE");
1852 out->vkCommandBufferHostSyncGOOGLE = (PFN_vkCommandBufferHostSyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkCommandBufferHostSyncGOOGLE");
1853 out->vkCreateImageWithRequirementsGOOGLE = (PFN_vkCreateImageWithRequirementsGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkCreateImageWithRequirementsGOOGLE");
1854 out->vkCreateBufferWithRequirementsGOOGLE = (PFN_vkCreateBufferWithRequirementsGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkCreateBufferWithRequirementsGOOGLE");
1855 out->vkGetMemoryHostAddressInfoGOOGLE = (PFN_vkGetMemoryHostAddressInfoGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkGetMemoryHostAddressInfoGOOGLE");
1856 out->vkFreeMemorySyncGOOGLE = (PFN_vkFreeMemorySyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkFreeMemorySyncGOOGLE");
1857 out->vkQueueHostSyncGOOGLE = (PFN_vkQueueHostSyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkQueueHostSyncGOOGLE");
1858 out->vkQueueSubmitAsyncGOOGLE = (PFN_vkQueueSubmitAsyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkQueueSubmitAsyncGOOGLE");
1859 out->vkQueueWaitIdleAsyncGOOGLE = (PFN_vkQueueWaitIdleAsyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkQueueWaitIdleAsyncGOOGLE");
1860 out->vkQueueBindSparseAsyncGOOGLE = (PFN_vkQueueBindSparseAsyncGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkQueueBindSparseAsyncGOOGLE");
1861 out->vkGetLinearImageLayoutGOOGLE = (PFN_vkGetLinearImageLayoutGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkGetLinearImageLayoutGOOGLE");
1862 out->vkQueueFlushCommandsGOOGLE = (PFN_vkQueueFlushCommandsGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkQueueFlushCommandsGOOGLE");
1863 out->vkQueueCommitDescriptorSetUpdatesGOOGLE = (PFN_vkQueueCommitDescriptorSetUpdatesGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkQueueCommitDescriptorSetUpdatesGOOGLE");
1864 out->vkCollectDescriptorPoolIdsGOOGLE = (PFN_vkCollectDescriptorPoolIdsGOOGLE)vk->vkGetInstanceProcAddr(instance, "vkCollectDescriptorPoolIdsGOOGLE");
1865 #endif
1866 #ifdef VK_KHR_acceleration_structure
1867 out->vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateAccelerationStructureKHR");
1868 out->vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)vk->vkGetInstanceProcAddr(instance, "vkDestroyAccelerationStructureKHR");
1869 out->vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdBuildAccelerationStructuresKHR");
1870 out->vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdBuildAccelerationStructuresIndirectKHR");
1871 out->vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)vk->vkGetInstanceProcAddr(instance, "vkBuildAccelerationStructuresKHR");
1872 out->vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)vk->vkGetInstanceProcAddr(instance, "vkCopyAccelerationStructureKHR");
1873 out->vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)vk->vkGetInstanceProcAddr(instance, "vkCopyAccelerationStructureToMemoryKHR");
1874 out->vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)vk->vkGetInstanceProcAddr(instance, "vkCopyMemoryToAccelerationStructureKHR");
1875 out->vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkWriteAccelerationStructuresPropertiesKHR");
1876 out->vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyAccelerationStructureKHR");
1877 out->vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyAccelerationStructureToMemoryKHR");
1878 out->vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdCopyMemoryToAccelerationStructureKHR");
1879 out->vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)vk->vkGetInstanceProcAddr(instance, "vkGetAccelerationStructureDeviceAddressKHR");
1880 out->vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdWriteAccelerationStructuresPropertiesKHR");
1881 out->vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)vk->vkGetInstanceProcAddr(instance, "vkGetDeviceAccelerationStructureCompatibilityKHR");
1882 out->vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetAccelerationStructureBuildSizesKHR");
1883 #endif
1884 #ifdef VK_KHR_ray_tracing_pipeline
1885 out->vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdTraceRaysKHR");
1886 out->vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)vk->vkGetInstanceProcAddr(instance, "vkCreateRayTracingPipelinesKHR");
1887 out->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)vk->vkGetInstanceProcAddr(instance, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
1888 out->vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdTraceRaysIndirectKHR");
1889 out->vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)vk->vkGetInstanceProcAddr(instance, "vkGetRayTracingShaderGroupStackSizeKHR");
1890 out->vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)vk->vkGetInstanceProcAddr(instance, "vkCmdSetRayTracingPipelineStackSizeKHR");
1891 #endif
1892 #ifdef VK_MVK_moltenvk
1893 out->vkGetMTLDeviceMVK = (PFN_vkGetMTLDeviceMVK)vk->vkGetInstanceProcAddr(instance, "vkGetMTLDeviceMVK");
1894 out->vkSetMTLTextureMVK = (PFN_vkSetMTLTextureMVK)vk->vkGetInstanceProcAddr(instance, "vkSetMTLTextureMVK");
1895 out->vkGetMTLTextureMVK = (PFN_vkGetMTLTextureMVK)vk->vkGetInstanceProcAddr(instance, "vkGetMTLTextureMVK");
1896 out->vkGetMTLBufferMVK = (PFN_vkGetMTLBufferMVK)vk->vkGetInstanceProcAddr(instance, "vkGetMTLBufferMVK");
1897 out->vkUseIOSurfaceMVK = (PFN_vkUseIOSurfaceMVK)vk->vkGetInstanceProcAddr(instance, "vkUseIOSurfaceMVK");
1898 out->vkGetIOSurfaceMVK = (PFN_vkGetIOSurfaceMVK)vk->vkGetInstanceProcAddr(instance, "vkGetIOSurfaceMVK");
1899 #endif
1900 }
1901
init_vulkan_dispatch_from_device(VulkanDispatch * vk,VkDevice device,VulkanDispatch * out)1902 void init_vulkan_dispatch_from_device(
1903 VulkanDispatch* vk,
1904 VkDevice device,
1905 VulkanDispatch* out)
1906 {
1907 memset(out, 0x0, sizeof(VulkanDispatch));
1908 #ifdef VK_VERSION_1_0
1909 out->vkDestroyInstance = (PFN_vkDestroyInstance)vk->vkGetDeviceProcAddr(device, "vkDestroyInstance");
1910 out->vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)vk->vkGetDeviceProcAddr(device, "vkEnumeratePhysicalDevices");
1911 out->vkGetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceFeatures");
1912 out->vkGetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceFormatProperties");
1913 out->vkGetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceImageFormatProperties");
1914 out->vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceProperties");
1915 out->vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceQueueFamilyProperties");
1916 out->vkGetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceMemoryProperties");
1917 out->vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)vk->vkGetDeviceProcAddr(device, "vkGetInstanceProcAddr");
1918 out->vkCreateDevice = (PFN_vkCreateDevice)vk->vkGetDeviceProcAddr(device, "vkCreateDevice");
1919 out->vkDestroyDevice = (PFN_vkDestroyDevice)vk->vkGetDeviceProcAddr(device, "vkDestroyDevice");
1920 out->vkEnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)vk->vkGetDeviceProcAddr(device, "vkEnumerateDeviceExtensionProperties");
1921 out->vkEnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)vk->vkGetDeviceProcAddr(device, "vkEnumerateDeviceLayerProperties");
1922 out->vkCreateInstance = (PFN_vkCreateInstance)vk->vkGetDeviceProcAddr(device, "vkCreateInstance");
1923 out->vkEnumerateInstanceExtensionProperties = (PFN_vkEnumerateInstanceExtensionProperties)vk->vkGetDeviceProcAddr(device, "vkEnumerateInstanceExtensionProperties");
1924 out->vkEnumerateInstanceLayerProperties = (PFN_vkEnumerateInstanceLayerProperties)vk->vkGetDeviceProcAddr(device, "vkEnumerateInstanceLayerProperties");
1925 out->vkGetDeviceProcAddr = (PFN_vkGetDeviceProcAddr)vk->vkGetDeviceProcAddr(device, "vkGetDeviceProcAddr");
1926 out->vkGetPhysicalDeviceSparseImageFormatProperties = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSparseImageFormatProperties");
1927 #endif
1928 #ifdef VK_VERSION_1_1
1929 out->vkEnumerateInstanceVersion = (PFN_vkEnumerateInstanceVersion)vk->vkGetDeviceProcAddr(device, "vkEnumerateInstanceVersion");
1930 out->vkEnumeratePhysicalDeviceGroups = (PFN_vkEnumeratePhysicalDeviceGroups)vk->vkGetDeviceProcAddr(device, "vkEnumeratePhysicalDeviceGroups");
1931 out->vkGetPhysicalDeviceFeatures2 = (PFN_vkGetPhysicalDeviceFeatures2)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceFeatures2");
1932 out->vkGetPhysicalDeviceProperties2 = (PFN_vkGetPhysicalDeviceProperties2)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceProperties2");
1933 out->vkGetPhysicalDeviceFormatProperties2 = (PFN_vkGetPhysicalDeviceFormatProperties2)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceFormatProperties2");
1934 out->vkGetPhysicalDeviceImageFormatProperties2 = (PFN_vkGetPhysicalDeviceImageFormatProperties2)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceImageFormatProperties2");
1935 out->vkGetPhysicalDeviceQueueFamilyProperties2 = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceQueueFamilyProperties2");
1936 out->vkGetPhysicalDeviceMemoryProperties2 = (PFN_vkGetPhysicalDeviceMemoryProperties2)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceMemoryProperties2");
1937 out->vkGetPhysicalDeviceSparseImageFormatProperties2 = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSparseImageFormatProperties2");
1938 out->vkGetPhysicalDeviceExternalBufferProperties = (PFN_vkGetPhysicalDeviceExternalBufferProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceExternalBufferProperties");
1939 out->vkGetPhysicalDeviceExternalFenceProperties = (PFN_vkGetPhysicalDeviceExternalFenceProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceExternalFenceProperties");
1940 out->vkGetPhysicalDeviceExternalSemaphoreProperties = (PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceExternalSemaphoreProperties");
1941 #endif
1942 #ifdef VK_KHR_surface
1943 out->vkDestroySurfaceKHR = (PFN_vkDestroySurfaceKHR)vk->vkGetDeviceProcAddr(device, "vkDestroySurfaceKHR");
1944 #endif
1945 #ifdef VK_KHR_swapchain
1946 out->vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)vk->vkGetDeviceProcAddr(device, "vkCreateSwapchainKHR");
1947 out->vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)vk->vkGetDeviceProcAddr(device, "vkDestroySwapchainKHR");
1948 out->vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)vk->vkGetDeviceProcAddr(device, "vkGetSwapchainImagesKHR");
1949 out->vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)vk->vkGetDeviceProcAddr(device, "vkAcquireNextImageKHR");
1950 out->vkQueuePresentKHR = (PFN_vkQueuePresentKHR)vk->vkGetDeviceProcAddr(device, "vkQueuePresentKHR");
1951 #endif
1952 #ifdef VK_KHR_display
1953 out->vkCreateDisplayPlaneSurfaceKHR = (PFN_vkCreateDisplayPlaneSurfaceKHR)vk->vkGetDeviceProcAddr(device, "vkCreateDisplayPlaneSurfaceKHR");
1954 #endif
1955 #ifdef VK_KHR_xlib_surface
1956 out->vkCreateXlibSurfaceKHR = (PFN_vkCreateXlibSurfaceKHR)vk->vkGetDeviceProcAddr(device, "vkCreateXlibSurfaceKHR");
1957 out->vkGetPhysicalDeviceXlibPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
1958 #endif
1959 #ifdef VK_KHR_xcb_surface
1960 out->vkCreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR)vk->vkGetDeviceProcAddr(device, "vkCreateXcbSurfaceKHR");
1961 out->vkGetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
1962 #endif
1963 #ifdef VK_KHR_wayland_surface
1964 out->vkCreateWaylandSurfaceKHR = (PFN_vkCreateWaylandSurfaceKHR)vk->vkGetDeviceProcAddr(device, "vkCreateWaylandSurfaceKHR");
1965 #endif
1966 #ifdef VK_KHR_android_surface
1967 out->vkCreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR)vk->vkGetDeviceProcAddr(device, "vkCreateAndroidSurfaceKHR");
1968 #endif
1969 #ifdef VK_KHR_win32_surface
1970 out->vkCreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR)vk->vkGetDeviceProcAddr(device, "vkCreateWin32SurfaceKHR");
1971 out->vkGetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
1972 #endif
1973 #ifdef VK_KHR_device_group_creation
1974 out->vkEnumeratePhysicalDeviceGroupsKHR = (PFN_vkEnumeratePhysicalDeviceGroupsKHR)vk->vkGetDeviceProcAddr(device, "vkEnumeratePhysicalDeviceGroupsKHR");
1975 #endif
1976 #ifdef VK_EXT_debug_report
1977 out->vkCreateDebugReportCallbackEXT = (PFN_vkCreateDebugReportCallbackEXT)vk->vkGetDeviceProcAddr(device, "vkCreateDebugReportCallbackEXT");
1978 out->vkDestroyDebugReportCallbackEXT = (PFN_vkDestroyDebugReportCallbackEXT)vk->vkGetDeviceProcAddr(device, "vkDestroyDebugReportCallbackEXT");
1979 out->vkDebugReportMessageEXT = (PFN_vkDebugReportMessageEXT)vk->vkGetDeviceProcAddr(device, "vkDebugReportMessageEXT");
1980 #endif
1981 #ifdef VK_GGP_stream_descriptor_surface
1982 out->vkCreateStreamDescriptorSurfaceGGP = (PFN_vkCreateStreamDescriptorSurfaceGGP)vk->vkGetDeviceProcAddr(device, "vkCreateStreamDescriptorSurfaceGGP");
1983 #endif
1984 #ifdef VK_NN_vi_surface
1985 out->vkCreateViSurfaceNN = (PFN_vkCreateViSurfaceNN)vk->vkGetDeviceProcAddr(device, "vkCreateViSurfaceNN");
1986 #endif
1987 #ifdef VK_MVK_ios_surface
1988 out->vkCreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK)vk->vkGetDeviceProcAddr(device, "vkCreateIOSSurfaceMVK");
1989 #endif
1990 #ifdef VK_MVK_macos_surface
1991 out->vkCreateMacOSSurfaceMVK = (PFN_vkCreateMacOSSurfaceMVK)vk->vkGetDeviceProcAddr(device, "vkCreateMacOSSurfaceMVK");
1992 #endif
1993 #ifdef VK_EXT_debug_utils
1994 out->vkCreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT)vk->vkGetDeviceProcAddr(device, "vkCreateDebugUtilsMessengerEXT");
1995 out->vkDestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT)vk->vkGetDeviceProcAddr(device, "vkDestroyDebugUtilsMessengerEXT");
1996 out->vkSubmitDebugUtilsMessageEXT = (PFN_vkSubmitDebugUtilsMessageEXT)vk->vkGetDeviceProcAddr(device, "vkSubmitDebugUtilsMessageEXT");
1997 #endif
1998 #ifdef VK_FUCHSIA_imagepipe_surface
1999 out->vkCreateImagePipeSurfaceFUCHSIA = (PFN_vkCreateImagePipeSurfaceFUCHSIA)vk->vkGetDeviceProcAddr(device, "vkCreateImagePipeSurfaceFUCHSIA");
2000 #endif
2001 #ifdef VK_EXT_metal_surface
2002 out->vkCreateMetalSurfaceEXT = (PFN_vkCreateMetalSurfaceEXT)vk->vkGetDeviceProcAddr(device, "vkCreateMetalSurfaceEXT");
2003 #endif
2004 #ifdef VK_EXT_headless_surface
2005 out->vkCreateHeadlessSurfaceEXT = (PFN_vkCreateHeadlessSurfaceEXT)vk->vkGetDeviceProcAddr(device, "vkCreateHeadlessSurfaceEXT");
2006 #endif
2007 #ifdef VK_EXT_directfb_surface
2008 out->vkCreateDirectFBSurfaceEXT = (PFN_vkCreateDirectFBSurfaceEXT)vk->vkGetDeviceProcAddr(device, "vkCreateDirectFBSurfaceEXT");
2009 #endif
2010 #ifdef VK_VERSION_1_0
2011 out->vkGetDeviceQueue = (PFN_vkGetDeviceQueue)vk->vkGetDeviceProcAddr(device, "vkGetDeviceQueue");
2012 out->vkQueueSubmit = (PFN_vkQueueSubmit)vk->vkGetDeviceProcAddr(device, "vkQueueSubmit");
2013 out->vkQueueWaitIdle = (PFN_vkQueueWaitIdle)vk->vkGetDeviceProcAddr(device, "vkQueueWaitIdle");
2014 out->vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)vk->vkGetDeviceProcAddr(device, "vkDeviceWaitIdle");
2015 out->vkAllocateMemory = (PFN_vkAllocateMemory)vk->vkGetDeviceProcAddr(device, "vkAllocateMemory");
2016 out->vkFreeMemory = (PFN_vkFreeMemory)vk->vkGetDeviceProcAddr(device, "vkFreeMemory");
2017 out->vkMapMemory = (PFN_vkMapMemory)vk->vkGetDeviceProcAddr(device, "vkMapMemory");
2018 out->vkUnmapMemory = (PFN_vkUnmapMemory)vk->vkGetDeviceProcAddr(device, "vkUnmapMemory");
2019 out->vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)vk->vkGetDeviceProcAddr(device, "vkFlushMappedMemoryRanges");
2020 out->vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)vk->vkGetDeviceProcAddr(device, "vkInvalidateMappedMemoryRanges");
2021 out->vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)vk->vkGetDeviceProcAddr(device, "vkGetDeviceMemoryCommitment");
2022 out->vkBindBufferMemory = (PFN_vkBindBufferMemory)vk->vkGetDeviceProcAddr(device, "vkBindBufferMemory");
2023 out->vkBindImageMemory = (PFN_vkBindImageMemory)vk->vkGetDeviceProcAddr(device, "vkBindImageMemory");
2024 out->vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)vk->vkGetDeviceProcAddr(device, "vkGetBufferMemoryRequirements");
2025 out->vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)vk->vkGetDeviceProcAddr(device, "vkGetImageMemoryRequirements");
2026 out->vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)vk->vkGetDeviceProcAddr(device, "vkGetImageSparseMemoryRequirements");
2027 out->vkQueueBindSparse = (PFN_vkQueueBindSparse)vk->vkGetDeviceProcAddr(device, "vkQueueBindSparse");
2028 out->vkCreateFence = (PFN_vkCreateFence)vk->vkGetDeviceProcAddr(device, "vkCreateFence");
2029 out->vkDestroyFence = (PFN_vkDestroyFence)vk->vkGetDeviceProcAddr(device, "vkDestroyFence");
2030 out->vkResetFences = (PFN_vkResetFences)vk->vkGetDeviceProcAddr(device, "vkResetFences");
2031 out->vkGetFenceStatus = (PFN_vkGetFenceStatus)vk->vkGetDeviceProcAddr(device, "vkGetFenceStatus");
2032 out->vkWaitForFences = (PFN_vkWaitForFences)vk->vkGetDeviceProcAddr(device, "vkWaitForFences");
2033 out->vkCreateSemaphore = (PFN_vkCreateSemaphore)vk->vkGetDeviceProcAddr(device, "vkCreateSemaphore");
2034 out->vkDestroySemaphore = (PFN_vkDestroySemaphore)vk->vkGetDeviceProcAddr(device, "vkDestroySemaphore");
2035 out->vkCreateEvent = (PFN_vkCreateEvent)vk->vkGetDeviceProcAddr(device, "vkCreateEvent");
2036 out->vkDestroyEvent = (PFN_vkDestroyEvent)vk->vkGetDeviceProcAddr(device, "vkDestroyEvent");
2037 out->vkGetEventStatus = (PFN_vkGetEventStatus)vk->vkGetDeviceProcAddr(device, "vkGetEventStatus");
2038 out->vkSetEvent = (PFN_vkSetEvent)vk->vkGetDeviceProcAddr(device, "vkSetEvent");
2039 out->vkResetEvent = (PFN_vkResetEvent)vk->vkGetDeviceProcAddr(device, "vkResetEvent");
2040 out->vkCreateQueryPool = (PFN_vkCreateQueryPool)vk->vkGetDeviceProcAddr(device, "vkCreateQueryPool");
2041 out->vkDestroyQueryPool = (PFN_vkDestroyQueryPool)vk->vkGetDeviceProcAddr(device, "vkDestroyQueryPool");
2042 out->vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)vk->vkGetDeviceProcAddr(device, "vkGetQueryPoolResults");
2043 out->vkCreateBuffer = (PFN_vkCreateBuffer)vk->vkGetDeviceProcAddr(device, "vkCreateBuffer");
2044 out->vkDestroyBuffer = (PFN_vkDestroyBuffer)vk->vkGetDeviceProcAddr(device, "vkDestroyBuffer");
2045 out->vkCreateBufferView = (PFN_vkCreateBufferView)vk->vkGetDeviceProcAddr(device, "vkCreateBufferView");
2046 out->vkDestroyBufferView = (PFN_vkDestroyBufferView)vk->vkGetDeviceProcAddr(device, "vkDestroyBufferView");
2047 out->vkCreateImage = (PFN_vkCreateImage)vk->vkGetDeviceProcAddr(device, "vkCreateImage");
2048 out->vkDestroyImage = (PFN_vkDestroyImage)vk->vkGetDeviceProcAddr(device, "vkDestroyImage");
2049 out->vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)vk->vkGetDeviceProcAddr(device, "vkGetImageSubresourceLayout");
2050 out->vkCreateImageView = (PFN_vkCreateImageView)vk->vkGetDeviceProcAddr(device, "vkCreateImageView");
2051 out->vkDestroyImageView = (PFN_vkDestroyImageView)vk->vkGetDeviceProcAddr(device, "vkDestroyImageView");
2052 out->vkCreateShaderModule = (PFN_vkCreateShaderModule)vk->vkGetDeviceProcAddr(device, "vkCreateShaderModule");
2053 out->vkDestroyShaderModule = (PFN_vkDestroyShaderModule)vk->vkGetDeviceProcAddr(device, "vkDestroyShaderModule");
2054 out->vkCreatePipelineCache = (PFN_vkCreatePipelineCache)vk->vkGetDeviceProcAddr(device, "vkCreatePipelineCache");
2055 out->vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)vk->vkGetDeviceProcAddr(device, "vkDestroyPipelineCache");
2056 out->vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)vk->vkGetDeviceProcAddr(device, "vkGetPipelineCacheData");
2057 out->vkMergePipelineCaches = (PFN_vkMergePipelineCaches)vk->vkGetDeviceProcAddr(device, "vkMergePipelineCaches");
2058 out->vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)vk->vkGetDeviceProcAddr(device, "vkCreateGraphicsPipelines");
2059 out->vkCreateComputePipelines = (PFN_vkCreateComputePipelines)vk->vkGetDeviceProcAddr(device, "vkCreateComputePipelines");
2060 out->vkDestroyPipeline = (PFN_vkDestroyPipeline)vk->vkGetDeviceProcAddr(device, "vkDestroyPipeline");
2061 out->vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)vk->vkGetDeviceProcAddr(device, "vkCreatePipelineLayout");
2062 out->vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)vk->vkGetDeviceProcAddr(device, "vkDestroyPipelineLayout");
2063 out->vkCreateSampler = (PFN_vkCreateSampler)vk->vkGetDeviceProcAddr(device, "vkCreateSampler");
2064 out->vkDestroySampler = (PFN_vkDestroySampler)vk->vkGetDeviceProcAddr(device, "vkDestroySampler");
2065 out->vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)vk->vkGetDeviceProcAddr(device, "vkCreateDescriptorSetLayout");
2066 out->vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)vk->vkGetDeviceProcAddr(device, "vkDestroyDescriptorSetLayout");
2067 out->vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)vk->vkGetDeviceProcAddr(device, "vkCreateDescriptorPool");
2068 out->vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)vk->vkGetDeviceProcAddr(device, "vkDestroyDescriptorPool");
2069 out->vkResetDescriptorPool = (PFN_vkResetDescriptorPool)vk->vkGetDeviceProcAddr(device, "vkResetDescriptorPool");
2070 out->vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)vk->vkGetDeviceProcAddr(device, "vkAllocateDescriptorSets");
2071 out->vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)vk->vkGetDeviceProcAddr(device, "vkFreeDescriptorSets");
2072 out->vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)vk->vkGetDeviceProcAddr(device, "vkUpdateDescriptorSets");
2073 out->vkCreateFramebuffer = (PFN_vkCreateFramebuffer)vk->vkGetDeviceProcAddr(device, "vkCreateFramebuffer");
2074 out->vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)vk->vkGetDeviceProcAddr(device, "vkDestroyFramebuffer");
2075 out->vkCreateRenderPass = (PFN_vkCreateRenderPass)vk->vkGetDeviceProcAddr(device, "vkCreateRenderPass");
2076 out->vkDestroyRenderPass = (PFN_vkDestroyRenderPass)vk->vkGetDeviceProcAddr(device, "vkDestroyRenderPass");
2077 out->vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)vk->vkGetDeviceProcAddr(device, "vkGetRenderAreaGranularity");
2078 out->vkCreateCommandPool = (PFN_vkCreateCommandPool)vk->vkGetDeviceProcAddr(device, "vkCreateCommandPool");
2079 out->vkDestroyCommandPool = (PFN_vkDestroyCommandPool)vk->vkGetDeviceProcAddr(device, "vkDestroyCommandPool");
2080 out->vkResetCommandPool = (PFN_vkResetCommandPool)vk->vkGetDeviceProcAddr(device, "vkResetCommandPool");
2081 out->vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)vk->vkGetDeviceProcAddr(device, "vkAllocateCommandBuffers");
2082 out->vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)vk->vkGetDeviceProcAddr(device, "vkFreeCommandBuffers");
2083 out->vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)vk->vkGetDeviceProcAddr(device, "vkBeginCommandBuffer");
2084 out->vkEndCommandBuffer = (PFN_vkEndCommandBuffer)vk->vkGetDeviceProcAddr(device, "vkEndCommandBuffer");
2085 out->vkResetCommandBuffer = (PFN_vkResetCommandBuffer)vk->vkGetDeviceProcAddr(device, "vkResetCommandBuffer");
2086 out->vkCmdBindPipeline = (PFN_vkCmdBindPipeline)vk->vkGetDeviceProcAddr(device, "vkCmdBindPipeline");
2087 out->vkCmdSetViewport = (PFN_vkCmdSetViewport)vk->vkGetDeviceProcAddr(device, "vkCmdSetViewport");
2088 out->vkCmdSetScissor = (PFN_vkCmdSetScissor)vk->vkGetDeviceProcAddr(device, "vkCmdSetScissor");
2089 out->vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)vk->vkGetDeviceProcAddr(device, "vkCmdSetLineWidth");
2090 out->vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)vk->vkGetDeviceProcAddr(device, "vkCmdSetDepthBias");
2091 out->vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)vk->vkGetDeviceProcAddr(device, "vkCmdSetBlendConstants");
2092 out->vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)vk->vkGetDeviceProcAddr(device, "vkCmdSetDepthBounds");
2093 out->vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)vk->vkGetDeviceProcAddr(device, "vkCmdSetStencilCompareMask");
2094 out->vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)vk->vkGetDeviceProcAddr(device, "vkCmdSetStencilWriteMask");
2095 out->vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)vk->vkGetDeviceProcAddr(device, "vkCmdSetStencilReference");
2096 out->vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)vk->vkGetDeviceProcAddr(device, "vkCmdBindDescriptorSets");
2097 out->vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)vk->vkGetDeviceProcAddr(device, "vkCmdBindIndexBuffer");
2098 out->vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)vk->vkGetDeviceProcAddr(device, "vkCmdBindVertexBuffers");
2099 out->vkCmdDraw = (PFN_vkCmdDraw)vk->vkGetDeviceProcAddr(device, "vkCmdDraw");
2100 out->vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndexed");
2101 out->vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndirect");
2102 out->vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndexedIndirect");
2103 out->vkCmdDispatch = (PFN_vkCmdDispatch)vk->vkGetDeviceProcAddr(device, "vkCmdDispatch");
2104 out->vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)vk->vkGetDeviceProcAddr(device, "vkCmdDispatchIndirect");
2105 out->vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)vk->vkGetDeviceProcAddr(device, "vkCmdCopyBuffer");
2106 out->vkCmdCopyImage = (PFN_vkCmdCopyImage)vk->vkGetDeviceProcAddr(device, "vkCmdCopyImage");
2107 out->vkCmdBlitImage = (PFN_vkCmdBlitImage)vk->vkGetDeviceProcAddr(device, "vkCmdBlitImage");
2108 out->vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)vk->vkGetDeviceProcAddr(device, "vkCmdCopyBufferToImage");
2109 out->vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)vk->vkGetDeviceProcAddr(device, "vkCmdCopyImageToBuffer");
2110 out->vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)vk->vkGetDeviceProcAddr(device, "vkCmdUpdateBuffer");
2111 out->vkCmdFillBuffer = (PFN_vkCmdFillBuffer)vk->vkGetDeviceProcAddr(device, "vkCmdFillBuffer");
2112 out->vkCmdClearColorImage = (PFN_vkCmdClearColorImage)vk->vkGetDeviceProcAddr(device, "vkCmdClearColorImage");
2113 out->vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)vk->vkGetDeviceProcAddr(device, "vkCmdClearDepthStencilImage");
2114 out->vkCmdClearAttachments = (PFN_vkCmdClearAttachments)vk->vkGetDeviceProcAddr(device, "vkCmdClearAttachments");
2115 out->vkCmdResolveImage = (PFN_vkCmdResolveImage)vk->vkGetDeviceProcAddr(device, "vkCmdResolveImage");
2116 out->vkCmdSetEvent = (PFN_vkCmdSetEvent)vk->vkGetDeviceProcAddr(device, "vkCmdSetEvent");
2117 out->vkCmdResetEvent = (PFN_vkCmdResetEvent)vk->vkGetDeviceProcAddr(device, "vkCmdResetEvent");
2118 out->vkCmdWaitEvents = (PFN_vkCmdWaitEvents)vk->vkGetDeviceProcAddr(device, "vkCmdWaitEvents");
2119 out->vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)vk->vkGetDeviceProcAddr(device, "vkCmdPipelineBarrier");
2120 out->vkCmdBeginQuery = (PFN_vkCmdBeginQuery)vk->vkGetDeviceProcAddr(device, "vkCmdBeginQuery");
2121 out->vkCmdEndQuery = (PFN_vkCmdEndQuery)vk->vkGetDeviceProcAddr(device, "vkCmdEndQuery");
2122 out->vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)vk->vkGetDeviceProcAddr(device, "vkCmdResetQueryPool");
2123 out->vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)vk->vkGetDeviceProcAddr(device, "vkCmdWriteTimestamp");
2124 out->vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)vk->vkGetDeviceProcAddr(device, "vkCmdCopyQueryPoolResults");
2125 out->vkCmdPushConstants = (PFN_vkCmdPushConstants)vk->vkGetDeviceProcAddr(device, "vkCmdPushConstants");
2126 out->vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)vk->vkGetDeviceProcAddr(device, "vkCmdBeginRenderPass");
2127 out->vkCmdNextSubpass = (PFN_vkCmdNextSubpass)vk->vkGetDeviceProcAddr(device, "vkCmdNextSubpass");
2128 out->vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)vk->vkGetDeviceProcAddr(device, "vkCmdEndRenderPass");
2129 out->vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)vk->vkGetDeviceProcAddr(device, "vkCmdExecuteCommands");
2130 #endif
2131 #ifdef VK_VERSION_1_1
2132 out->vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)vk->vkGetDeviceProcAddr(device, "vkBindBufferMemory2");
2133 out->vkBindImageMemory2 = (PFN_vkBindImageMemory2)vk->vkGetDeviceProcAddr(device, "vkBindImageMemory2");
2134 out->vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)vk->vkGetDeviceProcAddr(device, "vkGetDeviceGroupPeerMemoryFeatures");
2135 out->vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)vk->vkGetDeviceProcAddr(device, "vkCmdSetDeviceMask");
2136 out->vkCmdDispatchBase = (PFN_vkCmdDispatchBase)vk->vkGetDeviceProcAddr(device, "vkCmdDispatchBase");
2137 out->vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)vk->vkGetDeviceProcAddr(device, "vkGetImageMemoryRequirements2");
2138 out->vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)vk->vkGetDeviceProcAddr(device, "vkGetBufferMemoryRequirements2");
2139 out->vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)vk->vkGetDeviceProcAddr(device, "vkGetImageSparseMemoryRequirements2");
2140 out->vkTrimCommandPool = (PFN_vkTrimCommandPool)vk->vkGetDeviceProcAddr(device, "vkTrimCommandPool");
2141 out->vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)vk->vkGetDeviceProcAddr(device, "vkGetDeviceQueue2");
2142 out->vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)vk->vkGetDeviceProcAddr(device, "vkCreateSamplerYcbcrConversion");
2143 out->vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)vk->vkGetDeviceProcAddr(device, "vkDestroySamplerYcbcrConversion");
2144 out->vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)vk->vkGetDeviceProcAddr(device, "vkCreateDescriptorUpdateTemplate");
2145 out->vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)vk->vkGetDeviceProcAddr(device, "vkDestroyDescriptorUpdateTemplate");
2146 out->vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)vk->vkGetDeviceProcAddr(device, "vkUpdateDescriptorSetWithTemplate");
2147 out->vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)vk->vkGetDeviceProcAddr(device, "vkGetDescriptorSetLayoutSupport");
2148 #endif
2149 #ifdef VK_VERSION_1_2
2150 out->vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndirectCount");
2151 out->vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndexedIndirectCount");
2152 out->vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)vk->vkGetDeviceProcAddr(device, "vkCreateRenderPass2");
2153 out->vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)vk->vkGetDeviceProcAddr(device, "vkCmdBeginRenderPass2");
2154 out->vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)vk->vkGetDeviceProcAddr(device, "vkCmdNextSubpass2");
2155 out->vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)vk->vkGetDeviceProcAddr(device, "vkCmdEndRenderPass2");
2156 out->vkResetQueryPool = (PFN_vkResetQueryPool)vk->vkGetDeviceProcAddr(device, "vkResetQueryPool");
2157 out->vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)vk->vkGetDeviceProcAddr(device, "vkGetSemaphoreCounterValue");
2158 out->vkWaitSemaphores = (PFN_vkWaitSemaphores)vk->vkGetDeviceProcAddr(device, "vkWaitSemaphores");
2159 out->vkSignalSemaphore = (PFN_vkSignalSemaphore)vk->vkGetDeviceProcAddr(device, "vkSignalSemaphore");
2160 out->vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)vk->vkGetDeviceProcAddr(device, "vkGetBufferDeviceAddress");
2161 out->vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)vk->vkGetDeviceProcAddr(device, "vkGetBufferOpaqueCaptureAddress");
2162 out->vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)vk->vkGetDeviceProcAddr(device, "vkGetDeviceMemoryOpaqueCaptureAddress");
2163 #endif
2164 #ifdef VK_KHR_surface
2165 out->vkGetPhysicalDeviceSurfaceSupportKHR = (PFN_vkGetPhysicalDeviceSurfaceSupportKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSurfaceSupportKHR");
2166 out->vkGetPhysicalDeviceSurfaceCapabilitiesKHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
2167 out->vkGetPhysicalDeviceSurfaceFormatsKHR = (PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSurfaceFormatsKHR");
2168 out->vkGetPhysicalDeviceSurfacePresentModesKHR = (PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSurfacePresentModesKHR");
2169 #endif
2170 #ifdef VK_KHR_swapchain
2171 out->vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetDeviceGroupPresentCapabilitiesKHR");
2172 out->vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)vk->vkGetDeviceProcAddr(device, "vkGetDeviceGroupSurfacePresentModesKHR");
2173 out->vkGetPhysicalDevicePresentRectanglesKHR = (PFN_vkGetPhysicalDevicePresentRectanglesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDevicePresentRectanglesKHR");
2174 out->vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)vk->vkGetDeviceProcAddr(device, "vkAcquireNextImage2KHR");
2175 #endif
2176 #ifdef VK_KHR_display
2177 out->vkGetPhysicalDeviceDisplayPropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceDisplayPropertiesKHR");
2178 out->vkGetPhysicalDeviceDisplayPlanePropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
2179 out->vkGetDisplayPlaneSupportedDisplaysKHR = (PFN_vkGetDisplayPlaneSupportedDisplaysKHR)vk->vkGetDeviceProcAddr(device, "vkGetDisplayPlaneSupportedDisplaysKHR");
2180 out->vkGetDisplayModePropertiesKHR = (PFN_vkGetDisplayModePropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetDisplayModePropertiesKHR");
2181 out->vkCreateDisplayModeKHR = (PFN_vkCreateDisplayModeKHR)vk->vkGetDeviceProcAddr(device, "vkCreateDisplayModeKHR");
2182 out->vkGetDisplayPlaneCapabilitiesKHR = (PFN_vkGetDisplayPlaneCapabilitiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetDisplayPlaneCapabilitiesKHR");
2183 #endif
2184 #ifdef VK_KHR_display_swapchain
2185 out->vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)vk->vkGetDeviceProcAddr(device, "vkCreateSharedSwapchainsKHR");
2186 #endif
2187 #ifdef VK_KHR_wayland_surface
2188 out->vkGetPhysicalDeviceWaylandPresentationSupportKHR = (PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
2189 #endif
2190 #ifdef VK_KHR_get_physical_device_properties2
2191 out->vkGetPhysicalDeviceFeatures2KHR = (PFN_vkGetPhysicalDeviceFeatures2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceFeatures2KHR");
2192 out->vkGetPhysicalDeviceProperties2KHR = (PFN_vkGetPhysicalDeviceProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceProperties2KHR");
2193 out->vkGetPhysicalDeviceFormatProperties2KHR = (PFN_vkGetPhysicalDeviceFormatProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceFormatProperties2KHR");
2194 out->vkGetPhysicalDeviceImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceImageFormatProperties2KHR");
2195 out->vkGetPhysicalDeviceQueueFamilyProperties2KHR = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceQueueFamilyProperties2KHR");
2196 out->vkGetPhysicalDeviceMemoryProperties2KHR = (PFN_vkGetPhysicalDeviceMemoryProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceMemoryProperties2KHR");
2197 out->vkGetPhysicalDeviceSparseImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
2198 #endif
2199 #ifdef VK_KHR_device_group
2200 out->vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)vk->vkGetDeviceProcAddr(device, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
2201 out->vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)vk->vkGetDeviceProcAddr(device, "vkCmdSetDeviceMaskKHR");
2202 out->vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)vk->vkGetDeviceProcAddr(device, "vkCmdDispatchBaseKHR");
2203 #endif
2204 #ifdef VK_KHR_maintenance1
2205 out->vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)vk->vkGetDeviceProcAddr(device, "vkTrimCommandPoolKHR");
2206 #endif
2207 #ifdef VK_KHR_external_memory_capabilities
2208 out->vkGetPhysicalDeviceExternalBufferPropertiesKHR = (PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceExternalBufferPropertiesKHR");
2209 #endif
2210 #ifdef VK_KHR_external_memory_win32
2211 out->vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)vk->vkGetDeviceProcAddr(device, "vkGetMemoryWin32HandleKHR");
2212 out->vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetMemoryWin32HandlePropertiesKHR");
2213 #endif
2214 #ifdef VK_KHR_external_memory_fd
2215 out->vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)vk->vkGetDeviceProcAddr(device, "vkGetMemoryFdKHR");
2216 out->vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetMemoryFdPropertiesKHR");
2217 #endif
2218 #ifdef VK_KHR_external_semaphore_capabilities
2219 out->vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
2220 #endif
2221 #ifdef VK_KHR_external_semaphore_win32
2222 out->vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)vk->vkGetDeviceProcAddr(device, "vkImportSemaphoreWin32HandleKHR");
2223 out->vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)vk->vkGetDeviceProcAddr(device, "vkGetSemaphoreWin32HandleKHR");
2224 #endif
2225 #ifdef VK_KHR_external_semaphore_fd
2226 out->vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)vk->vkGetDeviceProcAddr(device, "vkImportSemaphoreFdKHR");
2227 out->vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)vk->vkGetDeviceProcAddr(device, "vkGetSemaphoreFdKHR");
2228 #endif
2229 #ifdef VK_KHR_push_descriptor
2230 out->vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)vk->vkGetDeviceProcAddr(device, "vkCmdPushDescriptorSetKHR");
2231 out->vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)vk->vkGetDeviceProcAddr(device, "vkCmdPushDescriptorSetWithTemplateKHR");
2232 #endif
2233 #ifdef VK_KHR_descriptor_update_template
2234 out->vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)vk->vkGetDeviceProcAddr(device, "vkCreateDescriptorUpdateTemplateKHR");
2235 out->vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)vk->vkGetDeviceProcAddr(device, "vkDestroyDescriptorUpdateTemplateKHR");
2236 out->vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)vk->vkGetDeviceProcAddr(device, "vkUpdateDescriptorSetWithTemplateKHR");
2237 #endif
2238 #ifdef VK_KHR_create_renderpass2
2239 out->vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)vk->vkGetDeviceProcAddr(device, "vkCreateRenderPass2KHR");
2240 out->vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdBeginRenderPass2KHR");
2241 out->vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdNextSubpass2KHR");
2242 out->vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdEndRenderPass2KHR");
2243 #endif
2244 #ifdef VK_KHR_shared_presentable_image
2245 out->vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)vk->vkGetDeviceProcAddr(device, "vkGetSwapchainStatusKHR");
2246 #endif
2247 #ifdef VK_KHR_external_fence_capabilities
2248 out->vkGetPhysicalDeviceExternalFencePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceExternalFencePropertiesKHR");
2249 #endif
2250 #ifdef VK_KHR_external_fence_win32
2251 out->vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)vk->vkGetDeviceProcAddr(device, "vkImportFenceWin32HandleKHR");
2252 out->vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)vk->vkGetDeviceProcAddr(device, "vkGetFenceWin32HandleKHR");
2253 #endif
2254 #ifdef VK_KHR_external_fence_fd
2255 out->vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)vk->vkGetDeviceProcAddr(device, "vkImportFenceFdKHR");
2256 out->vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)vk->vkGetDeviceProcAddr(device, "vkGetFenceFdKHR");
2257 #endif
2258 #ifdef VK_KHR_performance_query
2259 out->vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)vk->vkGetDeviceProcAddr(device, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
2260 out->vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
2261 out->vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)vk->vkGetDeviceProcAddr(device, "vkAcquireProfilingLockKHR");
2262 out->vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)vk->vkGetDeviceProcAddr(device, "vkReleaseProfilingLockKHR");
2263 #endif
2264 #ifdef VK_KHR_get_surface_capabilities2
2265 out->vkGetPhysicalDeviceSurfaceCapabilities2KHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSurfaceCapabilities2KHR");
2266 out->vkGetPhysicalDeviceSurfaceFormats2KHR = (PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSurfaceFormats2KHR");
2267 #endif
2268 #ifdef VK_KHR_get_display_properties2
2269 out->vkGetPhysicalDeviceDisplayProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceDisplayProperties2KHR");
2270 out->vkGetPhysicalDeviceDisplayPlaneProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
2271 out->vkGetDisplayModeProperties2KHR = (PFN_vkGetDisplayModeProperties2KHR)vk->vkGetDeviceProcAddr(device, "vkGetDisplayModeProperties2KHR");
2272 out->vkGetDisplayPlaneCapabilities2KHR = (PFN_vkGetDisplayPlaneCapabilities2KHR)vk->vkGetDeviceProcAddr(device, "vkGetDisplayPlaneCapabilities2KHR");
2273 #endif
2274 #ifdef VK_KHR_get_memory_requirements2
2275 out->vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)vk->vkGetDeviceProcAddr(device, "vkGetImageMemoryRequirements2KHR");
2276 out->vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)vk->vkGetDeviceProcAddr(device, "vkGetBufferMemoryRequirements2KHR");
2277 out->vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)vk->vkGetDeviceProcAddr(device, "vkGetImageSparseMemoryRequirements2KHR");
2278 #endif
2279 #ifdef VK_KHR_sampler_ycbcr_conversion
2280 out->vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)vk->vkGetDeviceProcAddr(device, "vkCreateSamplerYcbcrConversionKHR");
2281 out->vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)vk->vkGetDeviceProcAddr(device, "vkDestroySamplerYcbcrConversionKHR");
2282 #endif
2283 #ifdef VK_KHR_bind_memory2
2284 out->vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)vk->vkGetDeviceProcAddr(device, "vkBindBufferMemory2KHR");
2285 out->vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)vk->vkGetDeviceProcAddr(device, "vkBindImageMemory2KHR");
2286 #endif
2287 #ifdef VK_KHR_maintenance3
2288 out->vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)vk->vkGetDeviceProcAddr(device, "vkGetDescriptorSetLayoutSupportKHR");
2289 #endif
2290 #ifdef VK_KHR_draw_indirect_count
2291 out->vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndirectCountKHR");
2292 out->vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndexedIndirectCountKHR");
2293 #endif
2294 #ifdef VK_KHR_timeline_semaphore
2295 out->vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)vk->vkGetDeviceProcAddr(device, "vkGetSemaphoreCounterValueKHR");
2296 out->vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)vk->vkGetDeviceProcAddr(device, "vkWaitSemaphoresKHR");
2297 out->vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)vk->vkGetDeviceProcAddr(device, "vkSignalSemaphoreKHR");
2298 #endif
2299 #ifdef VK_KHR_fragment_shading_rate
2300 out->vkGetPhysicalDeviceFragmentShadingRatesKHR = (PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceFragmentShadingRatesKHR");
2301 out->vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)vk->vkGetDeviceProcAddr(device, "vkCmdSetFragmentShadingRateKHR");
2302 #endif
2303 #ifdef VK_KHR_buffer_device_address
2304 out->vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)vk->vkGetDeviceProcAddr(device, "vkGetBufferDeviceAddressKHR");
2305 out->vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)vk->vkGetDeviceProcAddr(device, "vkGetBufferOpaqueCaptureAddressKHR");
2306 out->vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)vk->vkGetDeviceProcAddr(device, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
2307 #endif
2308 #ifdef VK_KHR_deferred_host_operations
2309 out->vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)vk->vkGetDeviceProcAddr(device, "vkCreateDeferredOperationKHR");
2310 out->vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)vk->vkGetDeviceProcAddr(device, "vkDestroyDeferredOperationKHR");
2311 out->vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)vk->vkGetDeviceProcAddr(device, "vkGetDeferredOperationMaxConcurrencyKHR");
2312 out->vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)vk->vkGetDeviceProcAddr(device, "vkGetDeferredOperationResultKHR");
2313 out->vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)vk->vkGetDeviceProcAddr(device, "vkDeferredOperationJoinKHR");
2314 #endif
2315 #ifdef VK_KHR_pipeline_executable_properties
2316 out->vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkGetPipelineExecutablePropertiesKHR");
2317 out->vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)vk->vkGetDeviceProcAddr(device, "vkGetPipelineExecutableStatisticsKHR");
2318 out->vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)vk->vkGetDeviceProcAddr(device, "vkGetPipelineExecutableInternalRepresentationsKHR");
2319 #endif
2320 #ifdef VK_KHR_copy_commands2
2321 out->vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdCopyBuffer2KHR");
2322 out->vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdCopyImage2KHR");
2323 out->vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdCopyBufferToImage2KHR");
2324 out->vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdCopyImageToBuffer2KHR");
2325 out->vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdBlitImage2KHR");
2326 out->vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)vk->vkGetDeviceProcAddr(device, "vkCmdResolveImage2KHR");
2327 #endif
2328 #ifdef VK_ANDROID_native_buffer
2329 out->vkGetSwapchainGrallocUsageANDROID = (PFN_vkGetSwapchainGrallocUsageANDROID)vk->vkGetDeviceProcAddr(device, "vkGetSwapchainGrallocUsageANDROID");
2330 out->vkAcquireImageANDROID = (PFN_vkAcquireImageANDROID)vk->vkGetDeviceProcAddr(device, "vkAcquireImageANDROID");
2331 out->vkQueueSignalReleaseImageANDROID = (PFN_vkQueueSignalReleaseImageANDROID)vk->vkGetDeviceProcAddr(device, "vkQueueSignalReleaseImageANDROID");
2332 #endif
2333 #ifdef VK_EXT_debug_marker
2334 out->vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)vk->vkGetDeviceProcAddr(device, "vkDebugMarkerSetObjectTagEXT");
2335 out->vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)vk->vkGetDeviceProcAddr(device, "vkDebugMarkerSetObjectNameEXT");
2336 out->vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)vk->vkGetDeviceProcAddr(device, "vkCmdDebugMarkerBeginEXT");
2337 out->vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)vk->vkGetDeviceProcAddr(device, "vkCmdDebugMarkerEndEXT");
2338 out->vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)vk->vkGetDeviceProcAddr(device, "vkCmdDebugMarkerInsertEXT");
2339 #endif
2340 #ifdef VK_EXT_transform_feedback
2341 out->vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)vk->vkGetDeviceProcAddr(device, "vkCmdBindTransformFeedbackBuffersEXT");
2342 out->vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)vk->vkGetDeviceProcAddr(device, "vkCmdBeginTransformFeedbackEXT");
2343 out->vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)vk->vkGetDeviceProcAddr(device, "vkCmdEndTransformFeedbackEXT");
2344 out->vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)vk->vkGetDeviceProcAddr(device, "vkCmdBeginQueryIndexedEXT");
2345 out->vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)vk->vkGetDeviceProcAddr(device, "vkCmdEndQueryIndexedEXT");
2346 out->vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndirectByteCountEXT");
2347 #endif
2348 #ifdef VK_NVX_image_view_handle
2349 out->vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)vk->vkGetDeviceProcAddr(device, "vkGetImageViewHandleNVX");
2350 out->vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)vk->vkGetDeviceProcAddr(device, "vkGetImageViewAddressNVX");
2351 #endif
2352 #ifdef VK_AMD_draw_indirect_count
2353 out->vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndirectCountAMD");
2354 out->vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)vk->vkGetDeviceProcAddr(device, "vkCmdDrawIndexedIndirectCountAMD");
2355 #endif
2356 #ifdef VK_AMD_shader_info
2357 out->vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)vk->vkGetDeviceProcAddr(device, "vkGetShaderInfoAMD");
2358 #endif
2359 #ifdef VK_NV_external_memory_capabilities
2360 out->vkGetPhysicalDeviceExternalImageFormatPropertiesNV = (PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
2361 #endif
2362 #ifdef VK_NV_external_memory_win32
2363 out->vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)vk->vkGetDeviceProcAddr(device, "vkGetMemoryWin32HandleNV");
2364 #endif
2365 #ifdef VK_EXT_conditional_rendering
2366 out->vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)vk->vkGetDeviceProcAddr(device, "vkCmdBeginConditionalRenderingEXT");
2367 out->vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)vk->vkGetDeviceProcAddr(device, "vkCmdEndConditionalRenderingEXT");
2368 #endif
2369 #ifdef VK_NV_clip_space_w_scaling
2370 out->vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)vk->vkGetDeviceProcAddr(device, "vkCmdSetViewportWScalingNV");
2371 #endif
2372 #ifdef VK_EXT_direct_mode_display
2373 out->vkReleaseDisplayEXT = (PFN_vkReleaseDisplayEXT)vk->vkGetDeviceProcAddr(device, "vkReleaseDisplayEXT");
2374 #endif
2375 #ifdef VK_EXT_acquire_xlib_display
2376 out->vkAcquireXlibDisplayEXT = (PFN_vkAcquireXlibDisplayEXT)vk->vkGetDeviceProcAddr(device, "vkAcquireXlibDisplayEXT");
2377 out->vkGetRandROutputDisplayEXT = (PFN_vkGetRandROutputDisplayEXT)vk->vkGetDeviceProcAddr(device, "vkGetRandROutputDisplayEXT");
2378 #endif
2379 #ifdef VK_EXT_display_surface_counter
2380 out->vkGetPhysicalDeviceSurfaceCapabilities2EXT = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSurfaceCapabilities2EXT");
2381 #endif
2382 #ifdef VK_EXT_display_control
2383 out->vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)vk->vkGetDeviceProcAddr(device, "vkDisplayPowerControlEXT");
2384 out->vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)vk->vkGetDeviceProcAddr(device, "vkRegisterDeviceEventEXT");
2385 out->vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)vk->vkGetDeviceProcAddr(device, "vkRegisterDisplayEventEXT");
2386 out->vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)vk->vkGetDeviceProcAddr(device, "vkGetSwapchainCounterEXT");
2387 #endif
2388 #ifdef VK_GOOGLE_display_timing
2389 out->vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)vk->vkGetDeviceProcAddr(device, "vkGetRefreshCycleDurationGOOGLE");
2390 out->vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)vk->vkGetDeviceProcAddr(device, "vkGetPastPresentationTimingGOOGLE");
2391 #endif
2392 #ifdef VK_EXT_discard_rectangles
2393 out->vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetDiscardRectangleEXT");
2394 #endif
2395 #ifdef VK_EXT_hdr_metadata
2396 out->vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)vk->vkGetDeviceProcAddr(device, "vkSetHdrMetadataEXT");
2397 #endif
2398 #ifdef VK_EXT_debug_utils
2399 out->vkSetDebugUtilsObjectNameEXT = (PFN_vkSetDebugUtilsObjectNameEXT)vk->vkGetDeviceProcAddr(device, "vkSetDebugUtilsObjectNameEXT");
2400 out->vkSetDebugUtilsObjectTagEXT = (PFN_vkSetDebugUtilsObjectTagEXT)vk->vkGetDeviceProcAddr(device, "vkSetDebugUtilsObjectTagEXT");
2401 out->vkQueueBeginDebugUtilsLabelEXT = (PFN_vkQueueBeginDebugUtilsLabelEXT)vk->vkGetDeviceProcAddr(device, "vkQueueBeginDebugUtilsLabelEXT");
2402 out->vkQueueEndDebugUtilsLabelEXT = (PFN_vkQueueEndDebugUtilsLabelEXT)vk->vkGetDeviceProcAddr(device, "vkQueueEndDebugUtilsLabelEXT");
2403 out->vkQueueInsertDebugUtilsLabelEXT = (PFN_vkQueueInsertDebugUtilsLabelEXT)vk->vkGetDeviceProcAddr(device, "vkQueueInsertDebugUtilsLabelEXT");
2404 out->vkCmdBeginDebugUtilsLabelEXT = (PFN_vkCmdBeginDebugUtilsLabelEXT)vk->vkGetDeviceProcAddr(device, "vkCmdBeginDebugUtilsLabelEXT");
2405 out->vkCmdEndDebugUtilsLabelEXT = (PFN_vkCmdEndDebugUtilsLabelEXT)vk->vkGetDeviceProcAddr(device, "vkCmdEndDebugUtilsLabelEXT");
2406 out->vkCmdInsertDebugUtilsLabelEXT = (PFN_vkCmdInsertDebugUtilsLabelEXT)vk->vkGetDeviceProcAddr(device, "vkCmdInsertDebugUtilsLabelEXT");
2407 #endif
2408 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
2409 out->vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)vk->vkGetDeviceProcAddr(device, "vkGetAndroidHardwareBufferPropertiesANDROID");
2410 out->vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)vk->vkGetDeviceProcAddr(device, "vkGetMemoryAndroidHardwareBufferANDROID");
2411 #endif
2412 #ifdef VK_EXT_sample_locations
2413 out->vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetSampleLocationsEXT");
2414 out->vkGetPhysicalDeviceMultisamplePropertiesEXT = (PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceMultisamplePropertiesEXT");
2415 #endif
2416 #ifdef VK_EXT_image_drm_format_modifier
2417 out->vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)vk->vkGetDeviceProcAddr(device, "vkGetImageDrmFormatModifierPropertiesEXT");
2418 #endif
2419 #ifdef VK_EXT_validation_cache
2420 out->vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)vk->vkGetDeviceProcAddr(device, "vkCreateValidationCacheEXT");
2421 out->vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)vk->vkGetDeviceProcAddr(device, "vkDestroyValidationCacheEXT");
2422 out->vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)vk->vkGetDeviceProcAddr(device, "vkMergeValidationCachesEXT");
2423 out->vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)vk->vkGetDeviceProcAddr(device, "vkGetValidationCacheDataEXT");
2424 #endif
2425 #ifdef VK_NV_shading_rate_image
2426 out->vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)vk->vkGetDeviceProcAddr(device, "vkCmdBindShadingRateImageNV");
2427 out->vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)vk->vkGetDeviceProcAddr(device, "vkCmdSetViewportShadingRatePaletteNV");
2428 out->vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)vk->vkGetDeviceProcAddr(device, "vkCmdSetCoarseSampleOrderNV");
2429 #endif
2430 #ifdef VK_NV_ray_tracing
2431 out->vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)vk->vkGetDeviceProcAddr(device, "vkCreateAccelerationStructureNV");
2432 out->vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)vk->vkGetDeviceProcAddr(device, "vkDestroyAccelerationStructureNV");
2433 out->vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)vk->vkGetDeviceProcAddr(device, "vkGetAccelerationStructureMemoryRequirementsNV");
2434 out->vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)vk->vkGetDeviceProcAddr(device, "vkBindAccelerationStructureMemoryNV");
2435 out->vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)vk->vkGetDeviceProcAddr(device, "vkCmdBuildAccelerationStructureNV");
2436 out->vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)vk->vkGetDeviceProcAddr(device, "vkCmdCopyAccelerationStructureNV");
2437 out->vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)vk->vkGetDeviceProcAddr(device, "vkCmdTraceRaysNV");
2438 out->vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)vk->vkGetDeviceProcAddr(device, "vkCreateRayTracingPipelinesNV");
2439 out->vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)vk->vkGetDeviceProcAddr(device, "vkGetRayTracingShaderGroupHandlesKHR");
2440 out->vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)vk->vkGetDeviceProcAddr(device, "vkGetRayTracingShaderGroupHandlesNV");
2441 out->vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)vk->vkGetDeviceProcAddr(device, "vkGetAccelerationStructureHandleNV");
2442 out->vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)vk->vkGetDeviceProcAddr(device, "vkCmdWriteAccelerationStructuresPropertiesNV");
2443 out->vkCompileDeferredNV = (PFN_vkCompileDeferredNV)vk->vkGetDeviceProcAddr(device, "vkCompileDeferredNV");
2444 #endif
2445 #ifdef VK_EXT_external_memory_host
2446 out->vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)vk->vkGetDeviceProcAddr(device, "vkGetMemoryHostPointerPropertiesEXT");
2447 #endif
2448 #ifdef VK_AMD_buffer_marker
2449 out->vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)vk->vkGetDeviceProcAddr(device, "vkCmdWriteBufferMarkerAMD");
2450 #endif
2451 #ifdef VK_EXT_calibrated_timestamps
2452 out->vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = (PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
2453 out->vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)vk->vkGetDeviceProcAddr(device, "vkGetCalibratedTimestampsEXT");
2454 #endif
2455 #ifdef VK_NV_mesh_shader
2456 out->vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)vk->vkGetDeviceProcAddr(device, "vkCmdDrawMeshTasksNV");
2457 out->vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)vk->vkGetDeviceProcAddr(device, "vkCmdDrawMeshTasksIndirectNV");
2458 out->vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)vk->vkGetDeviceProcAddr(device, "vkCmdDrawMeshTasksIndirectCountNV");
2459 #endif
2460 #ifdef VK_NV_scissor_exclusive
2461 out->vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)vk->vkGetDeviceProcAddr(device, "vkCmdSetExclusiveScissorNV");
2462 #endif
2463 #ifdef VK_NV_device_diagnostic_checkpoints
2464 out->vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)vk->vkGetDeviceProcAddr(device, "vkCmdSetCheckpointNV");
2465 out->vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)vk->vkGetDeviceProcAddr(device, "vkGetQueueCheckpointDataNV");
2466 #endif
2467 #ifdef VK_INTEL_performance_query
2468 out->vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)vk->vkGetDeviceProcAddr(device, "vkInitializePerformanceApiINTEL");
2469 out->vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)vk->vkGetDeviceProcAddr(device, "vkUninitializePerformanceApiINTEL");
2470 out->vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)vk->vkGetDeviceProcAddr(device, "vkCmdSetPerformanceMarkerINTEL");
2471 out->vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)vk->vkGetDeviceProcAddr(device, "vkCmdSetPerformanceStreamMarkerINTEL");
2472 out->vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)vk->vkGetDeviceProcAddr(device, "vkCmdSetPerformanceOverrideINTEL");
2473 out->vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)vk->vkGetDeviceProcAddr(device, "vkAcquirePerformanceConfigurationINTEL");
2474 out->vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)vk->vkGetDeviceProcAddr(device, "vkReleasePerformanceConfigurationINTEL");
2475 out->vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)vk->vkGetDeviceProcAddr(device, "vkQueueSetPerformanceConfigurationINTEL");
2476 out->vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)vk->vkGetDeviceProcAddr(device, "vkGetPerformanceParameterINTEL");
2477 #endif
2478 #ifdef VK_AMD_display_native_hdr
2479 out->vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)vk->vkGetDeviceProcAddr(device, "vkSetLocalDimmingAMD");
2480 #endif
2481 #ifdef VK_EXT_buffer_device_address
2482 out->vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)vk->vkGetDeviceProcAddr(device, "vkGetBufferDeviceAddressEXT");
2483 #endif
2484 #ifdef VK_EXT_tooling_info
2485 out->vkGetPhysicalDeviceToolPropertiesEXT = (PFN_vkGetPhysicalDeviceToolPropertiesEXT)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceToolPropertiesEXT");
2486 #endif
2487 #ifdef VK_NV_cooperative_matrix
2488 out->vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = (PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
2489 #endif
2490 #ifdef VK_NV_coverage_reduction_mode
2491 out->vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = (PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
2492 #endif
2493 #ifdef VK_EXT_full_screen_exclusive
2494 out->vkGetPhysicalDeviceSurfacePresentModes2EXT = (PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceSurfacePresentModes2EXT");
2495 out->vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)vk->vkGetDeviceProcAddr(device, "vkAcquireFullScreenExclusiveModeEXT");
2496 out->vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)vk->vkGetDeviceProcAddr(device, "vkReleaseFullScreenExclusiveModeEXT");
2497 out->vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)vk->vkGetDeviceProcAddr(device, "vkGetDeviceGroupSurfacePresentModes2EXT");
2498 #endif
2499 #ifdef VK_EXT_line_rasterization
2500 out->vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetLineStippleEXT");
2501 #endif
2502 #ifdef VK_EXT_host_query_reset
2503 out->vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)vk->vkGetDeviceProcAddr(device, "vkResetQueryPoolEXT");
2504 #endif
2505 #ifdef VK_EXT_extended_dynamic_state
2506 out->vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetCullModeEXT");
2507 out->vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetFrontFaceEXT");
2508 out->vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetPrimitiveTopologyEXT");
2509 out->vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetViewportWithCountEXT");
2510 out->vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetScissorWithCountEXT");
2511 out->vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)vk->vkGetDeviceProcAddr(device, "vkCmdBindVertexBuffers2EXT");
2512 out->vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetDepthTestEnableEXT");
2513 out->vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetDepthWriteEnableEXT");
2514 out->vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetDepthCompareOpEXT");
2515 out->vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetDepthBoundsTestEnableEXT");
2516 out->vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetStencilTestEnableEXT");
2517 out->vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)vk->vkGetDeviceProcAddr(device, "vkCmdSetStencilOpEXT");
2518 #endif
2519 #ifdef VK_NV_device_generated_commands
2520 out->vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)vk->vkGetDeviceProcAddr(device, "vkGetGeneratedCommandsMemoryRequirementsNV");
2521 out->vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)vk->vkGetDeviceProcAddr(device, "vkCmdPreprocessGeneratedCommandsNV");
2522 out->vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)vk->vkGetDeviceProcAddr(device, "vkCmdExecuteGeneratedCommandsNV");
2523 out->vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)vk->vkGetDeviceProcAddr(device, "vkCmdBindPipelineShaderGroupNV");
2524 out->vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)vk->vkGetDeviceProcAddr(device, "vkCreateIndirectCommandsLayoutNV");
2525 out->vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)vk->vkGetDeviceProcAddr(device, "vkDestroyIndirectCommandsLayoutNV");
2526 #endif
2527 #ifdef VK_EXT_private_data
2528 out->vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)vk->vkGetDeviceProcAddr(device, "vkCreatePrivateDataSlotEXT");
2529 out->vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)vk->vkGetDeviceProcAddr(device, "vkDestroyPrivateDataSlotEXT");
2530 out->vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)vk->vkGetDeviceProcAddr(device, "vkSetPrivateDataEXT");
2531 out->vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)vk->vkGetDeviceProcAddr(device, "vkGetPrivateDataEXT");
2532 #endif
2533 #ifdef VK_NV_fragment_shading_rate_enums
2534 out->vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)vk->vkGetDeviceProcAddr(device, "vkCmdSetFragmentShadingRateEnumNV");
2535 #endif
2536 #ifdef VK_EXT_directfb_surface
2537 out->vkGetPhysicalDeviceDirectFBPresentationSupportEXT = (PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT)vk->vkGetDeviceProcAddr(device, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT");
2538 #endif
2539 #ifdef VK_GOOGLE_gfxstream
2540 out->vkRegisterImageColorBufferGOOGLE = (PFN_vkRegisterImageColorBufferGOOGLE)vk->vkGetDeviceProcAddr(device, "vkRegisterImageColorBufferGOOGLE");
2541 out->vkRegisterBufferColorBufferGOOGLE = (PFN_vkRegisterBufferColorBufferGOOGLE)vk->vkGetDeviceProcAddr(device, "vkRegisterBufferColorBufferGOOGLE");
2542 out->vkMapMemoryIntoAddressSpaceGOOGLE = (PFN_vkMapMemoryIntoAddressSpaceGOOGLE)vk->vkGetDeviceProcAddr(device, "vkMapMemoryIntoAddressSpaceGOOGLE");
2543 out->vkUpdateDescriptorSetWithTemplateSizedGOOGLE = (PFN_vkUpdateDescriptorSetWithTemplateSizedGOOGLE)vk->vkGetDeviceProcAddr(device, "vkUpdateDescriptorSetWithTemplateSizedGOOGLE");
2544 out->vkBeginCommandBufferAsyncGOOGLE = (PFN_vkBeginCommandBufferAsyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkBeginCommandBufferAsyncGOOGLE");
2545 out->vkEndCommandBufferAsyncGOOGLE = (PFN_vkEndCommandBufferAsyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkEndCommandBufferAsyncGOOGLE");
2546 out->vkResetCommandBufferAsyncGOOGLE = (PFN_vkResetCommandBufferAsyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkResetCommandBufferAsyncGOOGLE");
2547 out->vkCommandBufferHostSyncGOOGLE = (PFN_vkCommandBufferHostSyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkCommandBufferHostSyncGOOGLE");
2548 out->vkCreateImageWithRequirementsGOOGLE = (PFN_vkCreateImageWithRequirementsGOOGLE)vk->vkGetDeviceProcAddr(device, "vkCreateImageWithRequirementsGOOGLE");
2549 out->vkCreateBufferWithRequirementsGOOGLE = (PFN_vkCreateBufferWithRequirementsGOOGLE)vk->vkGetDeviceProcAddr(device, "vkCreateBufferWithRequirementsGOOGLE");
2550 out->vkGetMemoryHostAddressInfoGOOGLE = (PFN_vkGetMemoryHostAddressInfoGOOGLE)vk->vkGetDeviceProcAddr(device, "vkGetMemoryHostAddressInfoGOOGLE");
2551 out->vkFreeMemorySyncGOOGLE = (PFN_vkFreeMemorySyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkFreeMemorySyncGOOGLE");
2552 out->vkQueueHostSyncGOOGLE = (PFN_vkQueueHostSyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkQueueHostSyncGOOGLE");
2553 out->vkQueueSubmitAsyncGOOGLE = (PFN_vkQueueSubmitAsyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkQueueSubmitAsyncGOOGLE");
2554 out->vkQueueWaitIdleAsyncGOOGLE = (PFN_vkQueueWaitIdleAsyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkQueueWaitIdleAsyncGOOGLE");
2555 out->vkQueueBindSparseAsyncGOOGLE = (PFN_vkQueueBindSparseAsyncGOOGLE)vk->vkGetDeviceProcAddr(device, "vkQueueBindSparseAsyncGOOGLE");
2556 out->vkGetLinearImageLayoutGOOGLE = (PFN_vkGetLinearImageLayoutGOOGLE)vk->vkGetDeviceProcAddr(device, "vkGetLinearImageLayoutGOOGLE");
2557 out->vkQueueFlushCommandsGOOGLE = (PFN_vkQueueFlushCommandsGOOGLE)vk->vkGetDeviceProcAddr(device, "vkQueueFlushCommandsGOOGLE");
2558 out->vkQueueCommitDescriptorSetUpdatesGOOGLE = (PFN_vkQueueCommitDescriptorSetUpdatesGOOGLE)vk->vkGetDeviceProcAddr(device, "vkQueueCommitDescriptorSetUpdatesGOOGLE");
2559 out->vkCollectDescriptorPoolIdsGOOGLE = (PFN_vkCollectDescriptorPoolIdsGOOGLE)vk->vkGetDeviceProcAddr(device, "vkCollectDescriptorPoolIdsGOOGLE");
2560 #endif
2561 #ifdef VK_KHR_acceleration_structure
2562 out->vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)vk->vkGetDeviceProcAddr(device, "vkCreateAccelerationStructureKHR");
2563 out->vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)vk->vkGetDeviceProcAddr(device, "vkDestroyAccelerationStructureKHR");
2564 out->vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)vk->vkGetDeviceProcAddr(device, "vkCmdBuildAccelerationStructuresKHR");
2565 out->vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)vk->vkGetDeviceProcAddr(device, "vkCmdBuildAccelerationStructuresIndirectKHR");
2566 out->vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)vk->vkGetDeviceProcAddr(device, "vkBuildAccelerationStructuresKHR");
2567 out->vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)vk->vkGetDeviceProcAddr(device, "vkCopyAccelerationStructureKHR");
2568 out->vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)vk->vkGetDeviceProcAddr(device, "vkCopyAccelerationStructureToMemoryKHR");
2569 out->vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)vk->vkGetDeviceProcAddr(device, "vkCopyMemoryToAccelerationStructureKHR");
2570 out->vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkWriteAccelerationStructuresPropertiesKHR");
2571 out->vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)vk->vkGetDeviceProcAddr(device, "vkCmdCopyAccelerationStructureKHR");
2572 out->vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)vk->vkGetDeviceProcAddr(device, "vkCmdCopyAccelerationStructureToMemoryKHR");
2573 out->vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)vk->vkGetDeviceProcAddr(device, "vkCmdCopyMemoryToAccelerationStructureKHR");
2574 out->vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)vk->vkGetDeviceProcAddr(device, "vkGetAccelerationStructureDeviceAddressKHR");
2575 out->vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)vk->vkGetDeviceProcAddr(device, "vkCmdWriteAccelerationStructuresPropertiesKHR");
2576 out->vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)vk->vkGetDeviceProcAddr(device, "vkGetDeviceAccelerationStructureCompatibilityKHR");
2577 out->vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)vk->vkGetDeviceProcAddr(device, "vkGetAccelerationStructureBuildSizesKHR");
2578 #endif
2579 #ifdef VK_KHR_ray_tracing_pipeline
2580 out->vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)vk->vkGetDeviceProcAddr(device, "vkCmdTraceRaysKHR");
2581 out->vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)vk->vkGetDeviceProcAddr(device, "vkCreateRayTracingPipelinesKHR");
2582 out->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)vk->vkGetDeviceProcAddr(device, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
2583 out->vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)vk->vkGetDeviceProcAddr(device, "vkCmdTraceRaysIndirectKHR");
2584 out->vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)vk->vkGetDeviceProcAddr(device, "vkGetRayTracingShaderGroupStackSizeKHR");
2585 out->vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)vk->vkGetDeviceProcAddr(device, "vkCmdSetRayTracingPipelineStackSizeKHR");
2586 #endif
2587 }
2588
vulkan_dispatch_check_instance_VK_VERSION_1_0(const VulkanDispatch * vk)2589 bool vulkan_dispatch_check_instance_VK_VERSION_1_0(
2590 const VulkanDispatch* vk)
2591
2592 {
2593 bool good = true;
2594 if (!vk->vkCreateInstance)
2595 {
2596 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateInstance not found\n");
2597 good = false;
2598 }
2599 if (!vk->vkEnumerateInstanceExtensionProperties)
2600 {
2601 fprintf(stderr, "VK_VERSION_1_0 check failed: vkEnumerateInstanceExtensionProperties not found\n");
2602 good = false;
2603 }
2604 if (!vk->vkEnumerateInstanceLayerProperties)
2605 {
2606 fprintf(stderr, "VK_VERSION_1_0 check failed: vkEnumerateInstanceLayerProperties not found\n");
2607 good = false;
2608 }
2609 if (!vk->vkGetDeviceProcAddr)
2610 {
2611 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetDeviceProcAddr not found\n");
2612 good = false;
2613 }
2614 if (!vk->vkGetPhysicalDeviceSparseImageFormatProperties)
2615 {
2616 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetPhysicalDeviceSparseImageFormatProperties not found\n");
2617 good = false;
2618 }
2619 return good;
2620 }
2621
vulkan_dispatch_check_instance_VK_VERSION_1_1(const VulkanDispatch * vk)2622 bool vulkan_dispatch_check_instance_VK_VERSION_1_1(
2623 const VulkanDispatch* vk)
2624
2625 {
2626 bool good = true;
2627 if (!vk->vkEnumerateInstanceVersion)
2628 {
2629 fprintf(stderr, "VK_VERSION_1_1 check failed: vkEnumerateInstanceVersion not found\n");
2630 good = false;
2631 }
2632 if (!vk->vkEnumeratePhysicalDeviceGroups)
2633 {
2634 fprintf(stderr, "VK_VERSION_1_1 check failed: vkEnumeratePhysicalDeviceGroups not found\n");
2635 good = false;
2636 }
2637 if (!vk->vkGetPhysicalDeviceFeatures2)
2638 {
2639 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceFeatures2 not found\n");
2640 good = false;
2641 }
2642 if (!vk->vkGetPhysicalDeviceProperties2)
2643 {
2644 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceProperties2 not found\n");
2645 good = false;
2646 }
2647 if (!vk->vkGetPhysicalDeviceFormatProperties2)
2648 {
2649 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceFormatProperties2 not found\n");
2650 good = false;
2651 }
2652 if (!vk->vkGetPhysicalDeviceImageFormatProperties2)
2653 {
2654 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceImageFormatProperties2 not found\n");
2655 good = false;
2656 }
2657 if (!vk->vkGetPhysicalDeviceQueueFamilyProperties2)
2658 {
2659 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceQueueFamilyProperties2 not found\n");
2660 good = false;
2661 }
2662 if (!vk->vkGetPhysicalDeviceMemoryProperties2)
2663 {
2664 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceMemoryProperties2 not found\n");
2665 good = false;
2666 }
2667 if (!vk->vkGetPhysicalDeviceSparseImageFormatProperties2)
2668 {
2669 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceSparseImageFormatProperties2 not found\n");
2670 good = false;
2671 }
2672 if (!vk->vkGetPhysicalDeviceExternalBufferProperties)
2673 {
2674 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceExternalBufferProperties not found\n");
2675 good = false;
2676 }
2677 if (!vk->vkGetPhysicalDeviceExternalFenceProperties)
2678 {
2679 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceExternalFenceProperties not found\n");
2680 good = false;
2681 }
2682 if (!vk->vkGetPhysicalDeviceExternalSemaphoreProperties)
2683 {
2684 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetPhysicalDeviceExternalSemaphoreProperties not found\n");
2685 good = false;
2686 }
2687 return good;
2688 }
2689
vulkan_dispatch_check_device_VK_VERSION_1_0(const VulkanDispatch * vk)2690 bool vulkan_dispatch_check_device_VK_VERSION_1_0(
2691 const VulkanDispatch* vk)
2692
2693 {
2694 bool good = true;
2695 if (!vk->vkGetDeviceQueue)
2696 {
2697 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetDeviceQueue not found\n");
2698 good = false;
2699 }
2700 if (!vk->vkQueueSubmit)
2701 {
2702 fprintf(stderr, "VK_VERSION_1_0 check failed: vkQueueSubmit not found\n");
2703 good = false;
2704 }
2705 if (!vk->vkQueueWaitIdle)
2706 {
2707 fprintf(stderr, "VK_VERSION_1_0 check failed: vkQueueWaitIdle not found\n");
2708 good = false;
2709 }
2710 if (!vk->vkDeviceWaitIdle)
2711 {
2712 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDeviceWaitIdle not found\n");
2713 good = false;
2714 }
2715 if (!vk->vkAllocateMemory)
2716 {
2717 fprintf(stderr, "VK_VERSION_1_0 check failed: vkAllocateMemory not found\n");
2718 good = false;
2719 }
2720 if (!vk->vkFreeMemory)
2721 {
2722 fprintf(stderr, "VK_VERSION_1_0 check failed: vkFreeMemory not found\n");
2723 good = false;
2724 }
2725 if (!vk->vkMapMemory)
2726 {
2727 fprintf(stderr, "VK_VERSION_1_0 check failed: vkMapMemory not found\n");
2728 good = false;
2729 }
2730 if (!vk->vkUnmapMemory)
2731 {
2732 fprintf(stderr, "VK_VERSION_1_0 check failed: vkUnmapMemory not found\n");
2733 good = false;
2734 }
2735 if (!vk->vkFlushMappedMemoryRanges)
2736 {
2737 fprintf(stderr, "VK_VERSION_1_0 check failed: vkFlushMappedMemoryRanges not found\n");
2738 good = false;
2739 }
2740 if (!vk->vkInvalidateMappedMemoryRanges)
2741 {
2742 fprintf(stderr, "VK_VERSION_1_0 check failed: vkInvalidateMappedMemoryRanges not found\n");
2743 good = false;
2744 }
2745 if (!vk->vkGetDeviceMemoryCommitment)
2746 {
2747 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetDeviceMemoryCommitment not found\n");
2748 good = false;
2749 }
2750 if (!vk->vkBindBufferMemory)
2751 {
2752 fprintf(stderr, "VK_VERSION_1_0 check failed: vkBindBufferMemory not found\n");
2753 good = false;
2754 }
2755 if (!vk->vkBindImageMemory)
2756 {
2757 fprintf(stderr, "VK_VERSION_1_0 check failed: vkBindImageMemory not found\n");
2758 good = false;
2759 }
2760 if (!vk->vkGetBufferMemoryRequirements)
2761 {
2762 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetBufferMemoryRequirements not found\n");
2763 good = false;
2764 }
2765 if (!vk->vkGetImageMemoryRequirements)
2766 {
2767 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetImageMemoryRequirements not found\n");
2768 good = false;
2769 }
2770 if (!vk->vkGetImageSparseMemoryRequirements)
2771 {
2772 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetImageSparseMemoryRequirements not found\n");
2773 good = false;
2774 }
2775 if (!vk->vkQueueBindSparse)
2776 {
2777 fprintf(stderr, "VK_VERSION_1_0 check failed: vkQueueBindSparse not found\n");
2778 good = false;
2779 }
2780 if (!vk->vkCreateFence)
2781 {
2782 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateFence not found\n");
2783 good = false;
2784 }
2785 if (!vk->vkDestroyFence)
2786 {
2787 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyFence not found\n");
2788 good = false;
2789 }
2790 if (!vk->vkResetFences)
2791 {
2792 fprintf(stderr, "VK_VERSION_1_0 check failed: vkResetFences not found\n");
2793 good = false;
2794 }
2795 if (!vk->vkGetFenceStatus)
2796 {
2797 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetFenceStatus not found\n");
2798 good = false;
2799 }
2800 if (!vk->vkWaitForFences)
2801 {
2802 fprintf(stderr, "VK_VERSION_1_0 check failed: vkWaitForFences not found\n");
2803 good = false;
2804 }
2805 if (!vk->vkCreateSemaphore)
2806 {
2807 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateSemaphore not found\n");
2808 good = false;
2809 }
2810 if (!vk->vkDestroySemaphore)
2811 {
2812 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroySemaphore not found\n");
2813 good = false;
2814 }
2815 if (!vk->vkCreateEvent)
2816 {
2817 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateEvent not found\n");
2818 good = false;
2819 }
2820 if (!vk->vkDestroyEvent)
2821 {
2822 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyEvent not found\n");
2823 good = false;
2824 }
2825 if (!vk->vkGetEventStatus)
2826 {
2827 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetEventStatus not found\n");
2828 good = false;
2829 }
2830 if (!vk->vkSetEvent)
2831 {
2832 fprintf(stderr, "VK_VERSION_1_0 check failed: vkSetEvent not found\n");
2833 good = false;
2834 }
2835 if (!vk->vkResetEvent)
2836 {
2837 fprintf(stderr, "VK_VERSION_1_0 check failed: vkResetEvent not found\n");
2838 good = false;
2839 }
2840 if (!vk->vkCreateQueryPool)
2841 {
2842 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateQueryPool not found\n");
2843 good = false;
2844 }
2845 if (!vk->vkDestroyQueryPool)
2846 {
2847 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyQueryPool not found\n");
2848 good = false;
2849 }
2850 if (!vk->vkGetQueryPoolResults)
2851 {
2852 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetQueryPoolResults not found\n");
2853 good = false;
2854 }
2855 if (!vk->vkCreateBuffer)
2856 {
2857 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateBuffer not found\n");
2858 good = false;
2859 }
2860 if (!vk->vkDestroyBuffer)
2861 {
2862 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyBuffer not found\n");
2863 good = false;
2864 }
2865 if (!vk->vkCreateBufferView)
2866 {
2867 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateBufferView not found\n");
2868 good = false;
2869 }
2870 if (!vk->vkDestroyBufferView)
2871 {
2872 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyBufferView not found\n");
2873 good = false;
2874 }
2875 if (!vk->vkCreateImage)
2876 {
2877 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateImage not found\n");
2878 good = false;
2879 }
2880 if (!vk->vkDestroyImage)
2881 {
2882 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyImage not found\n");
2883 good = false;
2884 }
2885 if (!vk->vkGetImageSubresourceLayout)
2886 {
2887 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetImageSubresourceLayout not found\n");
2888 good = false;
2889 }
2890 if (!vk->vkCreateImageView)
2891 {
2892 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateImageView not found\n");
2893 good = false;
2894 }
2895 if (!vk->vkDestroyImageView)
2896 {
2897 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyImageView not found\n");
2898 good = false;
2899 }
2900 if (!vk->vkCreateShaderModule)
2901 {
2902 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateShaderModule not found\n");
2903 good = false;
2904 }
2905 if (!vk->vkDestroyShaderModule)
2906 {
2907 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyShaderModule not found\n");
2908 good = false;
2909 }
2910 if (!vk->vkCreatePipelineCache)
2911 {
2912 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreatePipelineCache not found\n");
2913 good = false;
2914 }
2915 if (!vk->vkDestroyPipelineCache)
2916 {
2917 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyPipelineCache not found\n");
2918 good = false;
2919 }
2920 if (!vk->vkGetPipelineCacheData)
2921 {
2922 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetPipelineCacheData not found\n");
2923 good = false;
2924 }
2925 if (!vk->vkMergePipelineCaches)
2926 {
2927 fprintf(stderr, "VK_VERSION_1_0 check failed: vkMergePipelineCaches not found\n");
2928 good = false;
2929 }
2930 if (!vk->vkCreateGraphicsPipelines)
2931 {
2932 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateGraphicsPipelines not found\n");
2933 good = false;
2934 }
2935 if (!vk->vkCreateComputePipelines)
2936 {
2937 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateComputePipelines not found\n");
2938 good = false;
2939 }
2940 if (!vk->vkDestroyPipeline)
2941 {
2942 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyPipeline not found\n");
2943 good = false;
2944 }
2945 if (!vk->vkCreatePipelineLayout)
2946 {
2947 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreatePipelineLayout not found\n");
2948 good = false;
2949 }
2950 if (!vk->vkDestroyPipelineLayout)
2951 {
2952 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyPipelineLayout not found\n");
2953 good = false;
2954 }
2955 if (!vk->vkCreateSampler)
2956 {
2957 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateSampler not found\n");
2958 good = false;
2959 }
2960 if (!vk->vkDestroySampler)
2961 {
2962 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroySampler not found\n");
2963 good = false;
2964 }
2965 if (!vk->vkCreateDescriptorSetLayout)
2966 {
2967 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateDescriptorSetLayout not found\n");
2968 good = false;
2969 }
2970 if (!vk->vkDestroyDescriptorSetLayout)
2971 {
2972 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyDescriptorSetLayout not found\n");
2973 good = false;
2974 }
2975 if (!vk->vkCreateDescriptorPool)
2976 {
2977 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateDescriptorPool not found\n");
2978 good = false;
2979 }
2980 if (!vk->vkDestroyDescriptorPool)
2981 {
2982 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyDescriptorPool not found\n");
2983 good = false;
2984 }
2985 if (!vk->vkResetDescriptorPool)
2986 {
2987 fprintf(stderr, "VK_VERSION_1_0 check failed: vkResetDescriptorPool not found\n");
2988 good = false;
2989 }
2990 if (!vk->vkAllocateDescriptorSets)
2991 {
2992 fprintf(stderr, "VK_VERSION_1_0 check failed: vkAllocateDescriptorSets not found\n");
2993 good = false;
2994 }
2995 if (!vk->vkFreeDescriptorSets)
2996 {
2997 fprintf(stderr, "VK_VERSION_1_0 check failed: vkFreeDescriptorSets not found\n");
2998 good = false;
2999 }
3000 if (!vk->vkUpdateDescriptorSets)
3001 {
3002 fprintf(stderr, "VK_VERSION_1_0 check failed: vkUpdateDescriptorSets not found\n");
3003 good = false;
3004 }
3005 if (!vk->vkCreateFramebuffer)
3006 {
3007 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateFramebuffer not found\n");
3008 good = false;
3009 }
3010 if (!vk->vkDestroyFramebuffer)
3011 {
3012 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyFramebuffer not found\n");
3013 good = false;
3014 }
3015 if (!vk->vkCreateRenderPass)
3016 {
3017 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateRenderPass not found\n");
3018 good = false;
3019 }
3020 if (!vk->vkDestroyRenderPass)
3021 {
3022 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyRenderPass not found\n");
3023 good = false;
3024 }
3025 if (!vk->vkGetRenderAreaGranularity)
3026 {
3027 fprintf(stderr, "VK_VERSION_1_0 check failed: vkGetRenderAreaGranularity not found\n");
3028 good = false;
3029 }
3030 if (!vk->vkCreateCommandPool)
3031 {
3032 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCreateCommandPool not found\n");
3033 good = false;
3034 }
3035 if (!vk->vkDestroyCommandPool)
3036 {
3037 fprintf(stderr, "VK_VERSION_1_0 check failed: vkDestroyCommandPool not found\n");
3038 good = false;
3039 }
3040 if (!vk->vkResetCommandPool)
3041 {
3042 fprintf(stderr, "VK_VERSION_1_0 check failed: vkResetCommandPool not found\n");
3043 good = false;
3044 }
3045 if (!vk->vkAllocateCommandBuffers)
3046 {
3047 fprintf(stderr, "VK_VERSION_1_0 check failed: vkAllocateCommandBuffers not found\n");
3048 good = false;
3049 }
3050 if (!vk->vkFreeCommandBuffers)
3051 {
3052 fprintf(stderr, "VK_VERSION_1_0 check failed: vkFreeCommandBuffers not found\n");
3053 good = false;
3054 }
3055 if (!vk->vkBeginCommandBuffer)
3056 {
3057 fprintf(stderr, "VK_VERSION_1_0 check failed: vkBeginCommandBuffer not found\n");
3058 good = false;
3059 }
3060 if (!vk->vkEndCommandBuffer)
3061 {
3062 fprintf(stderr, "VK_VERSION_1_0 check failed: vkEndCommandBuffer not found\n");
3063 good = false;
3064 }
3065 if (!vk->vkResetCommandBuffer)
3066 {
3067 fprintf(stderr, "VK_VERSION_1_0 check failed: vkResetCommandBuffer not found\n");
3068 good = false;
3069 }
3070 if (!vk->vkCmdBindPipeline)
3071 {
3072 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdBindPipeline not found\n");
3073 good = false;
3074 }
3075 if (!vk->vkCmdSetViewport)
3076 {
3077 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetViewport not found\n");
3078 good = false;
3079 }
3080 if (!vk->vkCmdSetScissor)
3081 {
3082 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetScissor not found\n");
3083 good = false;
3084 }
3085 if (!vk->vkCmdSetLineWidth)
3086 {
3087 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetLineWidth not found\n");
3088 good = false;
3089 }
3090 if (!vk->vkCmdSetDepthBias)
3091 {
3092 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetDepthBias not found\n");
3093 good = false;
3094 }
3095 if (!vk->vkCmdSetBlendConstants)
3096 {
3097 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetBlendConstants not found\n");
3098 good = false;
3099 }
3100 if (!vk->vkCmdSetDepthBounds)
3101 {
3102 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetDepthBounds not found\n");
3103 good = false;
3104 }
3105 if (!vk->vkCmdSetStencilCompareMask)
3106 {
3107 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetStencilCompareMask not found\n");
3108 good = false;
3109 }
3110 if (!vk->vkCmdSetStencilWriteMask)
3111 {
3112 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetStencilWriteMask not found\n");
3113 good = false;
3114 }
3115 if (!vk->vkCmdSetStencilReference)
3116 {
3117 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetStencilReference not found\n");
3118 good = false;
3119 }
3120 if (!vk->vkCmdBindDescriptorSets)
3121 {
3122 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdBindDescriptorSets not found\n");
3123 good = false;
3124 }
3125 if (!vk->vkCmdBindIndexBuffer)
3126 {
3127 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdBindIndexBuffer not found\n");
3128 good = false;
3129 }
3130 if (!vk->vkCmdBindVertexBuffers)
3131 {
3132 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdBindVertexBuffers not found\n");
3133 good = false;
3134 }
3135 if (!vk->vkCmdDraw)
3136 {
3137 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdDraw not found\n");
3138 good = false;
3139 }
3140 if (!vk->vkCmdDrawIndexed)
3141 {
3142 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdDrawIndexed not found\n");
3143 good = false;
3144 }
3145 if (!vk->vkCmdDrawIndirect)
3146 {
3147 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdDrawIndirect not found\n");
3148 good = false;
3149 }
3150 if (!vk->vkCmdDrawIndexedIndirect)
3151 {
3152 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdDrawIndexedIndirect not found\n");
3153 good = false;
3154 }
3155 if (!vk->vkCmdDispatch)
3156 {
3157 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdDispatch not found\n");
3158 good = false;
3159 }
3160 if (!vk->vkCmdDispatchIndirect)
3161 {
3162 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdDispatchIndirect not found\n");
3163 good = false;
3164 }
3165 if (!vk->vkCmdCopyBuffer)
3166 {
3167 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdCopyBuffer not found\n");
3168 good = false;
3169 }
3170 if (!vk->vkCmdCopyImage)
3171 {
3172 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdCopyImage not found\n");
3173 good = false;
3174 }
3175 if (!vk->vkCmdBlitImage)
3176 {
3177 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdBlitImage not found\n");
3178 good = false;
3179 }
3180 if (!vk->vkCmdCopyBufferToImage)
3181 {
3182 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdCopyBufferToImage not found\n");
3183 good = false;
3184 }
3185 if (!vk->vkCmdCopyImageToBuffer)
3186 {
3187 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdCopyImageToBuffer not found\n");
3188 good = false;
3189 }
3190 if (!vk->vkCmdUpdateBuffer)
3191 {
3192 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdUpdateBuffer not found\n");
3193 good = false;
3194 }
3195 if (!vk->vkCmdFillBuffer)
3196 {
3197 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdFillBuffer not found\n");
3198 good = false;
3199 }
3200 if (!vk->vkCmdClearColorImage)
3201 {
3202 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdClearColorImage not found\n");
3203 good = false;
3204 }
3205 if (!vk->vkCmdClearDepthStencilImage)
3206 {
3207 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdClearDepthStencilImage not found\n");
3208 good = false;
3209 }
3210 if (!vk->vkCmdClearAttachments)
3211 {
3212 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdClearAttachments not found\n");
3213 good = false;
3214 }
3215 if (!vk->vkCmdResolveImage)
3216 {
3217 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdResolveImage not found\n");
3218 good = false;
3219 }
3220 if (!vk->vkCmdSetEvent)
3221 {
3222 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdSetEvent not found\n");
3223 good = false;
3224 }
3225 if (!vk->vkCmdResetEvent)
3226 {
3227 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdResetEvent not found\n");
3228 good = false;
3229 }
3230 if (!vk->vkCmdWaitEvents)
3231 {
3232 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdWaitEvents not found\n");
3233 good = false;
3234 }
3235 if (!vk->vkCmdPipelineBarrier)
3236 {
3237 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdPipelineBarrier not found\n");
3238 good = false;
3239 }
3240 if (!vk->vkCmdBeginQuery)
3241 {
3242 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdBeginQuery not found\n");
3243 good = false;
3244 }
3245 if (!vk->vkCmdEndQuery)
3246 {
3247 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdEndQuery not found\n");
3248 good = false;
3249 }
3250 if (!vk->vkCmdResetQueryPool)
3251 {
3252 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdResetQueryPool not found\n");
3253 good = false;
3254 }
3255 if (!vk->vkCmdWriteTimestamp)
3256 {
3257 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdWriteTimestamp not found\n");
3258 good = false;
3259 }
3260 if (!vk->vkCmdCopyQueryPoolResults)
3261 {
3262 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdCopyQueryPoolResults not found\n");
3263 good = false;
3264 }
3265 if (!vk->vkCmdPushConstants)
3266 {
3267 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdPushConstants not found\n");
3268 good = false;
3269 }
3270 if (!vk->vkCmdBeginRenderPass)
3271 {
3272 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdBeginRenderPass not found\n");
3273 good = false;
3274 }
3275 if (!vk->vkCmdNextSubpass)
3276 {
3277 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdNextSubpass not found\n");
3278 good = false;
3279 }
3280 if (!vk->vkCmdEndRenderPass)
3281 {
3282 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdEndRenderPass not found\n");
3283 good = false;
3284 }
3285 if (!vk->vkCmdExecuteCommands)
3286 {
3287 fprintf(stderr, "VK_VERSION_1_0 check failed: vkCmdExecuteCommands not found\n");
3288 good = false;
3289 }
3290 return good;
3291 }
3292
vulkan_dispatch_check_device_VK_VERSION_1_1(const VulkanDispatch * vk)3293 bool vulkan_dispatch_check_device_VK_VERSION_1_1(
3294 const VulkanDispatch* vk)
3295
3296 {
3297 bool good = true;
3298 if (!vk->vkBindBufferMemory2)
3299 {
3300 fprintf(stderr, "VK_VERSION_1_1 check failed: vkBindBufferMemory2 not found\n");
3301 good = false;
3302 }
3303 if (!vk->vkBindImageMemory2)
3304 {
3305 fprintf(stderr, "VK_VERSION_1_1 check failed: vkBindImageMemory2 not found\n");
3306 good = false;
3307 }
3308 if (!vk->vkGetDeviceGroupPeerMemoryFeatures)
3309 {
3310 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetDeviceGroupPeerMemoryFeatures not found\n");
3311 good = false;
3312 }
3313 if (!vk->vkCmdSetDeviceMask)
3314 {
3315 fprintf(stderr, "VK_VERSION_1_1 check failed: vkCmdSetDeviceMask not found\n");
3316 good = false;
3317 }
3318 if (!vk->vkCmdDispatchBase)
3319 {
3320 fprintf(stderr, "VK_VERSION_1_1 check failed: vkCmdDispatchBase not found\n");
3321 good = false;
3322 }
3323 if (!vk->vkGetImageMemoryRequirements2)
3324 {
3325 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetImageMemoryRequirements2 not found\n");
3326 good = false;
3327 }
3328 if (!vk->vkGetBufferMemoryRequirements2)
3329 {
3330 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetBufferMemoryRequirements2 not found\n");
3331 good = false;
3332 }
3333 if (!vk->vkGetImageSparseMemoryRequirements2)
3334 {
3335 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetImageSparseMemoryRequirements2 not found\n");
3336 good = false;
3337 }
3338 if (!vk->vkTrimCommandPool)
3339 {
3340 fprintf(stderr, "VK_VERSION_1_1 check failed: vkTrimCommandPool not found\n");
3341 good = false;
3342 }
3343 if (!vk->vkGetDeviceQueue2)
3344 {
3345 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetDeviceQueue2 not found\n");
3346 good = false;
3347 }
3348 if (!vk->vkCreateSamplerYcbcrConversion)
3349 {
3350 fprintf(stderr, "VK_VERSION_1_1 check failed: vkCreateSamplerYcbcrConversion not found\n");
3351 good = false;
3352 }
3353 if (!vk->vkDestroySamplerYcbcrConversion)
3354 {
3355 fprintf(stderr, "VK_VERSION_1_1 check failed: vkDestroySamplerYcbcrConversion not found\n");
3356 good = false;
3357 }
3358 if (!vk->vkCreateDescriptorUpdateTemplate)
3359 {
3360 fprintf(stderr, "VK_VERSION_1_1 check failed: vkCreateDescriptorUpdateTemplate not found\n");
3361 good = false;
3362 }
3363 if (!vk->vkDestroyDescriptorUpdateTemplate)
3364 {
3365 fprintf(stderr, "VK_VERSION_1_1 check failed: vkDestroyDescriptorUpdateTemplate not found\n");
3366 good = false;
3367 }
3368 if (!vk->vkUpdateDescriptorSetWithTemplate)
3369 {
3370 fprintf(stderr, "VK_VERSION_1_1 check failed: vkUpdateDescriptorSetWithTemplate not found\n");
3371 good = false;
3372 }
3373 if (!vk->vkGetDescriptorSetLayoutSupport)
3374 {
3375 fprintf(stderr, "VK_VERSION_1_1 check failed: vkGetDescriptorSetLayoutSupport not found\n");
3376 good = false;
3377 }
3378 return good;
3379 }
3380
3381 } // namespace goldfish_vk
3382