volk.c 198 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662
  1. /* This file is part of volk library; see volk.h for version/license details */
  2. /* clang-format off */
  3. #include "volk.h"
  4. #ifdef _WIN32
  5. typedef const char* LPCSTR;
  6. typedef struct HINSTANCE__* HINSTANCE;
  7. typedef HINSTANCE HMODULE;
  8. #ifdef _WIN64
  9. typedef __int64 (__stdcall* FARPROC)(void);
  10. #else
  11. typedef int (__stdcall* FARPROC)(void);
  12. #endif
  13. #else
  14. # include <dlfcn.h>
  15. #endif
  16. #ifdef __cplusplus
  17. extern "C" {
  18. #endif
  19. #ifdef _WIN32
  20. __declspec(dllimport) HMODULE __stdcall LoadLibraryA(LPCSTR);
  21. __declspec(dllimport) FARPROC __stdcall GetProcAddress(HMODULE, LPCSTR);
  22. #endif
  23. static VkInstance loadedInstance = VK_NULL_HANDLE;
  24. static VkDevice loadedDevice = VK_NULL_HANDLE;
  25. static void volkGenLoadLoader(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
  26. static void volkGenLoadInstance(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
  27. static void volkGenLoadDevice(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
  28. static void volkGenLoadDeviceTable(struct VolkDeviceTable* table, void* context, PFN_vkVoidFunction (*load)(void*, const char*));
  29. static PFN_vkVoidFunction vkGetInstanceProcAddrStub(void* context, const char* name)
  30. {
  31. return vkGetInstanceProcAddr((VkInstance)context, name);
  32. }
  33. static PFN_vkVoidFunction vkGetDeviceProcAddrStub(void* context, const char* name)
  34. {
  35. return vkGetDeviceProcAddr((VkDevice)context, name);
  36. }
  37. VkResult volkInitialize(void)
  38. {
  39. #if defined(_WIN32)
  40. HMODULE module = LoadLibraryA("vulkan-1.dll");
  41. if (!module)
  42. return VK_ERROR_INITIALIZATION_FAILED;
  43. // note: function pointer is cast through void function pointer to silence cast-function-type warning on gcc8
  44. vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)(void(*)(void))GetProcAddress(module, "vkGetInstanceProcAddr");
  45. #elif defined(__APPLE__)
  46. void* module = dlopen("libvulkan.dylib", RTLD_NOW | RTLD_LOCAL);
  47. if (!module)
  48. module = dlopen("libvulkan.1.dylib", RTLD_NOW | RTLD_LOCAL);
  49. if (!module)
  50. module = dlopen("libMoltenVK.dylib", RTLD_NOW | RTLD_LOCAL);
  51. if (!module)
  52. return VK_ERROR_INITIALIZATION_FAILED;
  53. vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlsym(module, "vkGetInstanceProcAddr");
  54. #else
  55. void* module = dlopen("libvulkan.so.1", RTLD_NOW | RTLD_LOCAL);
  56. if (!module)
  57. module = dlopen("libvulkan.so", RTLD_NOW | RTLD_LOCAL);
  58. if (!module)
  59. return VK_ERROR_INITIALIZATION_FAILED;
  60. vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlsym(module, "vkGetInstanceProcAddr");
  61. #endif
  62. volkGenLoadLoader(NULL, vkGetInstanceProcAddrStub);
  63. return VK_SUCCESS;
  64. }
  65. void volkInitializeCustom(PFN_vkGetInstanceProcAddr handler)
  66. {
  67. vkGetInstanceProcAddr = handler;
  68. volkGenLoadLoader(NULL, vkGetInstanceProcAddrStub);
  69. }
  70. uint32_t volkGetInstanceVersion(void)
  71. {
  72. #if defined(VK_VERSION_1_1)
  73. uint32_t apiVersion = 0;
  74. if (vkEnumerateInstanceVersion && vkEnumerateInstanceVersion(&apiVersion) == VK_SUCCESS)
  75. return apiVersion;
  76. #endif
  77. if (vkCreateInstance)
  78. return VK_API_VERSION_1_0;
  79. return 0;
  80. }
  81. void volkLoadInstance(VkInstance instance)
  82. {
  83. loadedInstance = instance;
  84. volkGenLoadInstance(instance, vkGetInstanceProcAddrStub);
  85. volkGenLoadDevice(instance, vkGetInstanceProcAddrStub);
  86. }
  87. void volkLoadInstanceOnly(VkInstance instance)
  88. {
  89. loadedInstance = instance;
  90. volkGenLoadInstance(instance, vkGetInstanceProcAddrStub);
  91. }
  92. VkInstance volkGetLoadedInstance()
  93. {
  94. return loadedInstance;
  95. }
  96. void volkLoadDevice(VkDevice device)
  97. {
  98. loadedDevice = device;
  99. volkGenLoadDevice(device, vkGetDeviceProcAddrStub);
  100. }
  101. VkDevice volkGetLoadedDevice()
  102. {
  103. return loadedDevice;
  104. }
  105. void volkLoadDeviceTable(struct VolkDeviceTable* table, VkDevice device)
  106. {
  107. volkGenLoadDeviceTable(table, device, vkGetDeviceProcAddrStub);
  108. }
  109. static void volkGenLoadLoader(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
  110. {
  111. /* VOLK_GENERATE_LOAD_LOADER */
  112. #if defined(VK_VERSION_1_0)
  113. vkCreateInstance = (PFN_vkCreateInstance)load(context, "vkCreateInstance");
  114. vkEnumerateInstanceExtensionProperties = (PFN_vkEnumerateInstanceExtensionProperties)load(context, "vkEnumerateInstanceExtensionProperties");
  115. vkEnumerateInstanceLayerProperties = (PFN_vkEnumerateInstanceLayerProperties)load(context, "vkEnumerateInstanceLayerProperties");
  116. #endif /* defined(VK_VERSION_1_0) */
  117. #if defined(VK_VERSION_1_1)
  118. vkEnumerateInstanceVersion = (PFN_vkEnumerateInstanceVersion)load(context, "vkEnumerateInstanceVersion");
  119. #endif /* defined(VK_VERSION_1_1) */
  120. /* VOLK_GENERATE_LOAD_LOADER */
  121. }
  122. static void volkGenLoadInstance(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
  123. {
  124. /* VOLK_GENERATE_LOAD_INSTANCE */
  125. #if defined(VK_VERSION_1_0)
  126. vkCreateDevice = (PFN_vkCreateDevice)load(context, "vkCreateDevice");
  127. vkDestroyInstance = (PFN_vkDestroyInstance)load(context, "vkDestroyInstance");
  128. vkEnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)load(context, "vkEnumerateDeviceExtensionProperties");
  129. vkEnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)load(context, "vkEnumerateDeviceLayerProperties");
  130. vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)load(context, "vkEnumeratePhysicalDevices");
  131. vkGetDeviceProcAddr = (PFN_vkGetDeviceProcAddr)load(context, "vkGetDeviceProcAddr");
  132. vkGetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)load(context, "vkGetPhysicalDeviceFeatures");
  133. vkGetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)load(context, "vkGetPhysicalDeviceFormatProperties");
  134. vkGetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)load(context, "vkGetPhysicalDeviceImageFormatProperties");
  135. vkGetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)load(context, "vkGetPhysicalDeviceMemoryProperties");
  136. vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)load(context, "vkGetPhysicalDeviceProperties");
  137. vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)load(context, "vkGetPhysicalDeviceQueueFamilyProperties");
  138. vkGetPhysicalDeviceSparseImageFormatProperties = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties");
  139. #endif /* defined(VK_VERSION_1_0) */
  140. #if defined(VK_VERSION_1_1)
  141. vkEnumeratePhysicalDeviceGroups = (PFN_vkEnumeratePhysicalDeviceGroups)load(context, "vkEnumeratePhysicalDeviceGroups");
  142. vkGetPhysicalDeviceExternalBufferProperties = (PFN_vkGetPhysicalDeviceExternalBufferProperties)load(context, "vkGetPhysicalDeviceExternalBufferProperties");
  143. vkGetPhysicalDeviceExternalFenceProperties = (PFN_vkGetPhysicalDeviceExternalFenceProperties)load(context, "vkGetPhysicalDeviceExternalFenceProperties");
  144. vkGetPhysicalDeviceExternalSemaphoreProperties = (PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)load(context, "vkGetPhysicalDeviceExternalSemaphoreProperties");
  145. vkGetPhysicalDeviceFeatures2 = (PFN_vkGetPhysicalDeviceFeatures2)load(context, "vkGetPhysicalDeviceFeatures2");
  146. vkGetPhysicalDeviceFormatProperties2 = (PFN_vkGetPhysicalDeviceFormatProperties2)load(context, "vkGetPhysicalDeviceFormatProperties2");
  147. vkGetPhysicalDeviceImageFormatProperties2 = (PFN_vkGetPhysicalDeviceImageFormatProperties2)load(context, "vkGetPhysicalDeviceImageFormatProperties2");
  148. vkGetPhysicalDeviceMemoryProperties2 = (PFN_vkGetPhysicalDeviceMemoryProperties2)load(context, "vkGetPhysicalDeviceMemoryProperties2");
  149. vkGetPhysicalDeviceProperties2 = (PFN_vkGetPhysicalDeviceProperties2)load(context, "vkGetPhysicalDeviceProperties2");
  150. vkGetPhysicalDeviceQueueFamilyProperties2 = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2)load(context, "vkGetPhysicalDeviceQueueFamilyProperties2");
  151. vkGetPhysicalDeviceSparseImageFormatProperties2 = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties2");
  152. #endif /* defined(VK_VERSION_1_1) */
  153. #if defined(VK_VERSION_1_3)
  154. vkGetPhysicalDeviceToolProperties = (PFN_vkGetPhysicalDeviceToolProperties)load(context, "vkGetPhysicalDeviceToolProperties");
  155. #endif /* defined(VK_VERSION_1_3) */
  156. #if defined(VK_EXT_acquire_drm_display)
  157. vkAcquireDrmDisplayEXT = (PFN_vkAcquireDrmDisplayEXT)load(context, "vkAcquireDrmDisplayEXT");
  158. vkGetDrmDisplayEXT = (PFN_vkGetDrmDisplayEXT)load(context, "vkGetDrmDisplayEXT");
  159. #endif /* defined(VK_EXT_acquire_drm_display) */
  160. #if defined(VK_EXT_acquire_xlib_display)
  161. vkAcquireXlibDisplayEXT = (PFN_vkAcquireXlibDisplayEXT)load(context, "vkAcquireXlibDisplayEXT");
  162. vkGetRandROutputDisplayEXT = (PFN_vkGetRandROutputDisplayEXT)load(context, "vkGetRandROutputDisplayEXT");
  163. #endif /* defined(VK_EXT_acquire_xlib_display) */
  164. #if defined(VK_EXT_calibrated_timestamps)
  165. vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = (PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)load(context, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
  166. #endif /* defined(VK_EXT_calibrated_timestamps) */
  167. #if defined(VK_EXT_debug_report)
  168. vkCreateDebugReportCallbackEXT = (PFN_vkCreateDebugReportCallbackEXT)load(context, "vkCreateDebugReportCallbackEXT");
  169. vkDebugReportMessageEXT = (PFN_vkDebugReportMessageEXT)load(context, "vkDebugReportMessageEXT");
  170. vkDestroyDebugReportCallbackEXT = (PFN_vkDestroyDebugReportCallbackEXT)load(context, "vkDestroyDebugReportCallbackEXT");
  171. #endif /* defined(VK_EXT_debug_report) */
  172. #if defined(VK_EXT_debug_utils)
  173. vkCmdBeginDebugUtilsLabelEXT = (PFN_vkCmdBeginDebugUtilsLabelEXT)load(context, "vkCmdBeginDebugUtilsLabelEXT");
  174. vkCmdEndDebugUtilsLabelEXT = (PFN_vkCmdEndDebugUtilsLabelEXT)load(context, "vkCmdEndDebugUtilsLabelEXT");
  175. vkCmdInsertDebugUtilsLabelEXT = (PFN_vkCmdInsertDebugUtilsLabelEXT)load(context, "vkCmdInsertDebugUtilsLabelEXT");
  176. vkCreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT)load(context, "vkCreateDebugUtilsMessengerEXT");
  177. vkDestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT)load(context, "vkDestroyDebugUtilsMessengerEXT");
  178. vkQueueBeginDebugUtilsLabelEXT = (PFN_vkQueueBeginDebugUtilsLabelEXT)load(context, "vkQueueBeginDebugUtilsLabelEXT");
  179. vkQueueEndDebugUtilsLabelEXT = (PFN_vkQueueEndDebugUtilsLabelEXT)load(context, "vkQueueEndDebugUtilsLabelEXT");
  180. vkQueueInsertDebugUtilsLabelEXT = (PFN_vkQueueInsertDebugUtilsLabelEXT)load(context, "vkQueueInsertDebugUtilsLabelEXT");
  181. vkSetDebugUtilsObjectNameEXT = (PFN_vkSetDebugUtilsObjectNameEXT)load(context, "vkSetDebugUtilsObjectNameEXT");
  182. vkSetDebugUtilsObjectTagEXT = (PFN_vkSetDebugUtilsObjectTagEXT)load(context, "vkSetDebugUtilsObjectTagEXT");
  183. vkSubmitDebugUtilsMessageEXT = (PFN_vkSubmitDebugUtilsMessageEXT)load(context, "vkSubmitDebugUtilsMessageEXT");
  184. #endif /* defined(VK_EXT_debug_utils) */
  185. #if defined(VK_EXT_direct_mode_display)
  186. vkReleaseDisplayEXT = (PFN_vkReleaseDisplayEXT)load(context, "vkReleaseDisplayEXT");
  187. #endif /* defined(VK_EXT_direct_mode_display) */
  188. #if defined(VK_EXT_directfb_surface)
  189. vkCreateDirectFBSurfaceEXT = (PFN_vkCreateDirectFBSurfaceEXT)load(context, "vkCreateDirectFBSurfaceEXT");
  190. vkGetPhysicalDeviceDirectFBPresentationSupportEXT = (PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT)load(context, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT");
  191. #endif /* defined(VK_EXT_directfb_surface) */
  192. #if defined(VK_EXT_display_surface_counter)
  193. vkGetPhysicalDeviceSurfaceCapabilities2EXT = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)load(context, "vkGetPhysicalDeviceSurfaceCapabilities2EXT");
  194. #endif /* defined(VK_EXT_display_surface_counter) */
  195. #if defined(VK_EXT_full_screen_exclusive)
  196. vkGetPhysicalDeviceSurfacePresentModes2EXT = (PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT)load(context, "vkGetPhysicalDeviceSurfacePresentModes2EXT");
  197. #endif /* defined(VK_EXT_full_screen_exclusive) */
  198. #if defined(VK_EXT_headless_surface)
  199. vkCreateHeadlessSurfaceEXT = (PFN_vkCreateHeadlessSurfaceEXT)load(context, "vkCreateHeadlessSurfaceEXT");
  200. #endif /* defined(VK_EXT_headless_surface) */
  201. #if defined(VK_EXT_metal_surface)
  202. vkCreateMetalSurfaceEXT = (PFN_vkCreateMetalSurfaceEXT)load(context, "vkCreateMetalSurfaceEXT");
  203. #endif /* defined(VK_EXT_metal_surface) */
  204. #if defined(VK_EXT_sample_locations)
  205. vkGetPhysicalDeviceMultisamplePropertiesEXT = (PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)load(context, "vkGetPhysicalDeviceMultisamplePropertiesEXT");
  206. #endif /* defined(VK_EXT_sample_locations) */
  207. #if defined(VK_EXT_tooling_info)
  208. vkGetPhysicalDeviceToolPropertiesEXT = (PFN_vkGetPhysicalDeviceToolPropertiesEXT)load(context, "vkGetPhysicalDeviceToolPropertiesEXT");
  209. #endif /* defined(VK_EXT_tooling_info) */
  210. #if defined(VK_FUCHSIA_imagepipe_surface)
  211. vkCreateImagePipeSurfaceFUCHSIA = (PFN_vkCreateImagePipeSurfaceFUCHSIA)load(context, "vkCreateImagePipeSurfaceFUCHSIA");
  212. #endif /* defined(VK_FUCHSIA_imagepipe_surface) */
  213. #if defined(VK_GGP_stream_descriptor_surface)
  214. vkCreateStreamDescriptorSurfaceGGP = (PFN_vkCreateStreamDescriptorSurfaceGGP)load(context, "vkCreateStreamDescriptorSurfaceGGP");
  215. #endif /* defined(VK_GGP_stream_descriptor_surface) */
  216. #if defined(VK_KHR_android_surface)
  217. vkCreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR)load(context, "vkCreateAndroidSurfaceKHR");
  218. #endif /* defined(VK_KHR_android_surface) */
  219. #if defined(VK_KHR_device_group_creation)
  220. vkEnumeratePhysicalDeviceGroupsKHR = (PFN_vkEnumeratePhysicalDeviceGroupsKHR)load(context, "vkEnumeratePhysicalDeviceGroupsKHR");
  221. #endif /* defined(VK_KHR_device_group_creation) */
  222. #if defined(VK_KHR_display)
  223. vkCreateDisplayModeKHR = (PFN_vkCreateDisplayModeKHR)load(context, "vkCreateDisplayModeKHR");
  224. vkCreateDisplayPlaneSurfaceKHR = (PFN_vkCreateDisplayPlaneSurfaceKHR)load(context, "vkCreateDisplayPlaneSurfaceKHR");
  225. vkGetDisplayModePropertiesKHR = (PFN_vkGetDisplayModePropertiesKHR)load(context, "vkGetDisplayModePropertiesKHR");
  226. vkGetDisplayPlaneCapabilitiesKHR = (PFN_vkGetDisplayPlaneCapabilitiesKHR)load(context, "vkGetDisplayPlaneCapabilitiesKHR");
  227. vkGetDisplayPlaneSupportedDisplaysKHR = (PFN_vkGetDisplayPlaneSupportedDisplaysKHR)load(context, "vkGetDisplayPlaneSupportedDisplaysKHR");
  228. vkGetPhysicalDeviceDisplayPlanePropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)load(context, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
  229. vkGetPhysicalDeviceDisplayPropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)load(context, "vkGetPhysicalDeviceDisplayPropertiesKHR");
  230. #endif /* defined(VK_KHR_display) */
  231. #if defined(VK_KHR_external_fence_capabilities)
  232. vkGetPhysicalDeviceExternalFencePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)load(context, "vkGetPhysicalDeviceExternalFencePropertiesKHR");
  233. #endif /* defined(VK_KHR_external_fence_capabilities) */
  234. #if defined(VK_KHR_external_memory_capabilities)
  235. vkGetPhysicalDeviceExternalBufferPropertiesKHR = (PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)load(context, "vkGetPhysicalDeviceExternalBufferPropertiesKHR");
  236. #endif /* defined(VK_KHR_external_memory_capabilities) */
  237. #if defined(VK_KHR_external_semaphore_capabilities)
  238. vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)load(context, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
  239. #endif /* defined(VK_KHR_external_semaphore_capabilities) */
  240. #if defined(VK_KHR_fragment_shading_rate)
  241. vkGetPhysicalDeviceFragmentShadingRatesKHR = (PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR)load(context, "vkGetPhysicalDeviceFragmentShadingRatesKHR");
  242. #endif /* defined(VK_KHR_fragment_shading_rate) */
  243. #if defined(VK_KHR_get_display_properties2)
  244. vkGetDisplayModeProperties2KHR = (PFN_vkGetDisplayModeProperties2KHR)load(context, "vkGetDisplayModeProperties2KHR");
  245. vkGetDisplayPlaneCapabilities2KHR = (PFN_vkGetDisplayPlaneCapabilities2KHR)load(context, "vkGetDisplayPlaneCapabilities2KHR");
  246. vkGetPhysicalDeviceDisplayPlaneProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)load(context, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
  247. vkGetPhysicalDeviceDisplayProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayProperties2KHR)load(context, "vkGetPhysicalDeviceDisplayProperties2KHR");
  248. #endif /* defined(VK_KHR_get_display_properties2) */
  249. #if defined(VK_KHR_get_physical_device_properties2)
  250. vkGetPhysicalDeviceFeatures2KHR = (PFN_vkGetPhysicalDeviceFeatures2KHR)load(context, "vkGetPhysicalDeviceFeatures2KHR");
  251. vkGetPhysicalDeviceFormatProperties2KHR = (PFN_vkGetPhysicalDeviceFormatProperties2KHR)load(context, "vkGetPhysicalDeviceFormatProperties2KHR");
  252. vkGetPhysicalDeviceImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)load(context, "vkGetPhysicalDeviceImageFormatProperties2KHR");
  253. vkGetPhysicalDeviceMemoryProperties2KHR = (PFN_vkGetPhysicalDeviceMemoryProperties2KHR)load(context, "vkGetPhysicalDeviceMemoryProperties2KHR");
  254. vkGetPhysicalDeviceProperties2KHR = (PFN_vkGetPhysicalDeviceProperties2KHR)load(context, "vkGetPhysicalDeviceProperties2KHR");
  255. vkGetPhysicalDeviceQueueFamilyProperties2KHR = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)load(context, "vkGetPhysicalDeviceQueueFamilyProperties2KHR");
  256. vkGetPhysicalDeviceSparseImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
  257. #endif /* defined(VK_KHR_get_physical_device_properties2) */
  258. #if defined(VK_KHR_get_surface_capabilities2)
  259. vkGetPhysicalDeviceSurfaceCapabilities2KHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)load(context, "vkGetPhysicalDeviceSurfaceCapabilities2KHR");
  260. vkGetPhysicalDeviceSurfaceFormats2KHR = (PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)load(context, "vkGetPhysicalDeviceSurfaceFormats2KHR");
  261. #endif /* defined(VK_KHR_get_surface_capabilities2) */
  262. #if defined(VK_KHR_performance_query)
  263. vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)load(context, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
  264. vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)load(context, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
  265. #endif /* defined(VK_KHR_performance_query) */
  266. #if defined(VK_KHR_surface)
  267. vkDestroySurfaceKHR = (PFN_vkDestroySurfaceKHR)load(context, "vkDestroySurfaceKHR");
  268. vkGetPhysicalDeviceSurfaceCapabilitiesKHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)load(context, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
  269. vkGetPhysicalDeviceSurfaceFormatsKHR = (PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)load(context, "vkGetPhysicalDeviceSurfaceFormatsKHR");
  270. vkGetPhysicalDeviceSurfacePresentModesKHR = (PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)load(context, "vkGetPhysicalDeviceSurfacePresentModesKHR");
  271. vkGetPhysicalDeviceSurfaceSupportKHR = (PFN_vkGetPhysicalDeviceSurfaceSupportKHR)load(context, "vkGetPhysicalDeviceSurfaceSupportKHR");
  272. #endif /* defined(VK_KHR_surface) */
  273. #if defined(VK_KHR_video_queue)
  274. vkGetPhysicalDeviceVideoCapabilitiesKHR = (PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR)load(context, "vkGetPhysicalDeviceVideoCapabilitiesKHR");
  275. vkGetPhysicalDeviceVideoFormatPropertiesKHR = (PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR)load(context, "vkGetPhysicalDeviceVideoFormatPropertiesKHR");
  276. #endif /* defined(VK_KHR_video_queue) */
  277. #if defined(VK_KHR_wayland_surface)
  278. vkCreateWaylandSurfaceKHR = (PFN_vkCreateWaylandSurfaceKHR)load(context, "vkCreateWaylandSurfaceKHR");
  279. vkGetPhysicalDeviceWaylandPresentationSupportKHR = (PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)load(context, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
  280. #endif /* defined(VK_KHR_wayland_surface) */
  281. #if defined(VK_KHR_win32_surface)
  282. vkCreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR)load(context, "vkCreateWin32SurfaceKHR");
  283. vkGetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)load(context, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
  284. #endif /* defined(VK_KHR_win32_surface) */
  285. #if defined(VK_KHR_xcb_surface)
  286. vkCreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR)load(context, "vkCreateXcbSurfaceKHR");
  287. vkGetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)load(context, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
  288. #endif /* defined(VK_KHR_xcb_surface) */
  289. #if defined(VK_KHR_xlib_surface)
  290. vkCreateXlibSurfaceKHR = (PFN_vkCreateXlibSurfaceKHR)load(context, "vkCreateXlibSurfaceKHR");
  291. vkGetPhysicalDeviceXlibPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)load(context, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
  292. #endif /* defined(VK_KHR_xlib_surface) */
  293. #if defined(VK_MVK_ios_surface)
  294. vkCreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK)load(context, "vkCreateIOSSurfaceMVK");
  295. #endif /* defined(VK_MVK_ios_surface) */
  296. #if defined(VK_MVK_macos_surface)
  297. vkCreateMacOSSurfaceMVK = (PFN_vkCreateMacOSSurfaceMVK)load(context, "vkCreateMacOSSurfaceMVK");
  298. #endif /* defined(VK_MVK_macos_surface) */
  299. #if defined(VK_NN_vi_surface)
  300. vkCreateViSurfaceNN = (PFN_vkCreateViSurfaceNN)load(context, "vkCreateViSurfaceNN");
  301. #endif /* defined(VK_NN_vi_surface) */
  302. #if defined(VK_NV_acquire_winrt_display)
  303. vkAcquireWinrtDisplayNV = (PFN_vkAcquireWinrtDisplayNV)load(context, "vkAcquireWinrtDisplayNV");
  304. vkGetWinrtDisplayNV = (PFN_vkGetWinrtDisplayNV)load(context, "vkGetWinrtDisplayNV");
  305. #endif /* defined(VK_NV_acquire_winrt_display) */
  306. #if defined(VK_NV_cooperative_matrix)
  307. vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = (PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)load(context, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
  308. #endif /* defined(VK_NV_cooperative_matrix) */
  309. #if defined(VK_NV_coverage_reduction_mode)
  310. vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = (PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)load(context, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
  311. #endif /* defined(VK_NV_coverage_reduction_mode) */
  312. #if defined(VK_NV_external_memory_capabilities)
  313. vkGetPhysicalDeviceExternalImageFormatPropertiesNV = (PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)load(context, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
  314. #endif /* defined(VK_NV_external_memory_capabilities) */
  315. #if defined(VK_NV_optical_flow)
  316. vkGetPhysicalDeviceOpticalFlowImageFormatsNV = (PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV)load(context, "vkGetPhysicalDeviceOpticalFlowImageFormatsNV");
  317. #endif /* defined(VK_NV_optical_flow) */
  318. #if defined(VK_QNX_screen_surface)
  319. vkCreateScreenSurfaceQNX = (PFN_vkCreateScreenSurfaceQNX)load(context, "vkCreateScreenSurfaceQNX");
  320. vkGetPhysicalDeviceScreenPresentationSupportQNX = (PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX)load(context, "vkGetPhysicalDeviceScreenPresentationSupportQNX");
  321. #endif /* defined(VK_QNX_screen_surface) */
  322. #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
  323. vkGetPhysicalDevicePresentRectanglesKHR = (PFN_vkGetPhysicalDevicePresentRectanglesKHR)load(context, "vkGetPhysicalDevicePresentRectanglesKHR");
  324. #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
  325. /* VOLK_GENERATE_LOAD_INSTANCE */
  326. }
  327. static void volkGenLoadDevice(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
  328. {
  329. /* VOLK_GENERATE_LOAD_DEVICE */
  330. #if defined(VK_VERSION_1_0)
  331. vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)load(context, "vkAllocateCommandBuffers");
  332. vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)load(context, "vkAllocateDescriptorSets");
  333. vkAllocateMemory = (PFN_vkAllocateMemory)load(context, "vkAllocateMemory");
  334. vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)load(context, "vkBeginCommandBuffer");
  335. vkBindBufferMemory = (PFN_vkBindBufferMemory)load(context, "vkBindBufferMemory");
  336. vkBindImageMemory = (PFN_vkBindImageMemory)load(context, "vkBindImageMemory");
  337. vkCmdBeginQuery = (PFN_vkCmdBeginQuery)load(context, "vkCmdBeginQuery");
  338. vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)load(context, "vkCmdBeginRenderPass");
  339. vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)load(context, "vkCmdBindDescriptorSets");
  340. vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)load(context, "vkCmdBindIndexBuffer");
  341. vkCmdBindPipeline = (PFN_vkCmdBindPipeline)load(context, "vkCmdBindPipeline");
  342. vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)load(context, "vkCmdBindVertexBuffers");
  343. vkCmdBlitImage = (PFN_vkCmdBlitImage)load(context, "vkCmdBlitImage");
  344. vkCmdClearAttachments = (PFN_vkCmdClearAttachments)load(context, "vkCmdClearAttachments");
  345. vkCmdClearColorImage = (PFN_vkCmdClearColorImage)load(context, "vkCmdClearColorImage");
  346. vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)load(context, "vkCmdClearDepthStencilImage");
  347. vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)load(context, "vkCmdCopyBuffer");
  348. vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)load(context, "vkCmdCopyBufferToImage");
  349. vkCmdCopyImage = (PFN_vkCmdCopyImage)load(context, "vkCmdCopyImage");
  350. vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)load(context, "vkCmdCopyImageToBuffer");
  351. vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)load(context, "vkCmdCopyQueryPoolResults");
  352. vkCmdDispatch = (PFN_vkCmdDispatch)load(context, "vkCmdDispatch");
  353. vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)load(context, "vkCmdDispatchIndirect");
  354. vkCmdDraw = (PFN_vkCmdDraw)load(context, "vkCmdDraw");
  355. vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)load(context, "vkCmdDrawIndexed");
  356. vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)load(context, "vkCmdDrawIndexedIndirect");
  357. vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)load(context, "vkCmdDrawIndirect");
  358. vkCmdEndQuery = (PFN_vkCmdEndQuery)load(context, "vkCmdEndQuery");
  359. vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)load(context, "vkCmdEndRenderPass");
  360. vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)load(context, "vkCmdExecuteCommands");
  361. vkCmdFillBuffer = (PFN_vkCmdFillBuffer)load(context, "vkCmdFillBuffer");
  362. vkCmdNextSubpass = (PFN_vkCmdNextSubpass)load(context, "vkCmdNextSubpass");
  363. vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)load(context, "vkCmdPipelineBarrier");
  364. vkCmdPushConstants = (PFN_vkCmdPushConstants)load(context, "vkCmdPushConstants");
  365. vkCmdResetEvent = (PFN_vkCmdResetEvent)load(context, "vkCmdResetEvent");
  366. vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)load(context, "vkCmdResetQueryPool");
  367. vkCmdResolveImage = (PFN_vkCmdResolveImage)load(context, "vkCmdResolveImage");
  368. vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)load(context, "vkCmdSetBlendConstants");
  369. vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)load(context, "vkCmdSetDepthBias");
  370. vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)load(context, "vkCmdSetDepthBounds");
  371. vkCmdSetEvent = (PFN_vkCmdSetEvent)load(context, "vkCmdSetEvent");
  372. vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)load(context, "vkCmdSetLineWidth");
  373. vkCmdSetScissor = (PFN_vkCmdSetScissor)load(context, "vkCmdSetScissor");
  374. vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)load(context, "vkCmdSetStencilCompareMask");
  375. vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)load(context, "vkCmdSetStencilReference");
  376. vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)load(context, "vkCmdSetStencilWriteMask");
  377. vkCmdSetViewport = (PFN_vkCmdSetViewport)load(context, "vkCmdSetViewport");
  378. vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)load(context, "vkCmdUpdateBuffer");
  379. vkCmdWaitEvents = (PFN_vkCmdWaitEvents)load(context, "vkCmdWaitEvents");
  380. vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)load(context, "vkCmdWriteTimestamp");
  381. vkCreateBuffer = (PFN_vkCreateBuffer)load(context, "vkCreateBuffer");
  382. vkCreateBufferView = (PFN_vkCreateBufferView)load(context, "vkCreateBufferView");
  383. vkCreateCommandPool = (PFN_vkCreateCommandPool)load(context, "vkCreateCommandPool");
  384. vkCreateComputePipelines = (PFN_vkCreateComputePipelines)load(context, "vkCreateComputePipelines");
  385. vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)load(context, "vkCreateDescriptorPool");
  386. vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)load(context, "vkCreateDescriptorSetLayout");
  387. vkCreateEvent = (PFN_vkCreateEvent)load(context, "vkCreateEvent");
  388. vkCreateFence = (PFN_vkCreateFence)load(context, "vkCreateFence");
  389. vkCreateFramebuffer = (PFN_vkCreateFramebuffer)load(context, "vkCreateFramebuffer");
  390. vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)load(context, "vkCreateGraphicsPipelines");
  391. vkCreateImage = (PFN_vkCreateImage)load(context, "vkCreateImage");
  392. vkCreateImageView = (PFN_vkCreateImageView)load(context, "vkCreateImageView");
  393. vkCreatePipelineCache = (PFN_vkCreatePipelineCache)load(context, "vkCreatePipelineCache");
  394. vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)load(context, "vkCreatePipelineLayout");
  395. vkCreateQueryPool = (PFN_vkCreateQueryPool)load(context, "vkCreateQueryPool");
  396. vkCreateRenderPass = (PFN_vkCreateRenderPass)load(context, "vkCreateRenderPass");
  397. vkCreateSampler = (PFN_vkCreateSampler)load(context, "vkCreateSampler");
  398. vkCreateSemaphore = (PFN_vkCreateSemaphore)load(context, "vkCreateSemaphore");
  399. vkCreateShaderModule = (PFN_vkCreateShaderModule)load(context, "vkCreateShaderModule");
  400. vkDestroyBuffer = (PFN_vkDestroyBuffer)load(context, "vkDestroyBuffer");
  401. vkDestroyBufferView = (PFN_vkDestroyBufferView)load(context, "vkDestroyBufferView");
  402. vkDestroyCommandPool = (PFN_vkDestroyCommandPool)load(context, "vkDestroyCommandPool");
  403. vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)load(context, "vkDestroyDescriptorPool");
  404. vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)load(context, "vkDestroyDescriptorSetLayout");
  405. vkDestroyDevice = (PFN_vkDestroyDevice)load(context, "vkDestroyDevice");
  406. vkDestroyEvent = (PFN_vkDestroyEvent)load(context, "vkDestroyEvent");
  407. vkDestroyFence = (PFN_vkDestroyFence)load(context, "vkDestroyFence");
  408. vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)load(context, "vkDestroyFramebuffer");
  409. vkDestroyImage = (PFN_vkDestroyImage)load(context, "vkDestroyImage");
  410. vkDestroyImageView = (PFN_vkDestroyImageView)load(context, "vkDestroyImageView");
  411. vkDestroyPipeline = (PFN_vkDestroyPipeline)load(context, "vkDestroyPipeline");
  412. vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)load(context, "vkDestroyPipelineCache");
  413. vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)load(context, "vkDestroyPipelineLayout");
  414. vkDestroyQueryPool = (PFN_vkDestroyQueryPool)load(context, "vkDestroyQueryPool");
  415. vkDestroyRenderPass = (PFN_vkDestroyRenderPass)load(context, "vkDestroyRenderPass");
  416. vkDestroySampler = (PFN_vkDestroySampler)load(context, "vkDestroySampler");
  417. vkDestroySemaphore = (PFN_vkDestroySemaphore)load(context, "vkDestroySemaphore");
  418. vkDestroyShaderModule = (PFN_vkDestroyShaderModule)load(context, "vkDestroyShaderModule");
  419. vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)load(context, "vkDeviceWaitIdle");
  420. vkEndCommandBuffer = (PFN_vkEndCommandBuffer)load(context, "vkEndCommandBuffer");
  421. vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)load(context, "vkFlushMappedMemoryRanges");
  422. vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)load(context, "vkFreeCommandBuffers");
  423. vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)load(context, "vkFreeDescriptorSets");
  424. vkFreeMemory = (PFN_vkFreeMemory)load(context, "vkFreeMemory");
  425. vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)load(context, "vkGetBufferMemoryRequirements");
  426. vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)load(context, "vkGetDeviceMemoryCommitment");
  427. vkGetDeviceQueue = (PFN_vkGetDeviceQueue)load(context, "vkGetDeviceQueue");
  428. vkGetEventStatus = (PFN_vkGetEventStatus)load(context, "vkGetEventStatus");
  429. vkGetFenceStatus = (PFN_vkGetFenceStatus)load(context, "vkGetFenceStatus");
  430. vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)load(context, "vkGetImageMemoryRequirements");
  431. vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)load(context, "vkGetImageSparseMemoryRequirements");
  432. vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)load(context, "vkGetImageSubresourceLayout");
  433. vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)load(context, "vkGetPipelineCacheData");
  434. vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)load(context, "vkGetQueryPoolResults");
  435. vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)load(context, "vkGetRenderAreaGranularity");
  436. vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)load(context, "vkInvalidateMappedMemoryRanges");
  437. vkMapMemory = (PFN_vkMapMemory)load(context, "vkMapMemory");
  438. vkMergePipelineCaches = (PFN_vkMergePipelineCaches)load(context, "vkMergePipelineCaches");
  439. vkQueueBindSparse = (PFN_vkQueueBindSparse)load(context, "vkQueueBindSparse");
  440. vkQueueSubmit = (PFN_vkQueueSubmit)load(context, "vkQueueSubmit");
  441. vkQueueWaitIdle = (PFN_vkQueueWaitIdle)load(context, "vkQueueWaitIdle");
  442. vkResetCommandBuffer = (PFN_vkResetCommandBuffer)load(context, "vkResetCommandBuffer");
  443. vkResetCommandPool = (PFN_vkResetCommandPool)load(context, "vkResetCommandPool");
  444. vkResetDescriptorPool = (PFN_vkResetDescriptorPool)load(context, "vkResetDescriptorPool");
  445. vkResetEvent = (PFN_vkResetEvent)load(context, "vkResetEvent");
  446. vkResetFences = (PFN_vkResetFences)load(context, "vkResetFences");
  447. vkSetEvent = (PFN_vkSetEvent)load(context, "vkSetEvent");
  448. vkUnmapMemory = (PFN_vkUnmapMemory)load(context, "vkUnmapMemory");
  449. vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)load(context, "vkUpdateDescriptorSets");
  450. vkWaitForFences = (PFN_vkWaitForFences)load(context, "vkWaitForFences");
  451. #endif /* defined(VK_VERSION_1_0) */
  452. #if defined(VK_VERSION_1_1)
  453. vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)load(context, "vkBindBufferMemory2");
  454. vkBindImageMemory2 = (PFN_vkBindImageMemory2)load(context, "vkBindImageMemory2");
  455. vkCmdDispatchBase = (PFN_vkCmdDispatchBase)load(context, "vkCmdDispatchBase");
  456. vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)load(context, "vkCmdSetDeviceMask");
  457. vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)load(context, "vkCreateDescriptorUpdateTemplate");
  458. vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)load(context, "vkCreateSamplerYcbcrConversion");
  459. vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)load(context, "vkDestroyDescriptorUpdateTemplate");
  460. vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)load(context, "vkDestroySamplerYcbcrConversion");
  461. vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)load(context, "vkGetBufferMemoryRequirements2");
  462. vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)load(context, "vkGetDescriptorSetLayoutSupport");
  463. vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)load(context, "vkGetDeviceGroupPeerMemoryFeatures");
  464. vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)load(context, "vkGetDeviceQueue2");
  465. vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)load(context, "vkGetImageMemoryRequirements2");
  466. vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)load(context, "vkGetImageSparseMemoryRequirements2");
  467. vkTrimCommandPool = (PFN_vkTrimCommandPool)load(context, "vkTrimCommandPool");
  468. vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)load(context, "vkUpdateDescriptorSetWithTemplate");
  469. #endif /* defined(VK_VERSION_1_1) */
  470. #if defined(VK_VERSION_1_2)
  471. vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)load(context, "vkCmdBeginRenderPass2");
  472. vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)load(context, "vkCmdDrawIndexedIndirectCount");
  473. vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)load(context, "vkCmdDrawIndirectCount");
  474. vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)load(context, "vkCmdEndRenderPass2");
  475. vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)load(context, "vkCmdNextSubpass2");
  476. vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)load(context, "vkCreateRenderPass2");
  477. vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)load(context, "vkGetBufferDeviceAddress");
  478. vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)load(context, "vkGetBufferOpaqueCaptureAddress");
  479. vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)load(context, "vkGetDeviceMemoryOpaqueCaptureAddress");
  480. vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)load(context, "vkGetSemaphoreCounterValue");
  481. vkResetQueryPool = (PFN_vkResetQueryPool)load(context, "vkResetQueryPool");
  482. vkSignalSemaphore = (PFN_vkSignalSemaphore)load(context, "vkSignalSemaphore");
  483. vkWaitSemaphores = (PFN_vkWaitSemaphores)load(context, "vkWaitSemaphores");
  484. #endif /* defined(VK_VERSION_1_2) */
  485. #if defined(VK_VERSION_1_3)
  486. vkCmdBeginRendering = (PFN_vkCmdBeginRendering)load(context, "vkCmdBeginRendering");
  487. vkCmdBindVertexBuffers2 = (PFN_vkCmdBindVertexBuffers2)load(context, "vkCmdBindVertexBuffers2");
  488. vkCmdBlitImage2 = (PFN_vkCmdBlitImage2)load(context, "vkCmdBlitImage2");
  489. vkCmdCopyBuffer2 = (PFN_vkCmdCopyBuffer2)load(context, "vkCmdCopyBuffer2");
  490. vkCmdCopyBufferToImage2 = (PFN_vkCmdCopyBufferToImage2)load(context, "vkCmdCopyBufferToImage2");
  491. vkCmdCopyImage2 = (PFN_vkCmdCopyImage2)load(context, "vkCmdCopyImage2");
  492. vkCmdCopyImageToBuffer2 = (PFN_vkCmdCopyImageToBuffer2)load(context, "vkCmdCopyImageToBuffer2");
  493. vkCmdEndRendering = (PFN_vkCmdEndRendering)load(context, "vkCmdEndRendering");
  494. vkCmdPipelineBarrier2 = (PFN_vkCmdPipelineBarrier2)load(context, "vkCmdPipelineBarrier2");
  495. vkCmdResetEvent2 = (PFN_vkCmdResetEvent2)load(context, "vkCmdResetEvent2");
  496. vkCmdResolveImage2 = (PFN_vkCmdResolveImage2)load(context, "vkCmdResolveImage2");
  497. vkCmdSetCullMode = (PFN_vkCmdSetCullMode)load(context, "vkCmdSetCullMode");
  498. vkCmdSetDepthBiasEnable = (PFN_vkCmdSetDepthBiasEnable)load(context, "vkCmdSetDepthBiasEnable");
  499. vkCmdSetDepthBoundsTestEnable = (PFN_vkCmdSetDepthBoundsTestEnable)load(context, "vkCmdSetDepthBoundsTestEnable");
  500. vkCmdSetDepthCompareOp = (PFN_vkCmdSetDepthCompareOp)load(context, "vkCmdSetDepthCompareOp");
  501. vkCmdSetDepthTestEnable = (PFN_vkCmdSetDepthTestEnable)load(context, "vkCmdSetDepthTestEnable");
  502. vkCmdSetDepthWriteEnable = (PFN_vkCmdSetDepthWriteEnable)load(context, "vkCmdSetDepthWriteEnable");
  503. vkCmdSetEvent2 = (PFN_vkCmdSetEvent2)load(context, "vkCmdSetEvent2");
  504. vkCmdSetFrontFace = (PFN_vkCmdSetFrontFace)load(context, "vkCmdSetFrontFace");
  505. vkCmdSetPrimitiveRestartEnable = (PFN_vkCmdSetPrimitiveRestartEnable)load(context, "vkCmdSetPrimitiveRestartEnable");
  506. vkCmdSetPrimitiveTopology = (PFN_vkCmdSetPrimitiveTopology)load(context, "vkCmdSetPrimitiveTopology");
  507. vkCmdSetRasterizerDiscardEnable = (PFN_vkCmdSetRasterizerDiscardEnable)load(context, "vkCmdSetRasterizerDiscardEnable");
  508. vkCmdSetScissorWithCount = (PFN_vkCmdSetScissorWithCount)load(context, "vkCmdSetScissorWithCount");
  509. vkCmdSetStencilOp = (PFN_vkCmdSetStencilOp)load(context, "vkCmdSetStencilOp");
  510. vkCmdSetStencilTestEnable = (PFN_vkCmdSetStencilTestEnable)load(context, "vkCmdSetStencilTestEnable");
  511. vkCmdSetViewportWithCount = (PFN_vkCmdSetViewportWithCount)load(context, "vkCmdSetViewportWithCount");
  512. vkCmdWaitEvents2 = (PFN_vkCmdWaitEvents2)load(context, "vkCmdWaitEvents2");
  513. vkCmdWriteTimestamp2 = (PFN_vkCmdWriteTimestamp2)load(context, "vkCmdWriteTimestamp2");
  514. vkCreatePrivateDataSlot = (PFN_vkCreatePrivateDataSlot)load(context, "vkCreatePrivateDataSlot");
  515. vkDestroyPrivateDataSlot = (PFN_vkDestroyPrivateDataSlot)load(context, "vkDestroyPrivateDataSlot");
  516. vkGetDeviceBufferMemoryRequirements = (PFN_vkGetDeviceBufferMemoryRequirements)load(context, "vkGetDeviceBufferMemoryRequirements");
  517. vkGetDeviceImageMemoryRequirements = (PFN_vkGetDeviceImageMemoryRequirements)load(context, "vkGetDeviceImageMemoryRequirements");
  518. vkGetDeviceImageSparseMemoryRequirements = (PFN_vkGetDeviceImageSparseMemoryRequirements)load(context, "vkGetDeviceImageSparseMemoryRequirements");
  519. vkGetPrivateData = (PFN_vkGetPrivateData)load(context, "vkGetPrivateData");
  520. vkQueueSubmit2 = (PFN_vkQueueSubmit2)load(context, "vkQueueSubmit2");
  521. vkSetPrivateData = (PFN_vkSetPrivateData)load(context, "vkSetPrivateData");
  522. #endif /* defined(VK_VERSION_1_3) */
  523. #if defined(VK_AMD_buffer_marker)
  524. vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)load(context, "vkCmdWriteBufferMarkerAMD");
  525. #endif /* defined(VK_AMD_buffer_marker) */
  526. #if defined(VK_AMD_display_native_hdr)
  527. vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)load(context, "vkSetLocalDimmingAMD");
  528. #endif /* defined(VK_AMD_display_native_hdr) */
  529. #if defined(VK_AMD_draw_indirect_count)
  530. vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)load(context, "vkCmdDrawIndexedIndirectCountAMD");
  531. vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)load(context, "vkCmdDrawIndirectCountAMD");
  532. #endif /* defined(VK_AMD_draw_indirect_count) */
  533. #if defined(VK_AMD_shader_info)
  534. vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)load(context, "vkGetShaderInfoAMD");
  535. #endif /* defined(VK_AMD_shader_info) */
  536. #if defined(VK_ANDROID_external_memory_android_hardware_buffer)
  537. vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)load(context, "vkGetAndroidHardwareBufferPropertiesANDROID");
  538. vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)load(context, "vkGetMemoryAndroidHardwareBufferANDROID");
  539. #endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
  540. #if defined(VK_EXT_buffer_device_address)
  541. vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)load(context, "vkGetBufferDeviceAddressEXT");
  542. #endif /* defined(VK_EXT_buffer_device_address) */
  543. #if defined(VK_EXT_calibrated_timestamps)
  544. vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)load(context, "vkGetCalibratedTimestampsEXT");
  545. #endif /* defined(VK_EXT_calibrated_timestamps) */
  546. #if defined(VK_EXT_color_write_enable)
  547. vkCmdSetColorWriteEnableEXT = (PFN_vkCmdSetColorWriteEnableEXT)load(context, "vkCmdSetColorWriteEnableEXT");
  548. #endif /* defined(VK_EXT_color_write_enable) */
  549. #if defined(VK_EXT_conditional_rendering)
  550. vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)load(context, "vkCmdBeginConditionalRenderingEXT");
  551. vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)load(context, "vkCmdEndConditionalRenderingEXT");
  552. #endif /* defined(VK_EXT_conditional_rendering) */
  553. #if defined(VK_EXT_debug_marker)
  554. vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)load(context, "vkCmdDebugMarkerBeginEXT");
  555. vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)load(context, "vkCmdDebugMarkerEndEXT");
  556. vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)load(context, "vkCmdDebugMarkerInsertEXT");
  557. vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)load(context, "vkDebugMarkerSetObjectNameEXT");
  558. vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)load(context, "vkDebugMarkerSetObjectTagEXT");
  559. #endif /* defined(VK_EXT_debug_marker) */
  560. #if defined(VK_EXT_device_fault)
  561. vkGetDeviceFaultInfoEXT = (PFN_vkGetDeviceFaultInfoEXT)load(context, "vkGetDeviceFaultInfoEXT");
  562. #endif /* defined(VK_EXT_device_fault) */
  563. #if defined(VK_EXT_discard_rectangles)
  564. vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)load(context, "vkCmdSetDiscardRectangleEXT");
  565. #endif /* defined(VK_EXT_discard_rectangles) */
  566. #if defined(VK_EXT_display_control)
  567. vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)load(context, "vkDisplayPowerControlEXT");
  568. vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)load(context, "vkGetSwapchainCounterEXT");
  569. vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)load(context, "vkRegisterDeviceEventEXT");
  570. vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)load(context, "vkRegisterDisplayEventEXT");
  571. #endif /* defined(VK_EXT_display_control) */
  572. #if defined(VK_EXT_extended_dynamic_state)
  573. vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)load(context, "vkCmdBindVertexBuffers2EXT");
  574. vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)load(context, "vkCmdSetCullModeEXT");
  575. vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)load(context, "vkCmdSetDepthBoundsTestEnableEXT");
  576. vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)load(context, "vkCmdSetDepthCompareOpEXT");
  577. vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)load(context, "vkCmdSetDepthTestEnableEXT");
  578. vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)load(context, "vkCmdSetDepthWriteEnableEXT");
  579. vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)load(context, "vkCmdSetFrontFaceEXT");
  580. vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)load(context, "vkCmdSetPrimitiveTopologyEXT");
  581. vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)load(context, "vkCmdSetScissorWithCountEXT");
  582. vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)load(context, "vkCmdSetStencilOpEXT");
  583. vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)load(context, "vkCmdSetStencilTestEnableEXT");
  584. vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)load(context, "vkCmdSetViewportWithCountEXT");
  585. #endif /* defined(VK_EXT_extended_dynamic_state) */
  586. #if defined(VK_EXT_extended_dynamic_state2)
  587. vkCmdSetDepthBiasEnableEXT = (PFN_vkCmdSetDepthBiasEnableEXT)load(context, "vkCmdSetDepthBiasEnableEXT");
  588. vkCmdSetLogicOpEXT = (PFN_vkCmdSetLogicOpEXT)load(context, "vkCmdSetLogicOpEXT");
  589. vkCmdSetPatchControlPointsEXT = (PFN_vkCmdSetPatchControlPointsEXT)load(context, "vkCmdSetPatchControlPointsEXT");
  590. vkCmdSetPrimitiveRestartEnableEXT = (PFN_vkCmdSetPrimitiveRestartEnableEXT)load(context, "vkCmdSetPrimitiveRestartEnableEXT");
  591. vkCmdSetRasterizerDiscardEnableEXT = (PFN_vkCmdSetRasterizerDiscardEnableEXT)load(context, "vkCmdSetRasterizerDiscardEnableEXT");
  592. #endif /* defined(VK_EXT_extended_dynamic_state2) */
  593. #if defined(VK_EXT_extended_dynamic_state3)
  594. vkCmdSetAlphaToCoverageEnableEXT = (PFN_vkCmdSetAlphaToCoverageEnableEXT)load(context, "vkCmdSetAlphaToCoverageEnableEXT");
  595. vkCmdSetAlphaToOneEnableEXT = (PFN_vkCmdSetAlphaToOneEnableEXT)load(context, "vkCmdSetAlphaToOneEnableEXT");
  596. vkCmdSetColorBlendAdvancedEXT = (PFN_vkCmdSetColorBlendAdvancedEXT)load(context, "vkCmdSetColorBlendAdvancedEXT");
  597. vkCmdSetColorBlendEnableEXT = (PFN_vkCmdSetColorBlendEnableEXT)load(context, "vkCmdSetColorBlendEnableEXT");
  598. vkCmdSetColorBlendEquationEXT = (PFN_vkCmdSetColorBlendEquationEXT)load(context, "vkCmdSetColorBlendEquationEXT");
  599. vkCmdSetColorWriteMaskEXT = (PFN_vkCmdSetColorWriteMaskEXT)load(context, "vkCmdSetColorWriteMaskEXT");
  600. vkCmdSetConservativeRasterizationModeEXT = (PFN_vkCmdSetConservativeRasterizationModeEXT)load(context, "vkCmdSetConservativeRasterizationModeEXT");
  601. vkCmdSetCoverageModulationModeNV = (PFN_vkCmdSetCoverageModulationModeNV)load(context, "vkCmdSetCoverageModulationModeNV");
  602. vkCmdSetCoverageModulationTableEnableNV = (PFN_vkCmdSetCoverageModulationTableEnableNV)load(context, "vkCmdSetCoverageModulationTableEnableNV");
  603. vkCmdSetCoverageModulationTableNV = (PFN_vkCmdSetCoverageModulationTableNV)load(context, "vkCmdSetCoverageModulationTableNV");
  604. vkCmdSetCoverageReductionModeNV = (PFN_vkCmdSetCoverageReductionModeNV)load(context, "vkCmdSetCoverageReductionModeNV");
  605. vkCmdSetCoverageToColorEnableNV = (PFN_vkCmdSetCoverageToColorEnableNV)load(context, "vkCmdSetCoverageToColorEnableNV");
  606. vkCmdSetCoverageToColorLocationNV = (PFN_vkCmdSetCoverageToColorLocationNV)load(context, "vkCmdSetCoverageToColorLocationNV");
  607. vkCmdSetDepthClampEnableEXT = (PFN_vkCmdSetDepthClampEnableEXT)load(context, "vkCmdSetDepthClampEnableEXT");
  608. vkCmdSetDepthClipEnableEXT = (PFN_vkCmdSetDepthClipEnableEXT)load(context, "vkCmdSetDepthClipEnableEXT");
  609. vkCmdSetDepthClipNegativeOneToOneEXT = (PFN_vkCmdSetDepthClipNegativeOneToOneEXT)load(context, "vkCmdSetDepthClipNegativeOneToOneEXT");
  610. vkCmdSetExtraPrimitiveOverestimationSizeEXT = (PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT)load(context, "vkCmdSetExtraPrimitiveOverestimationSizeEXT");
  611. vkCmdSetLineRasterizationModeEXT = (PFN_vkCmdSetLineRasterizationModeEXT)load(context, "vkCmdSetLineRasterizationModeEXT");
  612. vkCmdSetLineStippleEnableEXT = (PFN_vkCmdSetLineStippleEnableEXT)load(context, "vkCmdSetLineStippleEnableEXT");
  613. vkCmdSetLogicOpEnableEXT = (PFN_vkCmdSetLogicOpEnableEXT)load(context, "vkCmdSetLogicOpEnableEXT");
  614. vkCmdSetPolygonModeEXT = (PFN_vkCmdSetPolygonModeEXT)load(context, "vkCmdSetPolygonModeEXT");
  615. vkCmdSetProvokingVertexModeEXT = (PFN_vkCmdSetProvokingVertexModeEXT)load(context, "vkCmdSetProvokingVertexModeEXT");
  616. vkCmdSetRasterizationSamplesEXT = (PFN_vkCmdSetRasterizationSamplesEXT)load(context, "vkCmdSetRasterizationSamplesEXT");
  617. vkCmdSetRasterizationStreamEXT = (PFN_vkCmdSetRasterizationStreamEXT)load(context, "vkCmdSetRasterizationStreamEXT");
  618. vkCmdSetRepresentativeFragmentTestEnableNV = (PFN_vkCmdSetRepresentativeFragmentTestEnableNV)load(context, "vkCmdSetRepresentativeFragmentTestEnableNV");
  619. vkCmdSetSampleLocationsEnableEXT = (PFN_vkCmdSetSampleLocationsEnableEXT)load(context, "vkCmdSetSampleLocationsEnableEXT");
  620. vkCmdSetSampleMaskEXT = (PFN_vkCmdSetSampleMaskEXT)load(context, "vkCmdSetSampleMaskEXT");
  621. vkCmdSetShadingRateImageEnableNV = (PFN_vkCmdSetShadingRateImageEnableNV)load(context, "vkCmdSetShadingRateImageEnableNV");
  622. vkCmdSetTessellationDomainOriginEXT = (PFN_vkCmdSetTessellationDomainOriginEXT)load(context, "vkCmdSetTessellationDomainOriginEXT");
  623. vkCmdSetViewportSwizzleNV = (PFN_vkCmdSetViewportSwizzleNV)load(context, "vkCmdSetViewportSwizzleNV");
  624. vkCmdSetViewportWScalingEnableNV = (PFN_vkCmdSetViewportWScalingEnableNV)load(context, "vkCmdSetViewportWScalingEnableNV");
  625. #endif /* defined(VK_EXT_extended_dynamic_state3) */
  626. #if defined(VK_EXT_external_memory_host)
  627. vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)load(context, "vkGetMemoryHostPointerPropertiesEXT");
  628. #endif /* defined(VK_EXT_external_memory_host) */
  629. #if defined(VK_EXT_full_screen_exclusive)
  630. vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)load(context, "vkAcquireFullScreenExclusiveModeEXT");
  631. vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)load(context, "vkReleaseFullScreenExclusiveModeEXT");
  632. #endif /* defined(VK_EXT_full_screen_exclusive) */
  633. #if defined(VK_EXT_hdr_metadata)
  634. vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)load(context, "vkSetHdrMetadataEXT");
  635. #endif /* defined(VK_EXT_hdr_metadata) */
  636. #if defined(VK_EXT_host_query_reset)
  637. vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)load(context, "vkResetQueryPoolEXT");
  638. #endif /* defined(VK_EXT_host_query_reset) */
  639. #if defined(VK_EXT_image_compression_control)
  640. vkGetImageSubresourceLayout2EXT = (PFN_vkGetImageSubresourceLayout2EXT)load(context, "vkGetImageSubresourceLayout2EXT");
  641. #endif /* defined(VK_EXT_image_compression_control) */
  642. #if defined(VK_EXT_image_drm_format_modifier)
  643. vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)load(context, "vkGetImageDrmFormatModifierPropertiesEXT");
  644. #endif /* defined(VK_EXT_image_drm_format_modifier) */
  645. #if defined(VK_EXT_line_rasterization)
  646. vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)load(context, "vkCmdSetLineStippleEXT");
  647. #endif /* defined(VK_EXT_line_rasterization) */
  648. #if defined(VK_EXT_mesh_shader)
  649. vkCmdDrawMeshTasksEXT = (PFN_vkCmdDrawMeshTasksEXT)load(context, "vkCmdDrawMeshTasksEXT");
  650. vkCmdDrawMeshTasksIndirectCountEXT = (PFN_vkCmdDrawMeshTasksIndirectCountEXT)load(context, "vkCmdDrawMeshTasksIndirectCountEXT");
  651. vkCmdDrawMeshTasksIndirectEXT = (PFN_vkCmdDrawMeshTasksIndirectEXT)load(context, "vkCmdDrawMeshTasksIndirectEXT");
  652. #endif /* defined(VK_EXT_mesh_shader) */
  653. #if defined(VK_EXT_metal_objects)
  654. vkExportMetalObjectsEXT = (PFN_vkExportMetalObjectsEXT)load(context, "vkExportMetalObjectsEXT");
  655. #endif /* defined(VK_EXT_metal_objects) */
  656. #if defined(VK_EXT_multi_draw)
  657. vkCmdDrawMultiEXT = (PFN_vkCmdDrawMultiEXT)load(context, "vkCmdDrawMultiEXT");
  658. vkCmdDrawMultiIndexedEXT = (PFN_vkCmdDrawMultiIndexedEXT)load(context, "vkCmdDrawMultiIndexedEXT");
  659. #endif /* defined(VK_EXT_multi_draw) */
  660. #if defined(VK_EXT_opacity_micromap)
  661. vkBuildMicromapsEXT = (PFN_vkBuildMicromapsEXT)load(context, "vkBuildMicromapsEXT");
  662. vkCmdBuildMicromapsEXT = (PFN_vkCmdBuildMicromapsEXT)load(context, "vkCmdBuildMicromapsEXT");
  663. vkCmdCopyMemoryToMicromapEXT = (PFN_vkCmdCopyMemoryToMicromapEXT)load(context, "vkCmdCopyMemoryToMicromapEXT");
  664. vkCmdCopyMicromapEXT = (PFN_vkCmdCopyMicromapEXT)load(context, "vkCmdCopyMicromapEXT");
  665. vkCmdCopyMicromapToMemoryEXT = (PFN_vkCmdCopyMicromapToMemoryEXT)load(context, "vkCmdCopyMicromapToMemoryEXT");
  666. vkCmdWriteMicromapsPropertiesEXT = (PFN_vkCmdWriteMicromapsPropertiesEXT)load(context, "vkCmdWriteMicromapsPropertiesEXT");
  667. vkCopyMemoryToMicromapEXT = (PFN_vkCopyMemoryToMicromapEXT)load(context, "vkCopyMemoryToMicromapEXT");
  668. vkCopyMicromapEXT = (PFN_vkCopyMicromapEXT)load(context, "vkCopyMicromapEXT");
  669. vkCopyMicromapToMemoryEXT = (PFN_vkCopyMicromapToMemoryEXT)load(context, "vkCopyMicromapToMemoryEXT");
  670. vkCreateMicromapEXT = (PFN_vkCreateMicromapEXT)load(context, "vkCreateMicromapEXT");
  671. vkDestroyMicromapEXT = (PFN_vkDestroyMicromapEXT)load(context, "vkDestroyMicromapEXT");
  672. vkGetDeviceMicromapCompatibilityEXT = (PFN_vkGetDeviceMicromapCompatibilityEXT)load(context, "vkGetDeviceMicromapCompatibilityEXT");
  673. vkGetMicromapBuildSizesEXT = (PFN_vkGetMicromapBuildSizesEXT)load(context, "vkGetMicromapBuildSizesEXT");
  674. vkWriteMicromapsPropertiesEXT = (PFN_vkWriteMicromapsPropertiesEXT)load(context, "vkWriteMicromapsPropertiesEXT");
  675. #endif /* defined(VK_EXT_opacity_micromap) */
  676. #if defined(VK_EXT_pageable_device_local_memory)
  677. vkSetDeviceMemoryPriorityEXT = (PFN_vkSetDeviceMemoryPriorityEXT)load(context, "vkSetDeviceMemoryPriorityEXT");
  678. #endif /* defined(VK_EXT_pageable_device_local_memory) */
  679. #if defined(VK_EXT_pipeline_properties)
  680. vkGetPipelinePropertiesEXT = (PFN_vkGetPipelinePropertiesEXT)load(context, "vkGetPipelinePropertiesEXT");
  681. #endif /* defined(VK_EXT_pipeline_properties) */
  682. #if defined(VK_EXT_private_data)
  683. vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)load(context, "vkCreatePrivateDataSlotEXT");
  684. vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)load(context, "vkDestroyPrivateDataSlotEXT");
  685. vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)load(context, "vkGetPrivateDataEXT");
  686. vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)load(context, "vkSetPrivateDataEXT");
  687. #endif /* defined(VK_EXT_private_data) */
  688. #if defined(VK_EXT_sample_locations)
  689. vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)load(context, "vkCmdSetSampleLocationsEXT");
  690. #endif /* defined(VK_EXT_sample_locations) */
  691. #if defined(VK_EXT_shader_module_identifier)
  692. vkGetShaderModuleCreateInfoIdentifierEXT = (PFN_vkGetShaderModuleCreateInfoIdentifierEXT)load(context, "vkGetShaderModuleCreateInfoIdentifierEXT");
  693. vkGetShaderModuleIdentifierEXT = (PFN_vkGetShaderModuleIdentifierEXT)load(context, "vkGetShaderModuleIdentifierEXT");
  694. #endif /* defined(VK_EXT_shader_module_identifier) */
  695. #if defined(VK_EXT_transform_feedback)
  696. vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)load(context, "vkCmdBeginQueryIndexedEXT");
  697. vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)load(context, "vkCmdBeginTransformFeedbackEXT");
  698. vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)load(context, "vkCmdBindTransformFeedbackBuffersEXT");
  699. vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)load(context, "vkCmdDrawIndirectByteCountEXT");
  700. vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)load(context, "vkCmdEndQueryIndexedEXT");
  701. vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)load(context, "vkCmdEndTransformFeedbackEXT");
  702. #endif /* defined(VK_EXT_transform_feedback) */
  703. #if defined(VK_EXT_validation_cache)
  704. vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)load(context, "vkCreateValidationCacheEXT");
  705. vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)load(context, "vkDestroyValidationCacheEXT");
  706. vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)load(context, "vkGetValidationCacheDataEXT");
  707. vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)load(context, "vkMergeValidationCachesEXT");
  708. #endif /* defined(VK_EXT_validation_cache) */
  709. #if defined(VK_EXT_vertex_input_dynamic_state)
  710. vkCmdSetVertexInputEXT = (PFN_vkCmdSetVertexInputEXT)load(context, "vkCmdSetVertexInputEXT");
  711. #endif /* defined(VK_EXT_vertex_input_dynamic_state) */
  712. #if defined(VK_FUCHSIA_buffer_collection)
  713. vkCreateBufferCollectionFUCHSIA = (PFN_vkCreateBufferCollectionFUCHSIA)load(context, "vkCreateBufferCollectionFUCHSIA");
  714. vkDestroyBufferCollectionFUCHSIA = (PFN_vkDestroyBufferCollectionFUCHSIA)load(context, "vkDestroyBufferCollectionFUCHSIA");
  715. vkGetBufferCollectionPropertiesFUCHSIA = (PFN_vkGetBufferCollectionPropertiesFUCHSIA)load(context, "vkGetBufferCollectionPropertiesFUCHSIA");
  716. vkSetBufferCollectionBufferConstraintsFUCHSIA = (PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA)load(context, "vkSetBufferCollectionBufferConstraintsFUCHSIA");
  717. vkSetBufferCollectionImageConstraintsFUCHSIA = (PFN_vkSetBufferCollectionImageConstraintsFUCHSIA)load(context, "vkSetBufferCollectionImageConstraintsFUCHSIA");
  718. #endif /* defined(VK_FUCHSIA_buffer_collection) */
  719. #if defined(VK_FUCHSIA_external_memory)
  720. vkGetMemoryZirconHandleFUCHSIA = (PFN_vkGetMemoryZirconHandleFUCHSIA)load(context, "vkGetMemoryZirconHandleFUCHSIA");
  721. vkGetMemoryZirconHandlePropertiesFUCHSIA = (PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA)load(context, "vkGetMemoryZirconHandlePropertiesFUCHSIA");
  722. #endif /* defined(VK_FUCHSIA_external_memory) */
  723. #if defined(VK_FUCHSIA_external_semaphore)
  724. vkGetSemaphoreZirconHandleFUCHSIA = (PFN_vkGetSemaphoreZirconHandleFUCHSIA)load(context, "vkGetSemaphoreZirconHandleFUCHSIA");
  725. vkImportSemaphoreZirconHandleFUCHSIA = (PFN_vkImportSemaphoreZirconHandleFUCHSIA)load(context, "vkImportSemaphoreZirconHandleFUCHSIA");
  726. #endif /* defined(VK_FUCHSIA_external_semaphore) */
  727. #if defined(VK_GOOGLE_display_timing)
  728. vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)load(context, "vkGetPastPresentationTimingGOOGLE");
  729. vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)load(context, "vkGetRefreshCycleDurationGOOGLE");
  730. #endif /* defined(VK_GOOGLE_display_timing) */
  731. #if defined(VK_HUAWEI_invocation_mask)
  732. vkCmdBindInvocationMaskHUAWEI = (PFN_vkCmdBindInvocationMaskHUAWEI)load(context, "vkCmdBindInvocationMaskHUAWEI");
  733. #endif /* defined(VK_HUAWEI_invocation_mask) */
  734. #if defined(VK_HUAWEI_subpass_shading)
  735. vkCmdSubpassShadingHUAWEI = (PFN_vkCmdSubpassShadingHUAWEI)load(context, "vkCmdSubpassShadingHUAWEI");
  736. vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = (PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI)load(context, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI");
  737. #endif /* defined(VK_HUAWEI_subpass_shading) */
  738. #if defined(VK_INTEL_performance_query)
  739. vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)load(context, "vkAcquirePerformanceConfigurationINTEL");
  740. vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)load(context, "vkCmdSetPerformanceMarkerINTEL");
  741. vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)load(context, "vkCmdSetPerformanceOverrideINTEL");
  742. vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)load(context, "vkCmdSetPerformanceStreamMarkerINTEL");
  743. vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)load(context, "vkGetPerformanceParameterINTEL");
  744. vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)load(context, "vkInitializePerformanceApiINTEL");
  745. vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)load(context, "vkQueueSetPerformanceConfigurationINTEL");
  746. vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)load(context, "vkReleasePerformanceConfigurationINTEL");
  747. vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)load(context, "vkUninitializePerformanceApiINTEL");
  748. #endif /* defined(VK_INTEL_performance_query) */
  749. #if defined(VK_KHR_acceleration_structure)
  750. vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)load(context, "vkBuildAccelerationStructuresKHR");
  751. vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)load(context, "vkCmdBuildAccelerationStructuresIndirectKHR");
  752. vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)load(context, "vkCmdBuildAccelerationStructuresKHR");
  753. vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)load(context, "vkCmdCopyAccelerationStructureKHR");
  754. vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)load(context, "vkCmdCopyAccelerationStructureToMemoryKHR");
  755. vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)load(context, "vkCmdCopyMemoryToAccelerationStructureKHR");
  756. vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)load(context, "vkCmdWriteAccelerationStructuresPropertiesKHR");
  757. vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)load(context, "vkCopyAccelerationStructureKHR");
  758. vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)load(context, "vkCopyAccelerationStructureToMemoryKHR");
  759. vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)load(context, "vkCopyMemoryToAccelerationStructureKHR");
  760. vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)load(context, "vkCreateAccelerationStructureKHR");
  761. vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)load(context, "vkDestroyAccelerationStructureKHR");
  762. vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)load(context, "vkGetAccelerationStructureBuildSizesKHR");
  763. vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)load(context, "vkGetAccelerationStructureDeviceAddressKHR");
  764. vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)load(context, "vkGetDeviceAccelerationStructureCompatibilityKHR");
  765. vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)load(context, "vkWriteAccelerationStructuresPropertiesKHR");
  766. #endif /* defined(VK_KHR_acceleration_structure) */
  767. #if defined(VK_KHR_bind_memory2)
  768. vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)load(context, "vkBindBufferMemory2KHR");
  769. vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)load(context, "vkBindImageMemory2KHR");
  770. #endif /* defined(VK_KHR_bind_memory2) */
  771. #if defined(VK_KHR_buffer_device_address)
  772. vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)load(context, "vkGetBufferDeviceAddressKHR");
  773. vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)load(context, "vkGetBufferOpaqueCaptureAddressKHR");
  774. vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)load(context, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
  775. #endif /* defined(VK_KHR_buffer_device_address) */
  776. #if defined(VK_KHR_copy_commands2)
  777. vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)load(context, "vkCmdBlitImage2KHR");
  778. vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)load(context, "vkCmdCopyBuffer2KHR");
  779. vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)load(context, "vkCmdCopyBufferToImage2KHR");
  780. vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)load(context, "vkCmdCopyImage2KHR");
  781. vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)load(context, "vkCmdCopyImageToBuffer2KHR");
  782. vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)load(context, "vkCmdResolveImage2KHR");
  783. #endif /* defined(VK_KHR_copy_commands2) */
  784. #if defined(VK_KHR_create_renderpass2)
  785. vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)load(context, "vkCmdBeginRenderPass2KHR");
  786. vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)load(context, "vkCmdEndRenderPass2KHR");
  787. vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)load(context, "vkCmdNextSubpass2KHR");
  788. vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)load(context, "vkCreateRenderPass2KHR");
  789. #endif /* defined(VK_KHR_create_renderpass2) */
  790. #if defined(VK_KHR_deferred_host_operations)
  791. vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)load(context, "vkCreateDeferredOperationKHR");
  792. vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)load(context, "vkDeferredOperationJoinKHR");
  793. vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)load(context, "vkDestroyDeferredOperationKHR");
  794. vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)load(context, "vkGetDeferredOperationMaxConcurrencyKHR");
  795. vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)load(context, "vkGetDeferredOperationResultKHR");
  796. #endif /* defined(VK_KHR_deferred_host_operations) */
  797. #if defined(VK_KHR_descriptor_update_template)
  798. vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)load(context, "vkCreateDescriptorUpdateTemplateKHR");
  799. vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)load(context, "vkDestroyDescriptorUpdateTemplateKHR");
  800. vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)load(context, "vkUpdateDescriptorSetWithTemplateKHR");
  801. #endif /* defined(VK_KHR_descriptor_update_template) */
  802. #if defined(VK_KHR_device_group)
  803. vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)load(context, "vkCmdDispatchBaseKHR");
  804. vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)load(context, "vkCmdSetDeviceMaskKHR");
  805. vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)load(context, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
  806. #endif /* defined(VK_KHR_device_group) */
  807. #if defined(VK_KHR_display_swapchain)
  808. vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)load(context, "vkCreateSharedSwapchainsKHR");
  809. #endif /* defined(VK_KHR_display_swapchain) */
  810. #if defined(VK_KHR_draw_indirect_count)
  811. vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)load(context, "vkCmdDrawIndexedIndirectCountKHR");
  812. vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)load(context, "vkCmdDrawIndirectCountKHR");
  813. #endif /* defined(VK_KHR_draw_indirect_count) */
  814. #if defined(VK_KHR_dynamic_rendering)
  815. vkCmdBeginRenderingKHR = (PFN_vkCmdBeginRenderingKHR)load(context, "vkCmdBeginRenderingKHR");
  816. vkCmdEndRenderingKHR = (PFN_vkCmdEndRenderingKHR)load(context, "vkCmdEndRenderingKHR");
  817. #endif /* defined(VK_KHR_dynamic_rendering) */
  818. #if defined(VK_KHR_external_fence_fd)
  819. vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)load(context, "vkGetFenceFdKHR");
  820. vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)load(context, "vkImportFenceFdKHR");
  821. #endif /* defined(VK_KHR_external_fence_fd) */
  822. #if defined(VK_KHR_external_fence_win32)
  823. vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)load(context, "vkGetFenceWin32HandleKHR");
  824. vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)load(context, "vkImportFenceWin32HandleKHR");
  825. #endif /* defined(VK_KHR_external_fence_win32) */
  826. #if defined(VK_KHR_external_memory_fd)
  827. vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)load(context, "vkGetMemoryFdKHR");
  828. vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)load(context, "vkGetMemoryFdPropertiesKHR");
  829. #endif /* defined(VK_KHR_external_memory_fd) */
  830. #if defined(VK_KHR_external_memory_win32)
  831. vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)load(context, "vkGetMemoryWin32HandleKHR");
  832. vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)load(context, "vkGetMemoryWin32HandlePropertiesKHR");
  833. #endif /* defined(VK_KHR_external_memory_win32) */
  834. #if defined(VK_KHR_external_semaphore_fd)
  835. vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)load(context, "vkGetSemaphoreFdKHR");
  836. vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)load(context, "vkImportSemaphoreFdKHR");
  837. #endif /* defined(VK_KHR_external_semaphore_fd) */
  838. #if defined(VK_KHR_external_semaphore_win32)
  839. vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)load(context, "vkGetSemaphoreWin32HandleKHR");
  840. vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)load(context, "vkImportSemaphoreWin32HandleKHR");
  841. #endif /* defined(VK_KHR_external_semaphore_win32) */
  842. #if defined(VK_KHR_fragment_shading_rate)
  843. vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)load(context, "vkCmdSetFragmentShadingRateKHR");
  844. #endif /* defined(VK_KHR_fragment_shading_rate) */
  845. #if defined(VK_KHR_get_memory_requirements2)
  846. vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)load(context, "vkGetBufferMemoryRequirements2KHR");
  847. vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)load(context, "vkGetImageMemoryRequirements2KHR");
  848. vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)load(context, "vkGetImageSparseMemoryRequirements2KHR");
  849. #endif /* defined(VK_KHR_get_memory_requirements2) */
  850. #if defined(VK_KHR_maintenance1)
  851. vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)load(context, "vkTrimCommandPoolKHR");
  852. #endif /* defined(VK_KHR_maintenance1) */
  853. #if defined(VK_KHR_maintenance3)
  854. vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)load(context, "vkGetDescriptorSetLayoutSupportKHR");
  855. #endif /* defined(VK_KHR_maintenance3) */
  856. #if defined(VK_KHR_maintenance4)
  857. vkGetDeviceBufferMemoryRequirementsKHR = (PFN_vkGetDeviceBufferMemoryRequirementsKHR)load(context, "vkGetDeviceBufferMemoryRequirementsKHR");
  858. vkGetDeviceImageMemoryRequirementsKHR = (PFN_vkGetDeviceImageMemoryRequirementsKHR)load(context, "vkGetDeviceImageMemoryRequirementsKHR");
  859. vkGetDeviceImageSparseMemoryRequirementsKHR = (PFN_vkGetDeviceImageSparseMemoryRequirementsKHR)load(context, "vkGetDeviceImageSparseMemoryRequirementsKHR");
  860. #endif /* defined(VK_KHR_maintenance4) */
  861. #if defined(VK_KHR_performance_query)
  862. vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)load(context, "vkAcquireProfilingLockKHR");
  863. vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)load(context, "vkReleaseProfilingLockKHR");
  864. #endif /* defined(VK_KHR_performance_query) */
  865. #if defined(VK_KHR_pipeline_executable_properties)
  866. vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)load(context, "vkGetPipelineExecutableInternalRepresentationsKHR");
  867. vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)load(context, "vkGetPipelineExecutablePropertiesKHR");
  868. vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)load(context, "vkGetPipelineExecutableStatisticsKHR");
  869. #endif /* defined(VK_KHR_pipeline_executable_properties) */
  870. #if defined(VK_KHR_present_wait)
  871. vkWaitForPresentKHR = (PFN_vkWaitForPresentKHR)load(context, "vkWaitForPresentKHR");
  872. #endif /* defined(VK_KHR_present_wait) */
  873. #if defined(VK_KHR_push_descriptor)
  874. vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)load(context, "vkCmdPushDescriptorSetKHR");
  875. #endif /* defined(VK_KHR_push_descriptor) */
  876. #if defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline)
  877. vkCmdTraceRaysIndirect2KHR = (PFN_vkCmdTraceRaysIndirect2KHR)load(context, "vkCmdTraceRaysIndirect2KHR");
  878. #endif /* defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline) */
  879. #if defined(VK_KHR_ray_tracing_pipeline)
  880. vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)load(context, "vkCmdSetRayTracingPipelineStackSizeKHR");
  881. vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)load(context, "vkCmdTraceRaysIndirectKHR");
  882. vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)load(context, "vkCmdTraceRaysKHR");
  883. vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)load(context, "vkCreateRayTracingPipelinesKHR");
  884. vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)load(context, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
  885. vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)load(context, "vkGetRayTracingShaderGroupHandlesKHR");
  886. vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)load(context, "vkGetRayTracingShaderGroupStackSizeKHR");
  887. #endif /* defined(VK_KHR_ray_tracing_pipeline) */
  888. #if defined(VK_KHR_sampler_ycbcr_conversion)
  889. vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)load(context, "vkCreateSamplerYcbcrConversionKHR");
  890. vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)load(context, "vkDestroySamplerYcbcrConversionKHR");
  891. #endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
  892. #if defined(VK_KHR_shared_presentable_image)
  893. vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)load(context, "vkGetSwapchainStatusKHR");
  894. #endif /* defined(VK_KHR_shared_presentable_image) */
  895. #if defined(VK_KHR_swapchain)
  896. vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)load(context, "vkAcquireNextImageKHR");
  897. vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)load(context, "vkCreateSwapchainKHR");
  898. vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)load(context, "vkDestroySwapchainKHR");
  899. vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)load(context, "vkGetSwapchainImagesKHR");
  900. vkQueuePresentKHR = (PFN_vkQueuePresentKHR)load(context, "vkQueuePresentKHR");
  901. #endif /* defined(VK_KHR_swapchain) */
  902. #if defined(VK_KHR_synchronization2)
  903. vkCmdPipelineBarrier2KHR = (PFN_vkCmdPipelineBarrier2KHR)load(context, "vkCmdPipelineBarrier2KHR");
  904. vkCmdResetEvent2KHR = (PFN_vkCmdResetEvent2KHR)load(context, "vkCmdResetEvent2KHR");
  905. vkCmdSetEvent2KHR = (PFN_vkCmdSetEvent2KHR)load(context, "vkCmdSetEvent2KHR");
  906. vkCmdWaitEvents2KHR = (PFN_vkCmdWaitEvents2KHR)load(context, "vkCmdWaitEvents2KHR");
  907. vkCmdWriteTimestamp2KHR = (PFN_vkCmdWriteTimestamp2KHR)load(context, "vkCmdWriteTimestamp2KHR");
  908. vkQueueSubmit2KHR = (PFN_vkQueueSubmit2KHR)load(context, "vkQueueSubmit2KHR");
  909. #endif /* defined(VK_KHR_synchronization2) */
  910. #if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
  911. vkCmdWriteBufferMarker2AMD = (PFN_vkCmdWriteBufferMarker2AMD)load(context, "vkCmdWriteBufferMarker2AMD");
  912. #endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
  913. #if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
  914. vkGetQueueCheckpointData2NV = (PFN_vkGetQueueCheckpointData2NV)load(context, "vkGetQueueCheckpointData2NV");
  915. #endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
  916. #if defined(VK_KHR_timeline_semaphore)
  917. vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)load(context, "vkGetSemaphoreCounterValueKHR");
  918. vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)load(context, "vkSignalSemaphoreKHR");
  919. vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)load(context, "vkWaitSemaphoresKHR");
  920. #endif /* defined(VK_KHR_timeline_semaphore) */
  921. #if defined(VK_KHR_video_decode_queue)
  922. vkCmdDecodeVideoKHR = (PFN_vkCmdDecodeVideoKHR)load(context, "vkCmdDecodeVideoKHR");
  923. #endif /* defined(VK_KHR_video_decode_queue) */
  924. #if defined(VK_KHR_video_encode_queue)
  925. vkCmdEncodeVideoKHR = (PFN_vkCmdEncodeVideoKHR)load(context, "vkCmdEncodeVideoKHR");
  926. #endif /* defined(VK_KHR_video_encode_queue) */
  927. #if defined(VK_KHR_video_queue)
  928. vkBindVideoSessionMemoryKHR = (PFN_vkBindVideoSessionMemoryKHR)load(context, "vkBindVideoSessionMemoryKHR");
  929. vkCmdBeginVideoCodingKHR = (PFN_vkCmdBeginVideoCodingKHR)load(context, "vkCmdBeginVideoCodingKHR");
  930. vkCmdControlVideoCodingKHR = (PFN_vkCmdControlVideoCodingKHR)load(context, "vkCmdControlVideoCodingKHR");
  931. vkCmdEndVideoCodingKHR = (PFN_vkCmdEndVideoCodingKHR)load(context, "vkCmdEndVideoCodingKHR");
  932. vkCreateVideoSessionKHR = (PFN_vkCreateVideoSessionKHR)load(context, "vkCreateVideoSessionKHR");
  933. vkCreateVideoSessionParametersKHR = (PFN_vkCreateVideoSessionParametersKHR)load(context, "vkCreateVideoSessionParametersKHR");
  934. vkDestroyVideoSessionKHR = (PFN_vkDestroyVideoSessionKHR)load(context, "vkDestroyVideoSessionKHR");
  935. vkDestroyVideoSessionParametersKHR = (PFN_vkDestroyVideoSessionParametersKHR)load(context, "vkDestroyVideoSessionParametersKHR");
  936. vkGetVideoSessionMemoryRequirementsKHR = (PFN_vkGetVideoSessionMemoryRequirementsKHR)load(context, "vkGetVideoSessionMemoryRequirementsKHR");
  937. vkUpdateVideoSessionParametersKHR = (PFN_vkUpdateVideoSessionParametersKHR)load(context, "vkUpdateVideoSessionParametersKHR");
  938. #endif /* defined(VK_KHR_video_queue) */
  939. #if defined(VK_NVX_binary_import)
  940. vkCmdCuLaunchKernelNVX = (PFN_vkCmdCuLaunchKernelNVX)load(context, "vkCmdCuLaunchKernelNVX");
  941. vkCreateCuFunctionNVX = (PFN_vkCreateCuFunctionNVX)load(context, "vkCreateCuFunctionNVX");
  942. vkCreateCuModuleNVX = (PFN_vkCreateCuModuleNVX)load(context, "vkCreateCuModuleNVX");
  943. vkDestroyCuFunctionNVX = (PFN_vkDestroyCuFunctionNVX)load(context, "vkDestroyCuFunctionNVX");
  944. vkDestroyCuModuleNVX = (PFN_vkDestroyCuModuleNVX)load(context, "vkDestroyCuModuleNVX");
  945. #endif /* defined(VK_NVX_binary_import) */
  946. #if defined(VK_NVX_image_view_handle)
  947. vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)load(context, "vkGetImageViewAddressNVX");
  948. vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)load(context, "vkGetImageViewHandleNVX");
  949. #endif /* defined(VK_NVX_image_view_handle) */
  950. #if defined(VK_NV_clip_space_w_scaling)
  951. vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)load(context, "vkCmdSetViewportWScalingNV");
  952. #endif /* defined(VK_NV_clip_space_w_scaling) */
  953. #if defined(VK_NV_device_diagnostic_checkpoints)
  954. vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)load(context, "vkCmdSetCheckpointNV");
  955. vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)load(context, "vkGetQueueCheckpointDataNV");
  956. #endif /* defined(VK_NV_device_diagnostic_checkpoints) */
  957. #if defined(VK_NV_device_generated_commands)
  958. vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)load(context, "vkCmdBindPipelineShaderGroupNV");
  959. vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)load(context, "vkCmdExecuteGeneratedCommandsNV");
  960. vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)load(context, "vkCmdPreprocessGeneratedCommandsNV");
  961. vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)load(context, "vkCreateIndirectCommandsLayoutNV");
  962. vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)load(context, "vkDestroyIndirectCommandsLayoutNV");
  963. vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)load(context, "vkGetGeneratedCommandsMemoryRequirementsNV");
  964. #endif /* defined(VK_NV_device_generated_commands) */
  965. #if defined(VK_NV_external_memory_rdma)
  966. vkGetMemoryRemoteAddressNV = (PFN_vkGetMemoryRemoteAddressNV)load(context, "vkGetMemoryRemoteAddressNV");
  967. #endif /* defined(VK_NV_external_memory_rdma) */
  968. #if defined(VK_NV_external_memory_win32)
  969. vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)load(context, "vkGetMemoryWin32HandleNV");
  970. #endif /* defined(VK_NV_external_memory_win32) */
  971. #if defined(VK_NV_fragment_shading_rate_enums)
  972. vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)load(context, "vkCmdSetFragmentShadingRateEnumNV");
  973. #endif /* defined(VK_NV_fragment_shading_rate_enums) */
  974. #if defined(VK_NV_mesh_shader)
  975. vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)load(context, "vkCmdDrawMeshTasksIndirectCountNV");
  976. vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)load(context, "vkCmdDrawMeshTasksIndirectNV");
  977. vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)load(context, "vkCmdDrawMeshTasksNV");
  978. #endif /* defined(VK_NV_mesh_shader) */
  979. #if defined(VK_NV_optical_flow)
  980. vkBindOpticalFlowSessionImageNV = (PFN_vkBindOpticalFlowSessionImageNV)load(context, "vkBindOpticalFlowSessionImageNV");
  981. vkCmdOpticalFlowExecuteNV = (PFN_vkCmdOpticalFlowExecuteNV)load(context, "vkCmdOpticalFlowExecuteNV");
  982. vkCreateOpticalFlowSessionNV = (PFN_vkCreateOpticalFlowSessionNV)load(context, "vkCreateOpticalFlowSessionNV");
  983. vkDestroyOpticalFlowSessionNV = (PFN_vkDestroyOpticalFlowSessionNV)load(context, "vkDestroyOpticalFlowSessionNV");
  984. #endif /* defined(VK_NV_optical_flow) */
  985. #if defined(VK_NV_ray_tracing)
  986. vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)load(context, "vkBindAccelerationStructureMemoryNV");
  987. vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)load(context, "vkCmdBuildAccelerationStructureNV");
  988. vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)load(context, "vkCmdCopyAccelerationStructureNV");
  989. vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)load(context, "vkCmdTraceRaysNV");
  990. vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)load(context, "vkCmdWriteAccelerationStructuresPropertiesNV");
  991. vkCompileDeferredNV = (PFN_vkCompileDeferredNV)load(context, "vkCompileDeferredNV");
  992. vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)load(context, "vkCreateAccelerationStructureNV");
  993. vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)load(context, "vkCreateRayTracingPipelinesNV");
  994. vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)load(context, "vkDestroyAccelerationStructureNV");
  995. vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)load(context, "vkGetAccelerationStructureHandleNV");
  996. vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)load(context, "vkGetAccelerationStructureMemoryRequirementsNV");
  997. vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)load(context, "vkGetRayTracingShaderGroupHandlesNV");
  998. #endif /* defined(VK_NV_ray_tracing) */
  999. #if defined(VK_NV_scissor_exclusive)
  1000. vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)load(context, "vkCmdSetExclusiveScissorNV");
  1001. #endif /* defined(VK_NV_scissor_exclusive) */
  1002. #if defined(VK_NV_shading_rate_image)
  1003. vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)load(context, "vkCmdBindShadingRateImageNV");
  1004. vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)load(context, "vkCmdSetCoarseSampleOrderNV");
  1005. vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)load(context, "vkCmdSetViewportShadingRatePaletteNV");
  1006. #endif /* defined(VK_NV_shading_rate_image) */
  1007. #if defined(VK_QCOM_tile_properties)
  1008. vkGetDynamicRenderingTilePropertiesQCOM = (PFN_vkGetDynamicRenderingTilePropertiesQCOM)load(context, "vkGetDynamicRenderingTilePropertiesQCOM");
  1009. vkGetFramebufferTilePropertiesQCOM = (PFN_vkGetFramebufferTilePropertiesQCOM)load(context, "vkGetFramebufferTilePropertiesQCOM");
  1010. #endif /* defined(VK_QCOM_tile_properties) */
  1011. #if defined(VK_VALVE_descriptor_set_host_mapping)
  1012. vkGetDescriptorSetHostMappingVALVE = (PFN_vkGetDescriptorSetHostMappingVALVE)load(context, "vkGetDescriptorSetHostMappingVALVE");
  1013. vkGetDescriptorSetLayoutHostMappingInfoVALVE = (PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE)load(context, "vkGetDescriptorSetLayoutHostMappingInfoVALVE");
  1014. #endif /* defined(VK_VALVE_descriptor_set_host_mapping) */
  1015. #if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
  1016. vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)load(context, "vkGetDeviceGroupSurfacePresentModes2EXT");
  1017. #endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
  1018. #if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
  1019. vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)load(context, "vkCmdPushDescriptorSetWithTemplateKHR");
  1020. #endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
  1021. #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
  1022. vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)load(context, "vkGetDeviceGroupPresentCapabilitiesKHR");
  1023. vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)load(context, "vkGetDeviceGroupSurfacePresentModesKHR");
  1024. #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
  1025. #if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
  1026. vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)load(context, "vkAcquireNextImage2KHR");
  1027. #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
  1028. /* VOLK_GENERATE_LOAD_DEVICE */
  1029. }
  1030. static void volkGenLoadDeviceTable(struct VolkDeviceTable* table, void* context, PFN_vkVoidFunction (*load)(void*, const char*))
  1031. {
  1032. /* VOLK_GENERATE_LOAD_DEVICE_TABLE */
  1033. #if defined(VK_VERSION_1_0)
  1034. table->vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)load(context, "vkAllocateCommandBuffers");
  1035. table->vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)load(context, "vkAllocateDescriptorSets");
  1036. table->vkAllocateMemory = (PFN_vkAllocateMemory)load(context, "vkAllocateMemory");
  1037. table->vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)load(context, "vkBeginCommandBuffer");
  1038. table->vkBindBufferMemory = (PFN_vkBindBufferMemory)load(context, "vkBindBufferMemory");
  1039. table->vkBindImageMemory = (PFN_vkBindImageMemory)load(context, "vkBindImageMemory");
  1040. table->vkCmdBeginQuery = (PFN_vkCmdBeginQuery)load(context, "vkCmdBeginQuery");
  1041. table->vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)load(context, "vkCmdBeginRenderPass");
  1042. table->vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)load(context, "vkCmdBindDescriptorSets");
  1043. table->vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)load(context, "vkCmdBindIndexBuffer");
  1044. table->vkCmdBindPipeline = (PFN_vkCmdBindPipeline)load(context, "vkCmdBindPipeline");
  1045. table->vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)load(context, "vkCmdBindVertexBuffers");
  1046. table->vkCmdBlitImage = (PFN_vkCmdBlitImage)load(context, "vkCmdBlitImage");
  1047. table->vkCmdClearAttachments = (PFN_vkCmdClearAttachments)load(context, "vkCmdClearAttachments");
  1048. table->vkCmdClearColorImage = (PFN_vkCmdClearColorImage)load(context, "vkCmdClearColorImage");
  1049. table->vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)load(context, "vkCmdClearDepthStencilImage");
  1050. table->vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)load(context, "vkCmdCopyBuffer");
  1051. table->vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)load(context, "vkCmdCopyBufferToImage");
  1052. table->vkCmdCopyImage = (PFN_vkCmdCopyImage)load(context, "vkCmdCopyImage");
  1053. table->vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)load(context, "vkCmdCopyImageToBuffer");
  1054. table->vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)load(context, "vkCmdCopyQueryPoolResults");
  1055. table->vkCmdDispatch = (PFN_vkCmdDispatch)load(context, "vkCmdDispatch");
  1056. table->vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)load(context, "vkCmdDispatchIndirect");
  1057. table->vkCmdDraw = (PFN_vkCmdDraw)load(context, "vkCmdDraw");
  1058. table->vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)load(context, "vkCmdDrawIndexed");
  1059. table->vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)load(context, "vkCmdDrawIndexedIndirect");
  1060. table->vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)load(context, "vkCmdDrawIndirect");
  1061. table->vkCmdEndQuery = (PFN_vkCmdEndQuery)load(context, "vkCmdEndQuery");
  1062. table->vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)load(context, "vkCmdEndRenderPass");
  1063. table->vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)load(context, "vkCmdExecuteCommands");
  1064. table->vkCmdFillBuffer = (PFN_vkCmdFillBuffer)load(context, "vkCmdFillBuffer");
  1065. table->vkCmdNextSubpass = (PFN_vkCmdNextSubpass)load(context, "vkCmdNextSubpass");
  1066. table->vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)load(context, "vkCmdPipelineBarrier");
  1067. table->vkCmdPushConstants = (PFN_vkCmdPushConstants)load(context, "vkCmdPushConstants");
  1068. table->vkCmdResetEvent = (PFN_vkCmdResetEvent)load(context, "vkCmdResetEvent");
  1069. table->vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)load(context, "vkCmdResetQueryPool");
  1070. table->vkCmdResolveImage = (PFN_vkCmdResolveImage)load(context, "vkCmdResolveImage");
  1071. table->vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)load(context, "vkCmdSetBlendConstants");
  1072. table->vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)load(context, "vkCmdSetDepthBias");
  1073. table->vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)load(context, "vkCmdSetDepthBounds");
  1074. table->vkCmdSetEvent = (PFN_vkCmdSetEvent)load(context, "vkCmdSetEvent");
  1075. table->vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)load(context, "vkCmdSetLineWidth");
  1076. table->vkCmdSetScissor = (PFN_vkCmdSetScissor)load(context, "vkCmdSetScissor");
  1077. table->vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)load(context, "vkCmdSetStencilCompareMask");
  1078. table->vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)load(context, "vkCmdSetStencilReference");
  1079. table->vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)load(context, "vkCmdSetStencilWriteMask");
  1080. table->vkCmdSetViewport = (PFN_vkCmdSetViewport)load(context, "vkCmdSetViewport");
  1081. table->vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)load(context, "vkCmdUpdateBuffer");
  1082. table->vkCmdWaitEvents = (PFN_vkCmdWaitEvents)load(context, "vkCmdWaitEvents");
  1083. table->vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)load(context, "vkCmdWriteTimestamp");
  1084. table->vkCreateBuffer = (PFN_vkCreateBuffer)load(context, "vkCreateBuffer");
  1085. table->vkCreateBufferView = (PFN_vkCreateBufferView)load(context, "vkCreateBufferView");
  1086. table->vkCreateCommandPool = (PFN_vkCreateCommandPool)load(context, "vkCreateCommandPool");
  1087. table->vkCreateComputePipelines = (PFN_vkCreateComputePipelines)load(context, "vkCreateComputePipelines");
  1088. table->vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)load(context, "vkCreateDescriptorPool");
  1089. table->vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)load(context, "vkCreateDescriptorSetLayout");
  1090. table->vkCreateEvent = (PFN_vkCreateEvent)load(context, "vkCreateEvent");
  1091. table->vkCreateFence = (PFN_vkCreateFence)load(context, "vkCreateFence");
  1092. table->vkCreateFramebuffer = (PFN_vkCreateFramebuffer)load(context, "vkCreateFramebuffer");
  1093. table->vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)load(context, "vkCreateGraphicsPipelines");
  1094. table->vkCreateImage = (PFN_vkCreateImage)load(context, "vkCreateImage");
  1095. table->vkCreateImageView = (PFN_vkCreateImageView)load(context, "vkCreateImageView");
  1096. table->vkCreatePipelineCache = (PFN_vkCreatePipelineCache)load(context, "vkCreatePipelineCache");
  1097. table->vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)load(context, "vkCreatePipelineLayout");
  1098. table->vkCreateQueryPool = (PFN_vkCreateQueryPool)load(context, "vkCreateQueryPool");
  1099. table->vkCreateRenderPass = (PFN_vkCreateRenderPass)load(context, "vkCreateRenderPass");
  1100. table->vkCreateSampler = (PFN_vkCreateSampler)load(context, "vkCreateSampler");
  1101. table->vkCreateSemaphore = (PFN_vkCreateSemaphore)load(context, "vkCreateSemaphore");
  1102. table->vkCreateShaderModule = (PFN_vkCreateShaderModule)load(context, "vkCreateShaderModule");
  1103. table->vkDestroyBuffer = (PFN_vkDestroyBuffer)load(context, "vkDestroyBuffer");
  1104. table->vkDestroyBufferView = (PFN_vkDestroyBufferView)load(context, "vkDestroyBufferView");
  1105. table->vkDestroyCommandPool = (PFN_vkDestroyCommandPool)load(context, "vkDestroyCommandPool");
  1106. table->vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)load(context, "vkDestroyDescriptorPool");
  1107. table->vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)load(context, "vkDestroyDescriptorSetLayout");
  1108. table->vkDestroyDevice = (PFN_vkDestroyDevice)load(context, "vkDestroyDevice");
  1109. table->vkDestroyEvent = (PFN_vkDestroyEvent)load(context, "vkDestroyEvent");
  1110. table->vkDestroyFence = (PFN_vkDestroyFence)load(context, "vkDestroyFence");
  1111. table->vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)load(context, "vkDestroyFramebuffer");
  1112. table->vkDestroyImage = (PFN_vkDestroyImage)load(context, "vkDestroyImage");
  1113. table->vkDestroyImageView = (PFN_vkDestroyImageView)load(context, "vkDestroyImageView");
  1114. table->vkDestroyPipeline = (PFN_vkDestroyPipeline)load(context, "vkDestroyPipeline");
  1115. table->vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)load(context, "vkDestroyPipelineCache");
  1116. table->vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)load(context, "vkDestroyPipelineLayout");
  1117. table->vkDestroyQueryPool = (PFN_vkDestroyQueryPool)load(context, "vkDestroyQueryPool");
  1118. table->vkDestroyRenderPass = (PFN_vkDestroyRenderPass)load(context, "vkDestroyRenderPass");
  1119. table->vkDestroySampler = (PFN_vkDestroySampler)load(context, "vkDestroySampler");
  1120. table->vkDestroySemaphore = (PFN_vkDestroySemaphore)load(context, "vkDestroySemaphore");
  1121. table->vkDestroyShaderModule = (PFN_vkDestroyShaderModule)load(context, "vkDestroyShaderModule");
  1122. table->vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)load(context, "vkDeviceWaitIdle");
  1123. table->vkEndCommandBuffer = (PFN_vkEndCommandBuffer)load(context, "vkEndCommandBuffer");
  1124. table->vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)load(context, "vkFlushMappedMemoryRanges");
  1125. table->vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)load(context, "vkFreeCommandBuffers");
  1126. table->vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)load(context, "vkFreeDescriptorSets");
  1127. table->vkFreeMemory = (PFN_vkFreeMemory)load(context, "vkFreeMemory");
  1128. table->vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)load(context, "vkGetBufferMemoryRequirements");
  1129. table->vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)load(context, "vkGetDeviceMemoryCommitment");
  1130. table->vkGetDeviceQueue = (PFN_vkGetDeviceQueue)load(context, "vkGetDeviceQueue");
  1131. table->vkGetEventStatus = (PFN_vkGetEventStatus)load(context, "vkGetEventStatus");
  1132. table->vkGetFenceStatus = (PFN_vkGetFenceStatus)load(context, "vkGetFenceStatus");
  1133. table->vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)load(context, "vkGetImageMemoryRequirements");
  1134. table->vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)load(context, "vkGetImageSparseMemoryRequirements");
  1135. table->vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)load(context, "vkGetImageSubresourceLayout");
  1136. table->vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)load(context, "vkGetPipelineCacheData");
  1137. table->vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)load(context, "vkGetQueryPoolResults");
  1138. table->vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)load(context, "vkGetRenderAreaGranularity");
  1139. table->vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)load(context, "vkInvalidateMappedMemoryRanges");
  1140. table->vkMapMemory = (PFN_vkMapMemory)load(context, "vkMapMemory");
  1141. table->vkMergePipelineCaches = (PFN_vkMergePipelineCaches)load(context, "vkMergePipelineCaches");
  1142. table->vkQueueBindSparse = (PFN_vkQueueBindSparse)load(context, "vkQueueBindSparse");
  1143. table->vkQueueSubmit = (PFN_vkQueueSubmit)load(context, "vkQueueSubmit");
  1144. table->vkQueueWaitIdle = (PFN_vkQueueWaitIdle)load(context, "vkQueueWaitIdle");
  1145. table->vkResetCommandBuffer = (PFN_vkResetCommandBuffer)load(context, "vkResetCommandBuffer");
  1146. table->vkResetCommandPool = (PFN_vkResetCommandPool)load(context, "vkResetCommandPool");
  1147. table->vkResetDescriptorPool = (PFN_vkResetDescriptorPool)load(context, "vkResetDescriptorPool");
  1148. table->vkResetEvent = (PFN_vkResetEvent)load(context, "vkResetEvent");
  1149. table->vkResetFences = (PFN_vkResetFences)load(context, "vkResetFences");
  1150. table->vkSetEvent = (PFN_vkSetEvent)load(context, "vkSetEvent");
  1151. table->vkUnmapMemory = (PFN_vkUnmapMemory)load(context, "vkUnmapMemory");
  1152. table->vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)load(context, "vkUpdateDescriptorSets");
  1153. table->vkWaitForFences = (PFN_vkWaitForFences)load(context, "vkWaitForFences");
  1154. #endif /* defined(VK_VERSION_1_0) */
  1155. #if defined(VK_VERSION_1_1)
  1156. table->vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)load(context, "vkBindBufferMemory2");
  1157. table->vkBindImageMemory2 = (PFN_vkBindImageMemory2)load(context, "vkBindImageMemory2");
  1158. table->vkCmdDispatchBase = (PFN_vkCmdDispatchBase)load(context, "vkCmdDispatchBase");
  1159. table->vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)load(context, "vkCmdSetDeviceMask");
  1160. table->vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)load(context, "vkCreateDescriptorUpdateTemplate");
  1161. table->vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)load(context, "vkCreateSamplerYcbcrConversion");
  1162. table->vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)load(context, "vkDestroyDescriptorUpdateTemplate");
  1163. table->vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)load(context, "vkDestroySamplerYcbcrConversion");
  1164. table->vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)load(context, "vkGetBufferMemoryRequirements2");
  1165. table->vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)load(context, "vkGetDescriptorSetLayoutSupport");
  1166. table->vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)load(context, "vkGetDeviceGroupPeerMemoryFeatures");
  1167. table->vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)load(context, "vkGetDeviceQueue2");
  1168. table->vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)load(context, "vkGetImageMemoryRequirements2");
  1169. table->vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)load(context, "vkGetImageSparseMemoryRequirements2");
  1170. table->vkTrimCommandPool = (PFN_vkTrimCommandPool)load(context, "vkTrimCommandPool");
  1171. table->vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)load(context, "vkUpdateDescriptorSetWithTemplate");
  1172. #endif /* defined(VK_VERSION_1_1) */
  1173. #if defined(VK_VERSION_1_2)
  1174. table->vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)load(context, "vkCmdBeginRenderPass2");
  1175. table->vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)load(context, "vkCmdDrawIndexedIndirectCount");
  1176. table->vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)load(context, "vkCmdDrawIndirectCount");
  1177. table->vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)load(context, "vkCmdEndRenderPass2");
  1178. table->vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)load(context, "vkCmdNextSubpass2");
  1179. table->vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)load(context, "vkCreateRenderPass2");
  1180. table->vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)load(context, "vkGetBufferDeviceAddress");
  1181. table->vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)load(context, "vkGetBufferOpaqueCaptureAddress");
  1182. table->vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)load(context, "vkGetDeviceMemoryOpaqueCaptureAddress");
  1183. table->vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)load(context, "vkGetSemaphoreCounterValue");
  1184. table->vkResetQueryPool = (PFN_vkResetQueryPool)load(context, "vkResetQueryPool");
  1185. table->vkSignalSemaphore = (PFN_vkSignalSemaphore)load(context, "vkSignalSemaphore");
  1186. table->vkWaitSemaphores = (PFN_vkWaitSemaphores)load(context, "vkWaitSemaphores");
  1187. #endif /* defined(VK_VERSION_1_2) */
  1188. #if defined(VK_VERSION_1_3)
  1189. table->vkCmdBeginRendering = (PFN_vkCmdBeginRendering)load(context, "vkCmdBeginRendering");
  1190. table->vkCmdBindVertexBuffers2 = (PFN_vkCmdBindVertexBuffers2)load(context, "vkCmdBindVertexBuffers2");
  1191. table->vkCmdBlitImage2 = (PFN_vkCmdBlitImage2)load(context, "vkCmdBlitImage2");
  1192. table->vkCmdCopyBuffer2 = (PFN_vkCmdCopyBuffer2)load(context, "vkCmdCopyBuffer2");
  1193. table->vkCmdCopyBufferToImage2 = (PFN_vkCmdCopyBufferToImage2)load(context, "vkCmdCopyBufferToImage2");
  1194. table->vkCmdCopyImage2 = (PFN_vkCmdCopyImage2)load(context, "vkCmdCopyImage2");
  1195. table->vkCmdCopyImageToBuffer2 = (PFN_vkCmdCopyImageToBuffer2)load(context, "vkCmdCopyImageToBuffer2");
  1196. table->vkCmdEndRendering = (PFN_vkCmdEndRendering)load(context, "vkCmdEndRendering");
  1197. table->vkCmdPipelineBarrier2 = (PFN_vkCmdPipelineBarrier2)load(context, "vkCmdPipelineBarrier2");
  1198. table->vkCmdResetEvent2 = (PFN_vkCmdResetEvent2)load(context, "vkCmdResetEvent2");
  1199. table->vkCmdResolveImage2 = (PFN_vkCmdResolveImage2)load(context, "vkCmdResolveImage2");
  1200. table->vkCmdSetCullMode = (PFN_vkCmdSetCullMode)load(context, "vkCmdSetCullMode");
  1201. table->vkCmdSetDepthBiasEnable = (PFN_vkCmdSetDepthBiasEnable)load(context, "vkCmdSetDepthBiasEnable");
  1202. table->vkCmdSetDepthBoundsTestEnable = (PFN_vkCmdSetDepthBoundsTestEnable)load(context, "vkCmdSetDepthBoundsTestEnable");
  1203. table->vkCmdSetDepthCompareOp = (PFN_vkCmdSetDepthCompareOp)load(context, "vkCmdSetDepthCompareOp");
  1204. table->vkCmdSetDepthTestEnable = (PFN_vkCmdSetDepthTestEnable)load(context, "vkCmdSetDepthTestEnable");
  1205. table->vkCmdSetDepthWriteEnable = (PFN_vkCmdSetDepthWriteEnable)load(context, "vkCmdSetDepthWriteEnable");
  1206. table->vkCmdSetEvent2 = (PFN_vkCmdSetEvent2)load(context, "vkCmdSetEvent2");
  1207. table->vkCmdSetFrontFace = (PFN_vkCmdSetFrontFace)load(context, "vkCmdSetFrontFace");
  1208. table->vkCmdSetPrimitiveRestartEnable = (PFN_vkCmdSetPrimitiveRestartEnable)load(context, "vkCmdSetPrimitiveRestartEnable");
  1209. table->vkCmdSetPrimitiveTopology = (PFN_vkCmdSetPrimitiveTopology)load(context, "vkCmdSetPrimitiveTopology");
  1210. table->vkCmdSetRasterizerDiscardEnable = (PFN_vkCmdSetRasterizerDiscardEnable)load(context, "vkCmdSetRasterizerDiscardEnable");
  1211. table->vkCmdSetScissorWithCount = (PFN_vkCmdSetScissorWithCount)load(context, "vkCmdSetScissorWithCount");
  1212. table->vkCmdSetStencilOp = (PFN_vkCmdSetStencilOp)load(context, "vkCmdSetStencilOp");
  1213. table->vkCmdSetStencilTestEnable = (PFN_vkCmdSetStencilTestEnable)load(context, "vkCmdSetStencilTestEnable");
  1214. table->vkCmdSetViewportWithCount = (PFN_vkCmdSetViewportWithCount)load(context, "vkCmdSetViewportWithCount");
  1215. table->vkCmdWaitEvents2 = (PFN_vkCmdWaitEvents2)load(context, "vkCmdWaitEvents2");
  1216. table->vkCmdWriteTimestamp2 = (PFN_vkCmdWriteTimestamp2)load(context, "vkCmdWriteTimestamp2");
  1217. table->vkCreatePrivateDataSlot = (PFN_vkCreatePrivateDataSlot)load(context, "vkCreatePrivateDataSlot");
  1218. table->vkDestroyPrivateDataSlot = (PFN_vkDestroyPrivateDataSlot)load(context, "vkDestroyPrivateDataSlot");
  1219. table->vkGetDeviceBufferMemoryRequirements = (PFN_vkGetDeviceBufferMemoryRequirements)load(context, "vkGetDeviceBufferMemoryRequirements");
  1220. table->vkGetDeviceImageMemoryRequirements = (PFN_vkGetDeviceImageMemoryRequirements)load(context, "vkGetDeviceImageMemoryRequirements");
  1221. table->vkGetDeviceImageSparseMemoryRequirements = (PFN_vkGetDeviceImageSparseMemoryRequirements)load(context, "vkGetDeviceImageSparseMemoryRequirements");
  1222. table->vkGetPrivateData = (PFN_vkGetPrivateData)load(context, "vkGetPrivateData");
  1223. table->vkQueueSubmit2 = (PFN_vkQueueSubmit2)load(context, "vkQueueSubmit2");
  1224. table->vkSetPrivateData = (PFN_vkSetPrivateData)load(context, "vkSetPrivateData");
  1225. #endif /* defined(VK_VERSION_1_3) */
  1226. #if defined(VK_AMD_buffer_marker)
  1227. table->vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)load(context, "vkCmdWriteBufferMarkerAMD");
  1228. #endif /* defined(VK_AMD_buffer_marker) */
  1229. #if defined(VK_AMD_display_native_hdr)
  1230. table->vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)load(context, "vkSetLocalDimmingAMD");
  1231. #endif /* defined(VK_AMD_display_native_hdr) */
  1232. #if defined(VK_AMD_draw_indirect_count)
  1233. table->vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)load(context, "vkCmdDrawIndexedIndirectCountAMD");
  1234. table->vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)load(context, "vkCmdDrawIndirectCountAMD");
  1235. #endif /* defined(VK_AMD_draw_indirect_count) */
  1236. #if defined(VK_AMD_shader_info)
  1237. table->vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)load(context, "vkGetShaderInfoAMD");
  1238. #endif /* defined(VK_AMD_shader_info) */
  1239. #if defined(VK_ANDROID_external_memory_android_hardware_buffer)
  1240. table->vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)load(context, "vkGetAndroidHardwareBufferPropertiesANDROID");
  1241. table->vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)load(context, "vkGetMemoryAndroidHardwareBufferANDROID");
  1242. #endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
  1243. #if defined(VK_EXT_buffer_device_address)
  1244. table->vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)load(context, "vkGetBufferDeviceAddressEXT");
  1245. #endif /* defined(VK_EXT_buffer_device_address) */
  1246. #if defined(VK_EXT_calibrated_timestamps)
  1247. table->vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)load(context, "vkGetCalibratedTimestampsEXT");
  1248. #endif /* defined(VK_EXT_calibrated_timestamps) */
  1249. #if defined(VK_EXT_color_write_enable)
  1250. table->vkCmdSetColorWriteEnableEXT = (PFN_vkCmdSetColorWriteEnableEXT)load(context, "vkCmdSetColorWriteEnableEXT");
  1251. #endif /* defined(VK_EXT_color_write_enable) */
  1252. #if defined(VK_EXT_conditional_rendering)
  1253. table->vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)load(context, "vkCmdBeginConditionalRenderingEXT");
  1254. table->vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)load(context, "vkCmdEndConditionalRenderingEXT");
  1255. #endif /* defined(VK_EXT_conditional_rendering) */
  1256. #if defined(VK_EXT_debug_marker)
  1257. table->vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)load(context, "vkCmdDebugMarkerBeginEXT");
  1258. table->vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)load(context, "vkCmdDebugMarkerEndEXT");
  1259. table->vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)load(context, "vkCmdDebugMarkerInsertEXT");
  1260. table->vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)load(context, "vkDebugMarkerSetObjectNameEXT");
  1261. table->vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)load(context, "vkDebugMarkerSetObjectTagEXT");
  1262. #endif /* defined(VK_EXT_debug_marker) */
  1263. #if defined(VK_EXT_device_fault)
  1264. table->vkGetDeviceFaultInfoEXT = (PFN_vkGetDeviceFaultInfoEXT)load(context, "vkGetDeviceFaultInfoEXT");
  1265. #endif /* defined(VK_EXT_device_fault) */
  1266. #if defined(VK_EXT_discard_rectangles)
  1267. table->vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)load(context, "vkCmdSetDiscardRectangleEXT");
  1268. #endif /* defined(VK_EXT_discard_rectangles) */
  1269. #if defined(VK_EXT_display_control)
  1270. table->vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)load(context, "vkDisplayPowerControlEXT");
  1271. table->vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)load(context, "vkGetSwapchainCounterEXT");
  1272. table->vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)load(context, "vkRegisterDeviceEventEXT");
  1273. table->vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)load(context, "vkRegisterDisplayEventEXT");
  1274. #endif /* defined(VK_EXT_display_control) */
  1275. #if defined(VK_EXT_extended_dynamic_state)
  1276. table->vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)load(context, "vkCmdBindVertexBuffers2EXT");
  1277. table->vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)load(context, "vkCmdSetCullModeEXT");
  1278. table->vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)load(context, "vkCmdSetDepthBoundsTestEnableEXT");
  1279. table->vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)load(context, "vkCmdSetDepthCompareOpEXT");
  1280. table->vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)load(context, "vkCmdSetDepthTestEnableEXT");
  1281. table->vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)load(context, "vkCmdSetDepthWriteEnableEXT");
  1282. table->vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)load(context, "vkCmdSetFrontFaceEXT");
  1283. table->vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)load(context, "vkCmdSetPrimitiveTopologyEXT");
  1284. table->vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)load(context, "vkCmdSetScissorWithCountEXT");
  1285. table->vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)load(context, "vkCmdSetStencilOpEXT");
  1286. table->vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)load(context, "vkCmdSetStencilTestEnableEXT");
  1287. table->vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)load(context, "vkCmdSetViewportWithCountEXT");
  1288. #endif /* defined(VK_EXT_extended_dynamic_state) */
  1289. #if defined(VK_EXT_extended_dynamic_state2)
  1290. table->vkCmdSetDepthBiasEnableEXT = (PFN_vkCmdSetDepthBiasEnableEXT)load(context, "vkCmdSetDepthBiasEnableEXT");
  1291. table->vkCmdSetLogicOpEXT = (PFN_vkCmdSetLogicOpEXT)load(context, "vkCmdSetLogicOpEXT");
  1292. table->vkCmdSetPatchControlPointsEXT = (PFN_vkCmdSetPatchControlPointsEXT)load(context, "vkCmdSetPatchControlPointsEXT");
  1293. table->vkCmdSetPrimitiveRestartEnableEXT = (PFN_vkCmdSetPrimitiveRestartEnableEXT)load(context, "vkCmdSetPrimitiveRestartEnableEXT");
  1294. table->vkCmdSetRasterizerDiscardEnableEXT = (PFN_vkCmdSetRasterizerDiscardEnableEXT)load(context, "vkCmdSetRasterizerDiscardEnableEXT");
  1295. #endif /* defined(VK_EXT_extended_dynamic_state2) */
  1296. #if defined(VK_EXT_extended_dynamic_state3)
  1297. table->vkCmdSetAlphaToCoverageEnableEXT = (PFN_vkCmdSetAlphaToCoverageEnableEXT)load(context, "vkCmdSetAlphaToCoverageEnableEXT");
  1298. table->vkCmdSetAlphaToOneEnableEXT = (PFN_vkCmdSetAlphaToOneEnableEXT)load(context, "vkCmdSetAlphaToOneEnableEXT");
  1299. table->vkCmdSetColorBlendAdvancedEXT = (PFN_vkCmdSetColorBlendAdvancedEXT)load(context, "vkCmdSetColorBlendAdvancedEXT");
  1300. table->vkCmdSetColorBlendEnableEXT = (PFN_vkCmdSetColorBlendEnableEXT)load(context, "vkCmdSetColorBlendEnableEXT");
  1301. table->vkCmdSetColorBlendEquationEXT = (PFN_vkCmdSetColorBlendEquationEXT)load(context, "vkCmdSetColorBlendEquationEXT");
  1302. table->vkCmdSetColorWriteMaskEXT = (PFN_vkCmdSetColorWriteMaskEXT)load(context, "vkCmdSetColorWriteMaskEXT");
  1303. table->vkCmdSetConservativeRasterizationModeEXT = (PFN_vkCmdSetConservativeRasterizationModeEXT)load(context, "vkCmdSetConservativeRasterizationModeEXT");
  1304. table->vkCmdSetCoverageModulationModeNV = (PFN_vkCmdSetCoverageModulationModeNV)load(context, "vkCmdSetCoverageModulationModeNV");
  1305. table->vkCmdSetCoverageModulationTableEnableNV = (PFN_vkCmdSetCoverageModulationTableEnableNV)load(context, "vkCmdSetCoverageModulationTableEnableNV");
  1306. table->vkCmdSetCoverageModulationTableNV = (PFN_vkCmdSetCoverageModulationTableNV)load(context, "vkCmdSetCoverageModulationTableNV");
  1307. table->vkCmdSetCoverageReductionModeNV = (PFN_vkCmdSetCoverageReductionModeNV)load(context, "vkCmdSetCoverageReductionModeNV");
  1308. table->vkCmdSetCoverageToColorEnableNV = (PFN_vkCmdSetCoverageToColorEnableNV)load(context, "vkCmdSetCoverageToColorEnableNV");
  1309. table->vkCmdSetCoverageToColorLocationNV = (PFN_vkCmdSetCoverageToColorLocationNV)load(context, "vkCmdSetCoverageToColorLocationNV");
  1310. table->vkCmdSetDepthClampEnableEXT = (PFN_vkCmdSetDepthClampEnableEXT)load(context, "vkCmdSetDepthClampEnableEXT");
  1311. table->vkCmdSetDepthClipEnableEXT = (PFN_vkCmdSetDepthClipEnableEXT)load(context, "vkCmdSetDepthClipEnableEXT");
  1312. table->vkCmdSetDepthClipNegativeOneToOneEXT = (PFN_vkCmdSetDepthClipNegativeOneToOneEXT)load(context, "vkCmdSetDepthClipNegativeOneToOneEXT");
  1313. table->vkCmdSetExtraPrimitiveOverestimationSizeEXT = (PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT)load(context, "vkCmdSetExtraPrimitiveOverestimationSizeEXT");
  1314. table->vkCmdSetLineRasterizationModeEXT = (PFN_vkCmdSetLineRasterizationModeEXT)load(context, "vkCmdSetLineRasterizationModeEXT");
  1315. table->vkCmdSetLineStippleEnableEXT = (PFN_vkCmdSetLineStippleEnableEXT)load(context, "vkCmdSetLineStippleEnableEXT");
  1316. table->vkCmdSetLogicOpEnableEXT = (PFN_vkCmdSetLogicOpEnableEXT)load(context, "vkCmdSetLogicOpEnableEXT");
  1317. table->vkCmdSetPolygonModeEXT = (PFN_vkCmdSetPolygonModeEXT)load(context, "vkCmdSetPolygonModeEXT");
  1318. table->vkCmdSetProvokingVertexModeEXT = (PFN_vkCmdSetProvokingVertexModeEXT)load(context, "vkCmdSetProvokingVertexModeEXT");
  1319. table->vkCmdSetRasterizationSamplesEXT = (PFN_vkCmdSetRasterizationSamplesEXT)load(context, "vkCmdSetRasterizationSamplesEXT");
  1320. table->vkCmdSetRasterizationStreamEXT = (PFN_vkCmdSetRasterizationStreamEXT)load(context, "vkCmdSetRasterizationStreamEXT");
  1321. table->vkCmdSetRepresentativeFragmentTestEnableNV = (PFN_vkCmdSetRepresentativeFragmentTestEnableNV)load(context, "vkCmdSetRepresentativeFragmentTestEnableNV");
  1322. table->vkCmdSetSampleLocationsEnableEXT = (PFN_vkCmdSetSampleLocationsEnableEXT)load(context, "vkCmdSetSampleLocationsEnableEXT");
  1323. table->vkCmdSetSampleMaskEXT = (PFN_vkCmdSetSampleMaskEXT)load(context, "vkCmdSetSampleMaskEXT");
  1324. table->vkCmdSetShadingRateImageEnableNV = (PFN_vkCmdSetShadingRateImageEnableNV)load(context, "vkCmdSetShadingRateImageEnableNV");
  1325. table->vkCmdSetTessellationDomainOriginEXT = (PFN_vkCmdSetTessellationDomainOriginEXT)load(context, "vkCmdSetTessellationDomainOriginEXT");
  1326. table->vkCmdSetViewportSwizzleNV = (PFN_vkCmdSetViewportSwizzleNV)load(context, "vkCmdSetViewportSwizzleNV");
  1327. table->vkCmdSetViewportWScalingEnableNV = (PFN_vkCmdSetViewportWScalingEnableNV)load(context, "vkCmdSetViewportWScalingEnableNV");
  1328. #endif /* defined(VK_EXT_extended_dynamic_state3) */
  1329. #if defined(VK_EXT_external_memory_host)
  1330. table->vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)load(context, "vkGetMemoryHostPointerPropertiesEXT");
  1331. #endif /* defined(VK_EXT_external_memory_host) */
  1332. #if defined(VK_EXT_full_screen_exclusive)
  1333. table->vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)load(context, "vkAcquireFullScreenExclusiveModeEXT");
  1334. table->vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)load(context, "vkReleaseFullScreenExclusiveModeEXT");
  1335. #endif /* defined(VK_EXT_full_screen_exclusive) */
  1336. #if defined(VK_EXT_hdr_metadata)
  1337. table->vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)load(context, "vkSetHdrMetadataEXT");
  1338. #endif /* defined(VK_EXT_hdr_metadata) */
  1339. #if defined(VK_EXT_host_query_reset)
  1340. table->vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)load(context, "vkResetQueryPoolEXT");
  1341. #endif /* defined(VK_EXT_host_query_reset) */
  1342. #if defined(VK_EXT_image_compression_control)
  1343. table->vkGetImageSubresourceLayout2EXT = (PFN_vkGetImageSubresourceLayout2EXT)load(context, "vkGetImageSubresourceLayout2EXT");
  1344. #endif /* defined(VK_EXT_image_compression_control) */
  1345. #if defined(VK_EXT_image_drm_format_modifier)
  1346. table->vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)load(context, "vkGetImageDrmFormatModifierPropertiesEXT");
  1347. #endif /* defined(VK_EXT_image_drm_format_modifier) */
  1348. #if defined(VK_EXT_line_rasterization)
  1349. table->vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)load(context, "vkCmdSetLineStippleEXT");
  1350. #endif /* defined(VK_EXT_line_rasterization) */
  1351. #if defined(VK_EXT_mesh_shader)
  1352. table->vkCmdDrawMeshTasksEXT = (PFN_vkCmdDrawMeshTasksEXT)load(context, "vkCmdDrawMeshTasksEXT");
  1353. table->vkCmdDrawMeshTasksIndirectCountEXT = (PFN_vkCmdDrawMeshTasksIndirectCountEXT)load(context, "vkCmdDrawMeshTasksIndirectCountEXT");
  1354. table->vkCmdDrawMeshTasksIndirectEXT = (PFN_vkCmdDrawMeshTasksIndirectEXT)load(context, "vkCmdDrawMeshTasksIndirectEXT");
  1355. #endif /* defined(VK_EXT_mesh_shader) */
  1356. #if defined(VK_EXT_metal_objects)
  1357. table->vkExportMetalObjectsEXT = (PFN_vkExportMetalObjectsEXT)load(context, "vkExportMetalObjectsEXT");
  1358. #endif /* defined(VK_EXT_metal_objects) */
  1359. #if defined(VK_EXT_multi_draw)
  1360. table->vkCmdDrawMultiEXT = (PFN_vkCmdDrawMultiEXT)load(context, "vkCmdDrawMultiEXT");
  1361. table->vkCmdDrawMultiIndexedEXT = (PFN_vkCmdDrawMultiIndexedEXT)load(context, "vkCmdDrawMultiIndexedEXT");
  1362. #endif /* defined(VK_EXT_multi_draw) */
  1363. #if defined(VK_EXT_opacity_micromap)
  1364. table->vkBuildMicromapsEXT = (PFN_vkBuildMicromapsEXT)load(context, "vkBuildMicromapsEXT");
  1365. table->vkCmdBuildMicromapsEXT = (PFN_vkCmdBuildMicromapsEXT)load(context, "vkCmdBuildMicromapsEXT");
  1366. table->vkCmdCopyMemoryToMicromapEXT = (PFN_vkCmdCopyMemoryToMicromapEXT)load(context, "vkCmdCopyMemoryToMicromapEXT");
  1367. table->vkCmdCopyMicromapEXT = (PFN_vkCmdCopyMicromapEXT)load(context, "vkCmdCopyMicromapEXT");
  1368. table->vkCmdCopyMicromapToMemoryEXT = (PFN_vkCmdCopyMicromapToMemoryEXT)load(context, "vkCmdCopyMicromapToMemoryEXT");
  1369. table->vkCmdWriteMicromapsPropertiesEXT = (PFN_vkCmdWriteMicromapsPropertiesEXT)load(context, "vkCmdWriteMicromapsPropertiesEXT");
  1370. table->vkCopyMemoryToMicromapEXT = (PFN_vkCopyMemoryToMicromapEXT)load(context, "vkCopyMemoryToMicromapEXT");
  1371. table->vkCopyMicromapEXT = (PFN_vkCopyMicromapEXT)load(context, "vkCopyMicromapEXT");
  1372. table->vkCopyMicromapToMemoryEXT = (PFN_vkCopyMicromapToMemoryEXT)load(context, "vkCopyMicromapToMemoryEXT");
  1373. table->vkCreateMicromapEXT = (PFN_vkCreateMicromapEXT)load(context, "vkCreateMicromapEXT");
  1374. table->vkDestroyMicromapEXT = (PFN_vkDestroyMicromapEXT)load(context, "vkDestroyMicromapEXT");
  1375. table->vkGetDeviceMicromapCompatibilityEXT = (PFN_vkGetDeviceMicromapCompatibilityEXT)load(context, "vkGetDeviceMicromapCompatibilityEXT");
  1376. table->vkGetMicromapBuildSizesEXT = (PFN_vkGetMicromapBuildSizesEXT)load(context, "vkGetMicromapBuildSizesEXT");
  1377. table->vkWriteMicromapsPropertiesEXT = (PFN_vkWriteMicromapsPropertiesEXT)load(context, "vkWriteMicromapsPropertiesEXT");
  1378. #endif /* defined(VK_EXT_opacity_micromap) */
  1379. #if defined(VK_EXT_pageable_device_local_memory)
  1380. table->vkSetDeviceMemoryPriorityEXT = (PFN_vkSetDeviceMemoryPriorityEXT)load(context, "vkSetDeviceMemoryPriorityEXT");
  1381. #endif /* defined(VK_EXT_pageable_device_local_memory) */
  1382. #if defined(VK_EXT_pipeline_properties)
  1383. table->vkGetPipelinePropertiesEXT = (PFN_vkGetPipelinePropertiesEXT)load(context, "vkGetPipelinePropertiesEXT");
  1384. #endif /* defined(VK_EXT_pipeline_properties) */
  1385. #if defined(VK_EXT_private_data)
  1386. table->vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)load(context, "vkCreatePrivateDataSlotEXT");
  1387. table->vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)load(context, "vkDestroyPrivateDataSlotEXT");
  1388. table->vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)load(context, "vkGetPrivateDataEXT");
  1389. table->vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)load(context, "vkSetPrivateDataEXT");
  1390. #endif /* defined(VK_EXT_private_data) */
  1391. #if defined(VK_EXT_sample_locations)
  1392. table->vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)load(context, "vkCmdSetSampleLocationsEXT");
  1393. #endif /* defined(VK_EXT_sample_locations) */
  1394. #if defined(VK_EXT_shader_module_identifier)
  1395. table->vkGetShaderModuleCreateInfoIdentifierEXT = (PFN_vkGetShaderModuleCreateInfoIdentifierEXT)load(context, "vkGetShaderModuleCreateInfoIdentifierEXT");
  1396. table->vkGetShaderModuleIdentifierEXT = (PFN_vkGetShaderModuleIdentifierEXT)load(context, "vkGetShaderModuleIdentifierEXT");
  1397. #endif /* defined(VK_EXT_shader_module_identifier) */
  1398. #if defined(VK_EXT_transform_feedback)
  1399. table->vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)load(context, "vkCmdBeginQueryIndexedEXT");
  1400. table->vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)load(context, "vkCmdBeginTransformFeedbackEXT");
  1401. table->vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)load(context, "vkCmdBindTransformFeedbackBuffersEXT");
  1402. table->vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)load(context, "vkCmdDrawIndirectByteCountEXT");
  1403. table->vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)load(context, "vkCmdEndQueryIndexedEXT");
  1404. table->vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)load(context, "vkCmdEndTransformFeedbackEXT");
  1405. #endif /* defined(VK_EXT_transform_feedback) */
  1406. #if defined(VK_EXT_validation_cache)
  1407. table->vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)load(context, "vkCreateValidationCacheEXT");
  1408. table->vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)load(context, "vkDestroyValidationCacheEXT");
  1409. table->vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)load(context, "vkGetValidationCacheDataEXT");
  1410. table->vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)load(context, "vkMergeValidationCachesEXT");
  1411. #endif /* defined(VK_EXT_validation_cache) */
  1412. #if defined(VK_EXT_vertex_input_dynamic_state)
  1413. table->vkCmdSetVertexInputEXT = (PFN_vkCmdSetVertexInputEXT)load(context, "vkCmdSetVertexInputEXT");
  1414. #endif /* defined(VK_EXT_vertex_input_dynamic_state) */
  1415. #if defined(VK_FUCHSIA_buffer_collection)
  1416. table->vkCreateBufferCollectionFUCHSIA = (PFN_vkCreateBufferCollectionFUCHSIA)load(context, "vkCreateBufferCollectionFUCHSIA");
  1417. table->vkDestroyBufferCollectionFUCHSIA = (PFN_vkDestroyBufferCollectionFUCHSIA)load(context, "vkDestroyBufferCollectionFUCHSIA");
  1418. table->vkGetBufferCollectionPropertiesFUCHSIA = (PFN_vkGetBufferCollectionPropertiesFUCHSIA)load(context, "vkGetBufferCollectionPropertiesFUCHSIA");
  1419. table->vkSetBufferCollectionBufferConstraintsFUCHSIA = (PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA)load(context, "vkSetBufferCollectionBufferConstraintsFUCHSIA");
  1420. table->vkSetBufferCollectionImageConstraintsFUCHSIA = (PFN_vkSetBufferCollectionImageConstraintsFUCHSIA)load(context, "vkSetBufferCollectionImageConstraintsFUCHSIA");
  1421. #endif /* defined(VK_FUCHSIA_buffer_collection) */
  1422. #if defined(VK_FUCHSIA_external_memory)
  1423. table->vkGetMemoryZirconHandleFUCHSIA = (PFN_vkGetMemoryZirconHandleFUCHSIA)load(context, "vkGetMemoryZirconHandleFUCHSIA");
  1424. table->vkGetMemoryZirconHandlePropertiesFUCHSIA = (PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA)load(context, "vkGetMemoryZirconHandlePropertiesFUCHSIA");
  1425. #endif /* defined(VK_FUCHSIA_external_memory) */
  1426. #if defined(VK_FUCHSIA_external_semaphore)
  1427. table->vkGetSemaphoreZirconHandleFUCHSIA = (PFN_vkGetSemaphoreZirconHandleFUCHSIA)load(context, "vkGetSemaphoreZirconHandleFUCHSIA");
  1428. table->vkImportSemaphoreZirconHandleFUCHSIA = (PFN_vkImportSemaphoreZirconHandleFUCHSIA)load(context, "vkImportSemaphoreZirconHandleFUCHSIA");
  1429. #endif /* defined(VK_FUCHSIA_external_semaphore) */
  1430. #if defined(VK_GOOGLE_display_timing)
  1431. table->vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)load(context, "vkGetPastPresentationTimingGOOGLE");
  1432. table->vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)load(context, "vkGetRefreshCycleDurationGOOGLE");
  1433. #endif /* defined(VK_GOOGLE_display_timing) */
  1434. #if defined(VK_HUAWEI_invocation_mask)
  1435. table->vkCmdBindInvocationMaskHUAWEI = (PFN_vkCmdBindInvocationMaskHUAWEI)load(context, "vkCmdBindInvocationMaskHUAWEI");
  1436. #endif /* defined(VK_HUAWEI_invocation_mask) */
  1437. #if defined(VK_HUAWEI_subpass_shading)
  1438. table->vkCmdSubpassShadingHUAWEI = (PFN_vkCmdSubpassShadingHUAWEI)load(context, "vkCmdSubpassShadingHUAWEI");
  1439. table->vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = (PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI)load(context, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI");
  1440. #endif /* defined(VK_HUAWEI_subpass_shading) */
  1441. #if defined(VK_INTEL_performance_query)
  1442. table->vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)load(context, "vkAcquirePerformanceConfigurationINTEL");
  1443. table->vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)load(context, "vkCmdSetPerformanceMarkerINTEL");
  1444. table->vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)load(context, "vkCmdSetPerformanceOverrideINTEL");
  1445. table->vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)load(context, "vkCmdSetPerformanceStreamMarkerINTEL");
  1446. table->vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)load(context, "vkGetPerformanceParameterINTEL");
  1447. table->vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)load(context, "vkInitializePerformanceApiINTEL");
  1448. table->vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)load(context, "vkQueueSetPerformanceConfigurationINTEL");
  1449. table->vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)load(context, "vkReleasePerformanceConfigurationINTEL");
  1450. table->vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)load(context, "vkUninitializePerformanceApiINTEL");
  1451. #endif /* defined(VK_INTEL_performance_query) */
  1452. #if defined(VK_KHR_acceleration_structure)
  1453. table->vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)load(context, "vkBuildAccelerationStructuresKHR");
  1454. table->vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)load(context, "vkCmdBuildAccelerationStructuresIndirectKHR");
  1455. table->vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)load(context, "vkCmdBuildAccelerationStructuresKHR");
  1456. table->vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)load(context, "vkCmdCopyAccelerationStructureKHR");
  1457. table->vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)load(context, "vkCmdCopyAccelerationStructureToMemoryKHR");
  1458. table->vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)load(context, "vkCmdCopyMemoryToAccelerationStructureKHR");
  1459. table->vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)load(context, "vkCmdWriteAccelerationStructuresPropertiesKHR");
  1460. table->vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)load(context, "vkCopyAccelerationStructureKHR");
  1461. table->vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)load(context, "vkCopyAccelerationStructureToMemoryKHR");
  1462. table->vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)load(context, "vkCopyMemoryToAccelerationStructureKHR");
  1463. table->vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)load(context, "vkCreateAccelerationStructureKHR");
  1464. table->vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)load(context, "vkDestroyAccelerationStructureKHR");
  1465. table->vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)load(context, "vkGetAccelerationStructureBuildSizesKHR");
  1466. table->vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)load(context, "vkGetAccelerationStructureDeviceAddressKHR");
  1467. table->vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)load(context, "vkGetDeviceAccelerationStructureCompatibilityKHR");
  1468. table->vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)load(context, "vkWriteAccelerationStructuresPropertiesKHR");
  1469. #endif /* defined(VK_KHR_acceleration_structure) */
  1470. #if defined(VK_KHR_bind_memory2)
  1471. table->vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)load(context, "vkBindBufferMemory2KHR");
  1472. table->vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)load(context, "vkBindImageMemory2KHR");
  1473. #endif /* defined(VK_KHR_bind_memory2) */
  1474. #if defined(VK_KHR_buffer_device_address)
  1475. table->vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)load(context, "vkGetBufferDeviceAddressKHR");
  1476. table->vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)load(context, "vkGetBufferOpaqueCaptureAddressKHR");
  1477. table->vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)load(context, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
  1478. #endif /* defined(VK_KHR_buffer_device_address) */
  1479. #if defined(VK_KHR_copy_commands2)
  1480. table->vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)load(context, "vkCmdBlitImage2KHR");
  1481. table->vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)load(context, "vkCmdCopyBuffer2KHR");
  1482. table->vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)load(context, "vkCmdCopyBufferToImage2KHR");
  1483. table->vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)load(context, "vkCmdCopyImage2KHR");
  1484. table->vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)load(context, "vkCmdCopyImageToBuffer2KHR");
  1485. table->vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)load(context, "vkCmdResolveImage2KHR");
  1486. #endif /* defined(VK_KHR_copy_commands2) */
  1487. #if defined(VK_KHR_create_renderpass2)
  1488. table->vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)load(context, "vkCmdBeginRenderPass2KHR");
  1489. table->vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)load(context, "vkCmdEndRenderPass2KHR");
  1490. table->vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)load(context, "vkCmdNextSubpass2KHR");
  1491. table->vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)load(context, "vkCreateRenderPass2KHR");
  1492. #endif /* defined(VK_KHR_create_renderpass2) */
  1493. #if defined(VK_KHR_deferred_host_operations)
  1494. table->vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)load(context, "vkCreateDeferredOperationKHR");
  1495. table->vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)load(context, "vkDeferredOperationJoinKHR");
  1496. table->vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)load(context, "vkDestroyDeferredOperationKHR");
  1497. table->vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)load(context, "vkGetDeferredOperationMaxConcurrencyKHR");
  1498. table->vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)load(context, "vkGetDeferredOperationResultKHR");
  1499. #endif /* defined(VK_KHR_deferred_host_operations) */
  1500. #if defined(VK_KHR_descriptor_update_template)
  1501. table->vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)load(context, "vkCreateDescriptorUpdateTemplateKHR");
  1502. table->vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)load(context, "vkDestroyDescriptorUpdateTemplateKHR");
  1503. table->vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)load(context, "vkUpdateDescriptorSetWithTemplateKHR");
  1504. #endif /* defined(VK_KHR_descriptor_update_template) */
  1505. #if defined(VK_KHR_device_group)
  1506. table->vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)load(context, "vkCmdDispatchBaseKHR");
  1507. table->vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)load(context, "vkCmdSetDeviceMaskKHR");
  1508. table->vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)load(context, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
  1509. #endif /* defined(VK_KHR_device_group) */
  1510. #if defined(VK_KHR_display_swapchain)
  1511. table->vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)load(context, "vkCreateSharedSwapchainsKHR");
  1512. #endif /* defined(VK_KHR_display_swapchain) */
  1513. #if defined(VK_KHR_draw_indirect_count)
  1514. table->vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)load(context, "vkCmdDrawIndexedIndirectCountKHR");
  1515. table->vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)load(context, "vkCmdDrawIndirectCountKHR");
  1516. #endif /* defined(VK_KHR_draw_indirect_count) */
  1517. #if defined(VK_KHR_dynamic_rendering)
  1518. table->vkCmdBeginRenderingKHR = (PFN_vkCmdBeginRenderingKHR)load(context, "vkCmdBeginRenderingKHR");
  1519. table->vkCmdEndRenderingKHR = (PFN_vkCmdEndRenderingKHR)load(context, "vkCmdEndRenderingKHR");
  1520. #endif /* defined(VK_KHR_dynamic_rendering) */
  1521. #if defined(VK_KHR_external_fence_fd)
  1522. table->vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)load(context, "vkGetFenceFdKHR");
  1523. table->vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)load(context, "vkImportFenceFdKHR");
  1524. #endif /* defined(VK_KHR_external_fence_fd) */
  1525. #if defined(VK_KHR_external_fence_win32)
  1526. table->vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)load(context, "vkGetFenceWin32HandleKHR");
  1527. table->vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)load(context, "vkImportFenceWin32HandleKHR");
  1528. #endif /* defined(VK_KHR_external_fence_win32) */
  1529. #if defined(VK_KHR_external_memory_fd)
  1530. table->vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)load(context, "vkGetMemoryFdKHR");
  1531. table->vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)load(context, "vkGetMemoryFdPropertiesKHR");
  1532. #endif /* defined(VK_KHR_external_memory_fd) */
  1533. #if defined(VK_KHR_external_memory_win32)
  1534. table->vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)load(context, "vkGetMemoryWin32HandleKHR");
  1535. table->vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)load(context, "vkGetMemoryWin32HandlePropertiesKHR");
  1536. #endif /* defined(VK_KHR_external_memory_win32) */
  1537. #if defined(VK_KHR_external_semaphore_fd)
  1538. table->vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)load(context, "vkGetSemaphoreFdKHR");
  1539. table->vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)load(context, "vkImportSemaphoreFdKHR");
  1540. #endif /* defined(VK_KHR_external_semaphore_fd) */
  1541. #if defined(VK_KHR_external_semaphore_win32)
  1542. table->vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)load(context, "vkGetSemaphoreWin32HandleKHR");
  1543. table->vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)load(context, "vkImportSemaphoreWin32HandleKHR");
  1544. #endif /* defined(VK_KHR_external_semaphore_win32) */
  1545. #if defined(VK_KHR_fragment_shading_rate)
  1546. table->vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)load(context, "vkCmdSetFragmentShadingRateKHR");
  1547. #endif /* defined(VK_KHR_fragment_shading_rate) */
  1548. #if defined(VK_KHR_get_memory_requirements2)
  1549. table->vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)load(context, "vkGetBufferMemoryRequirements2KHR");
  1550. table->vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)load(context, "vkGetImageMemoryRequirements2KHR");
  1551. table->vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)load(context, "vkGetImageSparseMemoryRequirements2KHR");
  1552. #endif /* defined(VK_KHR_get_memory_requirements2) */
  1553. #if defined(VK_KHR_maintenance1)
  1554. table->vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)load(context, "vkTrimCommandPoolKHR");
  1555. #endif /* defined(VK_KHR_maintenance1) */
  1556. #if defined(VK_KHR_maintenance3)
  1557. table->vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)load(context, "vkGetDescriptorSetLayoutSupportKHR");
  1558. #endif /* defined(VK_KHR_maintenance3) */
  1559. #if defined(VK_KHR_maintenance4)
  1560. table->vkGetDeviceBufferMemoryRequirementsKHR = (PFN_vkGetDeviceBufferMemoryRequirementsKHR)load(context, "vkGetDeviceBufferMemoryRequirementsKHR");
  1561. table->vkGetDeviceImageMemoryRequirementsKHR = (PFN_vkGetDeviceImageMemoryRequirementsKHR)load(context, "vkGetDeviceImageMemoryRequirementsKHR");
  1562. table->vkGetDeviceImageSparseMemoryRequirementsKHR = (PFN_vkGetDeviceImageSparseMemoryRequirementsKHR)load(context, "vkGetDeviceImageSparseMemoryRequirementsKHR");
  1563. #endif /* defined(VK_KHR_maintenance4) */
  1564. #if defined(VK_KHR_performance_query)
  1565. table->vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)load(context, "vkAcquireProfilingLockKHR");
  1566. table->vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)load(context, "vkReleaseProfilingLockKHR");
  1567. #endif /* defined(VK_KHR_performance_query) */
  1568. #if defined(VK_KHR_pipeline_executable_properties)
  1569. table->vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)load(context, "vkGetPipelineExecutableInternalRepresentationsKHR");
  1570. table->vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)load(context, "vkGetPipelineExecutablePropertiesKHR");
  1571. table->vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)load(context, "vkGetPipelineExecutableStatisticsKHR");
  1572. #endif /* defined(VK_KHR_pipeline_executable_properties) */
  1573. #if defined(VK_KHR_present_wait)
  1574. table->vkWaitForPresentKHR = (PFN_vkWaitForPresentKHR)load(context, "vkWaitForPresentKHR");
  1575. #endif /* defined(VK_KHR_present_wait) */
  1576. #if defined(VK_KHR_push_descriptor)
  1577. table->vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)load(context, "vkCmdPushDescriptorSetKHR");
  1578. #endif /* defined(VK_KHR_push_descriptor) */
  1579. #if defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline)
  1580. table->vkCmdTraceRaysIndirect2KHR = (PFN_vkCmdTraceRaysIndirect2KHR)load(context, "vkCmdTraceRaysIndirect2KHR");
  1581. #endif /* defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline) */
  1582. #if defined(VK_KHR_ray_tracing_pipeline)
  1583. table->vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)load(context, "vkCmdSetRayTracingPipelineStackSizeKHR");
  1584. table->vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)load(context, "vkCmdTraceRaysIndirectKHR");
  1585. table->vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)load(context, "vkCmdTraceRaysKHR");
  1586. table->vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)load(context, "vkCreateRayTracingPipelinesKHR");
  1587. table->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)load(context, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
  1588. table->vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)load(context, "vkGetRayTracingShaderGroupHandlesKHR");
  1589. table->vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)load(context, "vkGetRayTracingShaderGroupStackSizeKHR");
  1590. #endif /* defined(VK_KHR_ray_tracing_pipeline) */
  1591. #if defined(VK_KHR_sampler_ycbcr_conversion)
  1592. table->vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)load(context, "vkCreateSamplerYcbcrConversionKHR");
  1593. table->vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)load(context, "vkDestroySamplerYcbcrConversionKHR");
  1594. #endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
  1595. #if defined(VK_KHR_shared_presentable_image)
  1596. table->vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)load(context, "vkGetSwapchainStatusKHR");
  1597. #endif /* defined(VK_KHR_shared_presentable_image) */
  1598. #if defined(VK_KHR_swapchain)
  1599. table->vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)load(context, "vkAcquireNextImageKHR");
  1600. table->vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)load(context, "vkCreateSwapchainKHR");
  1601. table->vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)load(context, "vkDestroySwapchainKHR");
  1602. table->vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)load(context, "vkGetSwapchainImagesKHR");
  1603. table->vkQueuePresentKHR = (PFN_vkQueuePresentKHR)load(context, "vkQueuePresentKHR");
  1604. #endif /* defined(VK_KHR_swapchain) */
  1605. #if defined(VK_KHR_synchronization2)
  1606. table->vkCmdPipelineBarrier2KHR = (PFN_vkCmdPipelineBarrier2KHR)load(context, "vkCmdPipelineBarrier2KHR");
  1607. table->vkCmdResetEvent2KHR = (PFN_vkCmdResetEvent2KHR)load(context, "vkCmdResetEvent2KHR");
  1608. table->vkCmdSetEvent2KHR = (PFN_vkCmdSetEvent2KHR)load(context, "vkCmdSetEvent2KHR");
  1609. table->vkCmdWaitEvents2KHR = (PFN_vkCmdWaitEvents2KHR)load(context, "vkCmdWaitEvents2KHR");
  1610. table->vkCmdWriteTimestamp2KHR = (PFN_vkCmdWriteTimestamp2KHR)load(context, "vkCmdWriteTimestamp2KHR");
  1611. table->vkQueueSubmit2KHR = (PFN_vkQueueSubmit2KHR)load(context, "vkQueueSubmit2KHR");
  1612. #endif /* defined(VK_KHR_synchronization2) */
  1613. #if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
  1614. table->vkCmdWriteBufferMarker2AMD = (PFN_vkCmdWriteBufferMarker2AMD)load(context, "vkCmdWriteBufferMarker2AMD");
  1615. #endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
  1616. #if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
  1617. table->vkGetQueueCheckpointData2NV = (PFN_vkGetQueueCheckpointData2NV)load(context, "vkGetQueueCheckpointData2NV");
  1618. #endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
  1619. #if defined(VK_KHR_timeline_semaphore)
  1620. table->vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)load(context, "vkGetSemaphoreCounterValueKHR");
  1621. table->vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)load(context, "vkSignalSemaphoreKHR");
  1622. table->vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)load(context, "vkWaitSemaphoresKHR");
  1623. #endif /* defined(VK_KHR_timeline_semaphore) */
  1624. #if defined(VK_KHR_video_decode_queue)
  1625. table->vkCmdDecodeVideoKHR = (PFN_vkCmdDecodeVideoKHR)load(context, "vkCmdDecodeVideoKHR");
  1626. #endif /* defined(VK_KHR_video_decode_queue) */
  1627. #if defined(VK_KHR_video_encode_queue)
  1628. table->vkCmdEncodeVideoKHR = (PFN_vkCmdEncodeVideoKHR)load(context, "vkCmdEncodeVideoKHR");
  1629. #endif /* defined(VK_KHR_video_encode_queue) */
  1630. #if defined(VK_KHR_video_queue)
  1631. table->vkBindVideoSessionMemoryKHR = (PFN_vkBindVideoSessionMemoryKHR)load(context, "vkBindVideoSessionMemoryKHR");
  1632. table->vkCmdBeginVideoCodingKHR = (PFN_vkCmdBeginVideoCodingKHR)load(context, "vkCmdBeginVideoCodingKHR");
  1633. table->vkCmdControlVideoCodingKHR = (PFN_vkCmdControlVideoCodingKHR)load(context, "vkCmdControlVideoCodingKHR");
  1634. table->vkCmdEndVideoCodingKHR = (PFN_vkCmdEndVideoCodingKHR)load(context, "vkCmdEndVideoCodingKHR");
  1635. table->vkCreateVideoSessionKHR = (PFN_vkCreateVideoSessionKHR)load(context, "vkCreateVideoSessionKHR");
  1636. table->vkCreateVideoSessionParametersKHR = (PFN_vkCreateVideoSessionParametersKHR)load(context, "vkCreateVideoSessionParametersKHR");
  1637. table->vkDestroyVideoSessionKHR = (PFN_vkDestroyVideoSessionKHR)load(context, "vkDestroyVideoSessionKHR");
  1638. table->vkDestroyVideoSessionParametersKHR = (PFN_vkDestroyVideoSessionParametersKHR)load(context, "vkDestroyVideoSessionParametersKHR");
  1639. table->vkGetVideoSessionMemoryRequirementsKHR = (PFN_vkGetVideoSessionMemoryRequirementsKHR)load(context, "vkGetVideoSessionMemoryRequirementsKHR");
  1640. table->vkUpdateVideoSessionParametersKHR = (PFN_vkUpdateVideoSessionParametersKHR)load(context, "vkUpdateVideoSessionParametersKHR");
  1641. #endif /* defined(VK_KHR_video_queue) */
  1642. #if defined(VK_NVX_binary_import)
  1643. table->vkCmdCuLaunchKernelNVX = (PFN_vkCmdCuLaunchKernelNVX)load(context, "vkCmdCuLaunchKernelNVX");
  1644. table->vkCreateCuFunctionNVX = (PFN_vkCreateCuFunctionNVX)load(context, "vkCreateCuFunctionNVX");
  1645. table->vkCreateCuModuleNVX = (PFN_vkCreateCuModuleNVX)load(context, "vkCreateCuModuleNVX");
  1646. table->vkDestroyCuFunctionNVX = (PFN_vkDestroyCuFunctionNVX)load(context, "vkDestroyCuFunctionNVX");
  1647. table->vkDestroyCuModuleNVX = (PFN_vkDestroyCuModuleNVX)load(context, "vkDestroyCuModuleNVX");
  1648. #endif /* defined(VK_NVX_binary_import) */
  1649. #if defined(VK_NVX_image_view_handle)
  1650. table->vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)load(context, "vkGetImageViewAddressNVX");
  1651. table->vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)load(context, "vkGetImageViewHandleNVX");
  1652. #endif /* defined(VK_NVX_image_view_handle) */
  1653. #if defined(VK_NV_clip_space_w_scaling)
  1654. table->vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)load(context, "vkCmdSetViewportWScalingNV");
  1655. #endif /* defined(VK_NV_clip_space_w_scaling) */
  1656. #if defined(VK_NV_device_diagnostic_checkpoints)
  1657. table->vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)load(context, "vkCmdSetCheckpointNV");
  1658. table->vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)load(context, "vkGetQueueCheckpointDataNV");
  1659. #endif /* defined(VK_NV_device_diagnostic_checkpoints) */
  1660. #if defined(VK_NV_device_generated_commands)
  1661. table->vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)load(context, "vkCmdBindPipelineShaderGroupNV");
  1662. table->vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)load(context, "vkCmdExecuteGeneratedCommandsNV");
  1663. table->vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)load(context, "vkCmdPreprocessGeneratedCommandsNV");
  1664. table->vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)load(context, "vkCreateIndirectCommandsLayoutNV");
  1665. table->vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)load(context, "vkDestroyIndirectCommandsLayoutNV");
  1666. table->vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)load(context, "vkGetGeneratedCommandsMemoryRequirementsNV");
  1667. #endif /* defined(VK_NV_device_generated_commands) */
  1668. #if defined(VK_NV_external_memory_rdma)
  1669. table->vkGetMemoryRemoteAddressNV = (PFN_vkGetMemoryRemoteAddressNV)load(context, "vkGetMemoryRemoteAddressNV");
  1670. #endif /* defined(VK_NV_external_memory_rdma) */
  1671. #if defined(VK_NV_external_memory_win32)
  1672. table->vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)load(context, "vkGetMemoryWin32HandleNV");
  1673. #endif /* defined(VK_NV_external_memory_win32) */
  1674. #if defined(VK_NV_fragment_shading_rate_enums)
  1675. table->vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)load(context, "vkCmdSetFragmentShadingRateEnumNV");
  1676. #endif /* defined(VK_NV_fragment_shading_rate_enums) */
  1677. #if defined(VK_NV_mesh_shader)
  1678. table->vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)load(context, "vkCmdDrawMeshTasksIndirectCountNV");
  1679. table->vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)load(context, "vkCmdDrawMeshTasksIndirectNV");
  1680. table->vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)load(context, "vkCmdDrawMeshTasksNV");
  1681. #endif /* defined(VK_NV_mesh_shader) */
  1682. #if defined(VK_NV_optical_flow)
  1683. table->vkBindOpticalFlowSessionImageNV = (PFN_vkBindOpticalFlowSessionImageNV)load(context, "vkBindOpticalFlowSessionImageNV");
  1684. table->vkCmdOpticalFlowExecuteNV = (PFN_vkCmdOpticalFlowExecuteNV)load(context, "vkCmdOpticalFlowExecuteNV");
  1685. table->vkCreateOpticalFlowSessionNV = (PFN_vkCreateOpticalFlowSessionNV)load(context, "vkCreateOpticalFlowSessionNV");
  1686. table->vkDestroyOpticalFlowSessionNV = (PFN_vkDestroyOpticalFlowSessionNV)load(context, "vkDestroyOpticalFlowSessionNV");
  1687. #endif /* defined(VK_NV_optical_flow) */
  1688. #if defined(VK_NV_ray_tracing)
  1689. table->vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)load(context, "vkBindAccelerationStructureMemoryNV");
  1690. table->vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)load(context, "vkCmdBuildAccelerationStructureNV");
  1691. table->vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)load(context, "vkCmdCopyAccelerationStructureNV");
  1692. table->vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)load(context, "vkCmdTraceRaysNV");
  1693. table->vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)load(context, "vkCmdWriteAccelerationStructuresPropertiesNV");
  1694. table->vkCompileDeferredNV = (PFN_vkCompileDeferredNV)load(context, "vkCompileDeferredNV");
  1695. table->vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)load(context, "vkCreateAccelerationStructureNV");
  1696. table->vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)load(context, "vkCreateRayTracingPipelinesNV");
  1697. table->vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)load(context, "vkDestroyAccelerationStructureNV");
  1698. table->vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)load(context, "vkGetAccelerationStructureHandleNV");
  1699. table->vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)load(context, "vkGetAccelerationStructureMemoryRequirementsNV");
  1700. table->vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)load(context, "vkGetRayTracingShaderGroupHandlesNV");
  1701. #endif /* defined(VK_NV_ray_tracing) */
  1702. #if defined(VK_NV_scissor_exclusive)
  1703. table->vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)load(context, "vkCmdSetExclusiveScissorNV");
  1704. #endif /* defined(VK_NV_scissor_exclusive) */
  1705. #if defined(VK_NV_shading_rate_image)
  1706. table->vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)load(context, "vkCmdBindShadingRateImageNV");
  1707. table->vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)load(context, "vkCmdSetCoarseSampleOrderNV");
  1708. table->vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)load(context, "vkCmdSetViewportShadingRatePaletteNV");
  1709. #endif /* defined(VK_NV_shading_rate_image) */
  1710. #if defined(VK_QCOM_tile_properties)
  1711. table->vkGetDynamicRenderingTilePropertiesQCOM = (PFN_vkGetDynamicRenderingTilePropertiesQCOM)load(context, "vkGetDynamicRenderingTilePropertiesQCOM");
  1712. table->vkGetFramebufferTilePropertiesQCOM = (PFN_vkGetFramebufferTilePropertiesQCOM)load(context, "vkGetFramebufferTilePropertiesQCOM");
  1713. #endif /* defined(VK_QCOM_tile_properties) */
  1714. #if defined(VK_VALVE_descriptor_set_host_mapping)
  1715. table->vkGetDescriptorSetHostMappingVALVE = (PFN_vkGetDescriptorSetHostMappingVALVE)load(context, "vkGetDescriptorSetHostMappingVALVE");
  1716. table->vkGetDescriptorSetLayoutHostMappingInfoVALVE = (PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE)load(context, "vkGetDescriptorSetLayoutHostMappingInfoVALVE");
  1717. #endif /* defined(VK_VALVE_descriptor_set_host_mapping) */
  1718. #if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
  1719. table->vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)load(context, "vkGetDeviceGroupSurfacePresentModes2EXT");
  1720. #endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
  1721. #if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
  1722. table->vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)load(context, "vkCmdPushDescriptorSetWithTemplateKHR");
  1723. #endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
  1724. #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
  1725. table->vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)load(context, "vkGetDeviceGroupPresentCapabilitiesKHR");
  1726. table->vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)load(context, "vkGetDeviceGroupSurfacePresentModesKHR");
  1727. #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
  1728. #if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
  1729. table->vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)load(context, "vkAcquireNextImage2KHR");
  1730. #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
  1731. /* VOLK_GENERATE_LOAD_DEVICE_TABLE */
  1732. }
  1733. #ifdef __GNUC__
  1734. #ifdef VOLK_DEFAULT_VISIBILITY
  1735. # pragma GCC visibility push(default)
  1736. #else
  1737. # pragma GCC visibility push(hidden)
  1738. #endif
  1739. #endif
  1740. /* VOLK_GENERATE_PROTOTYPES_C */
  1741. #if defined(VK_VERSION_1_0)
  1742. PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
  1743. PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
  1744. PFN_vkAllocateMemory vkAllocateMemory;
  1745. PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
  1746. PFN_vkBindBufferMemory vkBindBufferMemory;
  1747. PFN_vkBindImageMemory vkBindImageMemory;
  1748. PFN_vkCmdBeginQuery vkCmdBeginQuery;
  1749. PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
  1750. PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
  1751. PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
  1752. PFN_vkCmdBindPipeline vkCmdBindPipeline;
  1753. PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
  1754. PFN_vkCmdBlitImage vkCmdBlitImage;
  1755. PFN_vkCmdClearAttachments vkCmdClearAttachments;
  1756. PFN_vkCmdClearColorImage vkCmdClearColorImage;
  1757. PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
  1758. PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
  1759. PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
  1760. PFN_vkCmdCopyImage vkCmdCopyImage;
  1761. PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
  1762. PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
  1763. PFN_vkCmdDispatch vkCmdDispatch;
  1764. PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
  1765. PFN_vkCmdDraw vkCmdDraw;
  1766. PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
  1767. PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
  1768. PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
  1769. PFN_vkCmdEndQuery vkCmdEndQuery;
  1770. PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
  1771. PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
  1772. PFN_vkCmdFillBuffer vkCmdFillBuffer;
  1773. PFN_vkCmdNextSubpass vkCmdNextSubpass;
  1774. PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
  1775. PFN_vkCmdPushConstants vkCmdPushConstants;
  1776. PFN_vkCmdResetEvent vkCmdResetEvent;
  1777. PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
  1778. PFN_vkCmdResolveImage vkCmdResolveImage;
  1779. PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
  1780. PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
  1781. PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
  1782. PFN_vkCmdSetEvent vkCmdSetEvent;
  1783. PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
  1784. PFN_vkCmdSetScissor vkCmdSetScissor;
  1785. PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
  1786. PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
  1787. PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
  1788. PFN_vkCmdSetViewport vkCmdSetViewport;
  1789. PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
  1790. PFN_vkCmdWaitEvents vkCmdWaitEvents;
  1791. PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
  1792. PFN_vkCreateBuffer vkCreateBuffer;
  1793. PFN_vkCreateBufferView vkCreateBufferView;
  1794. PFN_vkCreateCommandPool vkCreateCommandPool;
  1795. PFN_vkCreateComputePipelines vkCreateComputePipelines;
  1796. PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
  1797. PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
  1798. PFN_vkCreateDevice vkCreateDevice;
  1799. PFN_vkCreateEvent vkCreateEvent;
  1800. PFN_vkCreateFence vkCreateFence;
  1801. PFN_vkCreateFramebuffer vkCreateFramebuffer;
  1802. PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
  1803. PFN_vkCreateImage vkCreateImage;
  1804. PFN_vkCreateImageView vkCreateImageView;
  1805. PFN_vkCreateInstance vkCreateInstance;
  1806. PFN_vkCreatePipelineCache vkCreatePipelineCache;
  1807. PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
  1808. PFN_vkCreateQueryPool vkCreateQueryPool;
  1809. PFN_vkCreateRenderPass vkCreateRenderPass;
  1810. PFN_vkCreateSampler vkCreateSampler;
  1811. PFN_vkCreateSemaphore vkCreateSemaphore;
  1812. PFN_vkCreateShaderModule vkCreateShaderModule;
  1813. PFN_vkDestroyBuffer vkDestroyBuffer;
  1814. PFN_vkDestroyBufferView vkDestroyBufferView;
  1815. PFN_vkDestroyCommandPool vkDestroyCommandPool;
  1816. PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
  1817. PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
  1818. PFN_vkDestroyDevice vkDestroyDevice;
  1819. PFN_vkDestroyEvent vkDestroyEvent;
  1820. PFN_vkDestroyFence vkDestroyFence;
  1821. PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
  1822. PFN_vkDestroyImage vkDestroyImage;
  1823. PFN_vkDestroyImageView vkDestroyImageView;
  1824. PFN_vkDestroyInstance vkDestroyInstance;
  1825. PFN_vkDestroyPipeline vkDestroyPipeline;
  1826. PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
  1827. PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
  1828. PFN_vkDestroyQueryPool vkDestroyQueryPool;
  1829. PFN_vkDestroyRenderPass vkDestroyRenderPass;
  1830. PFN_vkDestroySampler vkDestroySampler;
  1831. PFN_vkDestroySemaphore vkDestroySemaphore;
  1832. PFN_vkDestroyShaderModule vkDestroyShaderModule;
  1833. PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
  1834. PFN_vkEndCommandBuffer vkEndCommandBuffer;
  1835. PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties;
  1836. PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties;
  1837. PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties;
  1838. PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties;
  1839. PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices;
  1840. PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
  1841. PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
  1842. PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
  1843. PFN_vkFreeMemory vkFreeMemory;
  1844. PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
  1845. PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
  1846. PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
  1847. PFN_vkGetDeviceQueue vkGetDeviceQueue;
  1848. PFN_vkGetEventStatus vkGetEventStatus;
  1849. PFN_vkGetFenceStatus vkGetFenceStatus;
  1850. PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
  1851. PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
  1852. PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
  1853. PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
  1854. PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures;
  1855. PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties;
  1856. PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties;
  1857. PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
  1858. PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
  1859. PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties;
  1860. PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties;
  1861. PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
  1862. PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
  1863. PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
  1864. PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
  1865. PFN_vkMapMemory vkMapMemory;
  1866. PFN_vkMergePipelineCaches vkMergePipelineCaches;
  1867. PFN_vkQueueBindSparse vkQueueBindSparse;
  1868. PFN_vkQueueSubmit vkQueueSubmit;
  1869. PFN_vkQueueWaitIdle vkQueueWaitIdle;
  1870. PFN_vkResetCommandBuffer vkResetCommandBuffer;
  1871. PFN_vkResetCommandPool vkResetCommandPool;
  1872. PFN_vkResetDescriptorPool vkResetDescriptorPool;
  1873. PFN_vkResetEvent vkResetEvent;
  1874. PFN_vkResetFences vkResetFences;
  1875. PFN_vkSetEvent vkSetEvent;
  1876. PFN_vkUnmapMemory vkUnmapMemory;
  1877. PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
  1878. PFN_vkWaitForFences vkWaitForFences;
  1879. #endif /* defined(VK_VERSION_1_0) */
  1880. #if defined(VK_VERSION_1_1)
  1881. PFN_vkBindBufferMemory2 vkBindBufferMemory2;
  1882. PFN_vkBindImageMemory2 vkBindImageMemory2;
  1883. PFN_vkCmdDispatchBase vkCmdDispatchBase;
  1884. PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
  1885. PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
  1886. PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
  1887. PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
  1888. PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
  1889. PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion;
  1890. PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups;
  1891. PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
  1892. PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
  1893. PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
  1894. PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
  1895. PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
  1896. PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
  1897. PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties;
  1898. PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties;
  1899. PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties;
  1900. PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2;
  1901. PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2;
  1902. PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2;
  1903. PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;
  1904. PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2;
  1905. PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2;
  1906. PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2;
  1907. PFN_vkTrimCommandPool vkTrimCommandPool;
  1908. PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
  1909. #endif /* defined(VK_VERSION_1_1) */
  1910. #if defined(VK_VERSION_1_2)
  1911. PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2;
  1912. PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount;
  1913. PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount;
  1914. PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2;
  1915. PFN_vkCmdNextSubpass2 vkCmdNextSubpass2;
  1916. PFN_vkCreateRenderPass2 vkCreateRenderPass2;
  1917. PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress;
  1918. PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress;
  1919. PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress;
  1920. PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue;
  1921. PFN_vkResetQueryPool vkResetQueryPool;
  1922. PFN_vkSignalSemaphore vkSignalSemaphore;
  1923. PFN_vkWaitSemaphores vkWaitSemaphores;
  1924. #endif /* defined(VK_VERSION_1_2) */
  1925. #if defined(VK_VERSION_1_3)
  1926. PFN_vkCmdBeginRendering vkCmdBeginRendering;
  1927. PFN_vkCmdBindVertexBuffers2 vkCmdBindVertexBuffers2;
  1928. PFN_vkCmdBlitImage2 vkCmdBlitImage2;
  1929. PFN_vkCmdCopyBuffer2 vkCmdCopyBuffer2;
  1930. PFN_vkCmdCopyBufferToImage2 vkCmdCopyBufferToImage2;
  1931. PFN_vkCmdCopyImage2 vkCmdCopyImage2;
  1932. PFN_vkCmdCopyImageToBuffer2 vkCmdCopyImageToBuffer2;
  1933. PFN_vkCmdEndRendering vkCmdEndRendering;
  1934. PFN_vkCmdPipelineBarrier2 vkCmdPipelineBarrier2;
  1935. PFN_vkCmdResetEvent2 vkCmdResetEvent2;
  1936. PFN_vkCmdResolveImage2 vkCmdResolveImage2;
  1937. PFN_vkCmdSetCullMode vkCmdSetCullMode;
  1938. PFN_vkCmdSetDepthBiasEnable vkCmdSetDepthBiasEnable;
  1939. PFN_vkCmdSetDepthBoundsTestEnable vkCmdSetDepthBoundsTestEnable;
  1940. PFN_vkCmdSetDepthCompareOp vkCmdSetDepthCompareOp;
  1941. PFN_vkCmdSetDepthTestEnable vkCmdSetDepthTestEnable;
  1942. PFN_vkCmdSetDepthWriteEnable vkCmdSetDepthWriteEnable;
  1943. PFN_vkCmdSetEvent2 vkCmdSetEvent2;
  1944. PFN_vkCmdSetFrontFace vkCmdSetFrontFace;
  1945. PFN_vkCmdSetPrimitiveRestartEnable vkCmdSetPrimitiveRestartEnable;
  1946. PFN_vkCmdSetPrimitiveTopology vkCmdSetPrimitiveTopology;
  1947. PFN_vkCmdSetRasterizerDiscardEnable vkCmdSetRasterizerDiscardEnable;
  1948. PFN_vkCmdSetScissorWithCount vkCmdSetScissorWithCount;
  1949. PFN_vkCmdSetStencilOp vkCmdSetStencilOp;
  1950. PFN_vkCmdSetStencilTestEnable vkCmdSetStencilTestEnable;
  1951. PFN_vkCmdSetViewportWithCount vkCmdSetViewportWithCount;
  1952. PFN_vkCmdWaitEvents2 vkCmdWaitEvents2;
  1953. PFN_vkCmdWriteTimestamp2 vkCmdWriteTimestamp2;
  1954. PFN_vkCreatePrivateDataSlot vkCreatePrivateDataSlot;
  1955. PFN_vkDestroyPrivateDataSlot vkDestroyPrivateDataSlot;
  1956. PFN_vkGetDeviceBufferMemoryRequirements vkGetDeviceBufferMemoryRequirements;
  1957. PFN_vkGetDeviceImageMemoryRequirements vkGetDeviceImageMemoryRequirements;
  1958. PFN_vkGetDeviceImageSparseMemoryRequirements vkGetDeviceImageSparseMemoryRequirements;
  1959. PFN_vkGetPhysicalDeviceToolProperties vkGetPhysicalDeviceToolProperties;
  1960. PFN_vkGetPrivateData vkGetPrivateData;
  1961. PFN_vkQueueSubmit2 vkQueueSubmit2;
  1962. PFN_vkSetPrivateData vkSetPrivateData;
  1963. #endif /* defined(VK_VERSION_1_3) */
  1964. #if defined(VK_AMD_buffer_marker)
  1965. PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD;
  1966. #endif /* defined(VK_AMD_buffer_marker) */
  1967. #if defined(VK_AMD_display_native_hdr)
  1968. PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD;
  1969. #endif /* defined(VK_AMD_display_native_hdr) */
  1970. #if defined(VK_AMD_draw_indirect_count)
  1971. PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD;
  1972. PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD;
  1973. #endif /* defined(VK_AMD_draw_indirect_count) */
  1974. #if defined(VK_AMD_shader_info)
  1975. PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD;
  1976. #endif /* defined(VK_AMD_shader_info) */
  1977. #if defined(VK_ANDROID_external_memory_android_hardware_buffer)
  1978. PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID;
  1979. PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID;
  1980. #endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
  1981. #if defined(VK_EXT_acquire_drm_display)
  1982. PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT;
  1983. PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT;
  1984. #endif /* defined(VK_EXT_acquire_drm_display) */
  1985. #if defined(VK_EXT_acquire_xlib_display)
  1986. PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT;
  1987. PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT;
  1988. #endif /* defined(VK_EXT_acquire_xlib_display) */
  1989. #if defined(VK_EXT_buffer_device_address)
  1990. PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT;
  1991. #endif /* defined(VK_EXT_buffer_device_address) */
  1992. #if defined(VK_EXT_calibrated_timestamps)
  1993. PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT;
  1994. PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT;
  1995. #endif /* defined(VK_EXT_calibrated_timestamps) */
  1996. #if defined(VK_EXT_color_write_enable)
  1997. PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT;
  1998. #endif /* defined(VK_EXT_color_write_enable) */
  1999. #if defined(VK_EXT_conditional_rendering)
  2000. PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT;
  2001. PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT;
  2002. #endif /* defined(VK_EXT_conditional_rendering) */
  2003. #if defined(VK_EXT_debug_marker)
  2004. PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT;
  2005. PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT;
  2006. PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT;
  2007. PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT;
  2008. PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT;
  2009. #endif /* defined(VK_EXT_debug_marker) */
  2010. #if defined(VK_EXT_debug_report)
  2011. PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT;
  2012. PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT;
  2013. PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT;
  2014. #endif /* defined(VK_EXT_debug_report) */
  2015. #if defined(VK_EXT_debug_utils)
  2016. PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT;
  2017. PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT;
  2018. PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT;
  2019. PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT;
  2020. PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT;
  2021. PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT;
  2022. PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT;
  2023. PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT;
  2024. PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT;
  2025. PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT;
  2026. PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT;
  2027. #endif /* defined(VK_EXT_debug_utils) */
  2028. #if defined(VK_EXT_device_fault)
  2029. PFN_vkGetDeviceFaultInfoEXT vkGetDeviceFaultInfoEXT;
  2030. #endif /* defined(VK_EXT_device_fault) */
  2031. #if defined(VK_EXT_direct_mode_display)
  2032. PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT;
  2033. #endif /* defined(VK_EXT_direct_mode_display) */
  2034. #if defined(VK_EXT_directfb_surface)
  2035. PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT;
  2036. PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT;
  2037. #endif /* defined(VK_EXT_directfb_surface) */
  2038. #if defined(VK_EXT_discard_rectangles)
  2039. PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT;
  2040. #endif /* defined(VK_EXT_discard_rectangles) */
  2041. #if defined(VK_EXT_display_control)
  2042. PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT;
  2043. PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT;
  2044. PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT;
  2045. PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT;
  2046. #endif /* defined(VK_EXT_display_control) */
  2047. #if defined(VK_EXT_display_surface_counter)
  2048. PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT;
  2049. #endif /* defined(VK_EXT_display_surface_counter) */
  2050. #if defined(VK_EXT_extended_dynamic_state)
  2051. PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT;
  2052. PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT;
  2053. PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT;
  2054. PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT;
  2055. PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT;
  2056. PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT;
  2057. PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT;
  2058. PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT;
  2059. PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT;
  2060. PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT;
  2061. PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT;
  2062. PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT;
  2063. #endif /* defined(VK_EXT_extended_dynamic_state) */
  2064. #if defined(VK_EXT_extended_dynamic_state2)
  2065. PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT;
  2066. PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT;
  2067. PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT;
  2068. PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT;
  2069. PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT;
  2070. #endif /* defined(VK_EXT_extended_dynamic_state2) */
  2071. #if defined(VK_EXT_extended_dynamic_state3)
  2072. PFN_vkCmdSetAlphaToCoverageEnableEXT vkCmdSetAlphaToCoverageEnableEXT;
  2073. PFN_vkCmdSetAlphaToOneEnableEXT vkCmdSetAlphaToOneEnableEXT;
  2074. PFN_vkCmdSetColorBlendAdvancedEXT vkCmdSetColorBlendAdvancedEXT;
  2075. PFN_vkCmdSetColorBlendEnableEXT vkCmdSetColorBlendEnableEXT;
  2076. PFN_vkCmdSetColorBlendEquationEXT vkCmdSetColorBlendEquationEXT;
  2077. PFN_vkCmdSetColorWriteMaskEXT vkCmdSetColorWriteMaskEXT;
  2078. PFN_vkCmdSetConservativeRasterizationModeEXT vkCmdSetConservativeRasterizationModeEXT;
  2079. PFN_vkCmdSetCoverageModulationModeNV vkCmdSetCoverageModulationModeNV;
  2080. PFN_vkCmdSetCoverageModulationTableEnableNV vkCmdSetCoverageModulationTableEnableNV;
  2081. PFN_vkCmdSetCoverageModulationTableNV vkCmdSetCoverageModulationTableNV;
  2082. PFN_vkCmdSetCoverageReductionModeNV vkCmdSetCoverageReductionModeNV;
  2083. PFN_vkCmdSetCoverageToColorEnableNV vkCmdSetCoverageToColorEnableNV;
  2084. PFN_vkCmdSetCoverageToColorLocationNV vkCmdSetCoverageToColorLocationNV;
  2085. PFN_vkCmdSetDepthClampEnableEXT vkCmdSetDepthClampEnableEXT;
  2086. PFN_vkCmdSetDepthClipEnableEXT vkCmdSetDepthClipEnableEXT;
  2087. PFN_vkCmdSetDepthClipNegativeOneToOneEXT vkCmdSetDepthClipNegativeOneToOneEXT;
  2088. PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT vkCmdSetExtraPrimitiveOverestimationSizeEXT;
  2089. PFN_vkCmdSetLineRasterizationModeEXT vkCmdSetLineRasterizationModeEXT;
  2090. PFN_vkCmdSetLineStippleEnableEXT vkCmdSetLineStippleEnableEXT;
  2091. PFN_vkCmdSetLogicOpEnableEXT vkCmdSetLogicOpEnableEXT;
  2092. PFN_vkCmdSetPolygonModeEXT vkCmdSetPolygonModeEXT;
  2093. PFN_vkCmdSetProvokingVertexModeEXT vkCmdSetProvokingVertexModeEXT;
  2094. PFN_vkCmdSetRasterizationSamplesEXT vkCmdSetRasterizationSamplesEXT;
  2095. PFN_vkCmdSetRasterizationStreamEXT vkCmdSetRasterizationStreamEXT;
  2096. PFN_vkCmdSetRepresentativeFragmentTestEnableNV vkCmdSetRepresentativeFragmentTestEnableNV;
  2097. PFN_vkCmdSetSampleLocationsEnableEXT vkCmdSetSampleLocationsEnableEXT;
  2098. PFN_vkCmdSetSampleMaskEXT vkCmdSetSampleMaskEXT;
  2099. PFN_vkCmdSetShadingRateImageEnableNV vkCmdSetShadingRateImageEnableNV;
  2100. PFN_vkCmdSetTessellationDomainOriginEXT vkCmdSetTessellationDomainOriginEXT;
  2101. PFN_vkCmdSetViewportSwizzleNV vkCmdSetViewportSwizzleNV;
  2102. PFN_vkCmdSetViewportWScalingEnableNV vkCmdSetViewportWScalingEnableNV;
  2103. #endif /* defined(VK_EXT_extended_dynamic_state3) */
  2104. #if defined(VK_EXT_external_memory_host)
  2105. PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT;
  2106. #endif /* defined(VK_EXT_external_memory_host) */
  2107. #if defined(VK_EXT_full_screen_exclusive)
  2108. PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT;
  2109. PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT;
  2110. PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT;
  2111. #endif /* defined(VK_EXT_full_screen_exclusive) */
  2112. #if defined(VK_EXT_hdr_metadata)
  2113. PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT;
  2114. #endif /* defined(VK_EXT_hdr_metadata) */
  2115. #if defined(VK_EXT_headless_surface)
  2116. PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT;
  2117. #endif /* defined(VK_EXT_headless_surface) */
  2118. #if defined(VK_EXT_host_query_reset)
  2119. PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT;
  2120. #endif /* defined(VK_EXT_host_query_reset) */
  2121. #if defined(VK_EXT_image_compression_control)
  2122. PFN_vkGetImageSubresourceLayout2EXT vkGetImageSubresourceLayout2EXT;
  2123. #endif /* defined(VK_EXT_image_compression_control) */
  2124. #if defined(VK_EXT_image_drm_format_modifier)
  2125. PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT;
  2126. #endif /* defined(VK_EXT_image_drm_format_modifier) */
  2127. #if defined(VK_EXT_line_rasterization)
  2128. PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT;
  2129. #endif /* defined(VK_EXT_line_rasterization) */
  2130. #if defined(VK_EXT_mesh_shader)
  2131. PFN_vkCmdDrawMeshTasksEXT vkCmdDrawMeshTasksEXT;
  2132. PFN_vkCmdDrawMeshTasksIndirectCountEXT vkCmdDrawMeshTasksIndirectCountEXT;
  2133. PFN_vkCmdDrawMeshTasksIndirectEXT vkCmdDrawMeshTasksIndirectEXT;
  2134. #endif /* defined(VK_EXT_mesh_shader) */
  2135. #if defined(VK_EXT_metal_objects)
  2136. PFN_vkExportMetalObjectsEXT vkExportMetalObjectsEXT;
  2137. #endif /* defined(VK_EXT_metal_objects) */
  2138. #if defined(VK_EXT_metal_surface)
  2139. PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT;
  2140. #endif /* defined(VK_EXT_metal_surface) */
  2141. #if defined(VK_EXT_multi_draw)
  2142. PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT;
  2143. PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT;
  2144. #endif /* defined(VK_EXT_multi_draw) */
  2145. #if defined(VK_EXT_opacity_micromap)
  2146. PFN_vkBuildMicromapsEXT vkBuildMicromapsEXT;
  2147. PFN_vkCmdBuildMicromapsEXT vkCmdBuildMicromapsEXT;
  2148. PFN_vkCmdCopyMemoryToMicromapEXT vkCmdCopyMemoryToMicromapEXT;
  2149. PFN_vkCmdCopyMicromapEXT vkCmdCopyMicromapEXT;
  2150. PFN_vkCmdCopyMicromapToMemoryEXT vkCmdCopyMicromapToMemoryEXT;
  2151. PFN_vkCmdWriteMicromapsPropertiesEXT vkCmdWriteMicromapsPropertiesEXT;
  2152. PFN_vkCopyMemoryToMicromapEXT vkCopyMemoryToMicromapEXT;
  2153. PFN_vkCopyMicromapEXT vkCopyMicromapEXT;
  2154. PFN_vkCopyMicromapToMemoryEXT vkCopyMicromapToMemoryEXT;
  2155. PFN_vkCreateMicromapEXT vkCreateMicromapEXT;
  2156. PFN_vkDestroyMicromapEXT vkDestroyMicromapEXT;
  2157. PFN_vkGetDeviceMicromapCompatibilityEXT vkGetDeviceMicromapCompatibilityEXT;
  2158. PFN_vkGetMicromapBuildSizesEXT vkGetMicromapBuildSizesEXT;
  2159. PFN_vkWriteMicromapsPropertiesEXT vkWriteMicromapsPropertiesEXT;
  2160. #endif /* defined(VK_EXT_opacity_micromap) */
  2161. #if defined(VK_EXT_pageable_device_local_memory)
  2162. PFN_vkSetDeviceMemoryPriorityEXT vkSetDeviceMemoryPriorityEXT;
  2163. #endif /* defined(VK_EXT_pageable_device_local_memory) */
  2164. #if defined(VK_EXT_pipeline_properties)
  2165. PFN_vkGetPipelinePropertiesEXT vkGetPipelinePropertiesEXT;
  2166. #endif /* defined(VK_EXT_pipeline_properties) */
  2167. #if defined(VK_EXT_private_data)
  2168. PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT;
  2169. PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT;
  2170. PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT;
  2171. PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT;
  2172. #endif /* defined(VK_EXT_private_data) */
  2173. #if defined(VK_EXT_sample_locations)
  2174. PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT;
  2175. PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT;
  2176. #endif /* defined(VK_EXT_sample_locations) */
  2177. #if defined(VK_EXT_shader_module_identifier)
  2178. PFN_vkGetShaderModuleCreateInfoIdentifierEXT vkGetShaderModuleCreateInfoIdentifierEXT;
  2179. PFN_vkGetShaderModuleIdentifierEXT vkGetShaderModuleIdentifierEXT;
  2180. #endif /* defined(VK_EXT_shader_module_identifier) */
  2181. #if defined(VK_EXT_tooling_info)
  2182. PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT;
  2183. #endif /* defined(VK_EXT_tooling_info) */
  2184. #if defined(VK_EXT_transform_feedback)
  2185. PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT;
  2186. PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT;
  2187. PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT;
  2188. PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT;
  2189. PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT;
  2190. PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT;
  2191. #endif /* defined(VK_EXT_transform_feedback) */
  2192. #if defined(VK_EXT_validation_cache)
  2193. PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT;
  2194. PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT;
  2195. PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT;
  2196. PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT;
  2197. #endif /* defined(VK_EXT_validation_cache) */
  2198. #if defined(VK_EXT_vertex_input_dynamic_state)
  2199. PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT;
  2200. #endif /* defined(VK_EXT_vertex_input_dynamic_state) */
  2201. #if defined(VK_FUCHSIA_buffer_collection)
  2202. PFN_vkCreateBufferCollectionFUCHSIA vkCreateBufferCollectionFUCHSIA;
  2203. PFN_vkDestroyBufferCollectionFUCHSIA vkDestroyBufferCollectionFUCHSIA;
  2204. PFN_vkGetBufferCollectionPropertiesFUCHSIA vkGetBufferCollectionPropertiesFUCHSIA;
  2205. PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA vkSetBufferCollectionBufferConstraintsFUCHSIA;
  2206. PFN_vkSetBufferCollectionImageConstraintsFUCHSIA vkSetBufferCollectionImageConstraintsFUCHSIA;
  2207. #endif /* defined(VK_FUCHSIA_buffer_collection) */
  2208. #if defined(VK_FUCHSIA_external_memory)
  2209. PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA;
  2210. PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA;
  2211. #endif /* defined(VK_FUCHSIA_external_memory) */
  2212. #if defined(VK_FUCHSIA_external_semaphore)
  2213. PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA;
  2214. PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA;
  2215. #endif /* defined(VK_FUCHSIA_external_semaphore) */
  2216. #if defined(VK_FUCHSIA_imagepipe_surface)
  2217. PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA;
  2218. #endif /* defined(VK_FUCHSIA_imagepipe_surface) */
  2219. #if defined(VK_GGP_stream_descriptor_surface)
  2220. PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP;
  2221. #endif /* defined(VK_GGP_stream_descriptor_surface) */
  2222. #if defined(VK_GOOGLE_display_timing)
  2223. PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE;
  2224. PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE;
  2225. #endif /* defined(VK_GOOGLE_display_timing) */
  2226. #if defined(VK_HUAWEI_invocation_mask)
  2227. PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI;
  2228. #endif /* defined(VK_HUAWEI_invocation_mask) */
  2229. #if defined(VK_HUAWEI_subpass_shading)
  2230. PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI;
  2231. PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI;
  2232. #endif /* defined(VK_HUAWEI_subpass_shading) */
  2233. #if defined(VK_INTEL_performance_query)
  2234. PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL;
  2235. PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL;
  2236. PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL;
  2237. PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL;
  2238. PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL;
  2239. PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL;
  2240. PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL;
  2241. PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL;
  2242. PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL;
  2243. #endif /* defined(VK_INTEL_performance_query) */
  2244. #if defined(VK_KHR_acceleration_structure)
  2245. PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR;
  2246. PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR;
  2247. PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR;
  2248. PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR;
  2249. PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR;
  2250. PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR;
  2251. PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR;
  2252. PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR;
  2253. PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR;
  2254. PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR;
  2255. PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR;
  2256. PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR;
  2257. PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR;
  2258. PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR;
  2259. PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR;
  2260. PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR;
  2261. #endif /* defined(VK_KHR_acceleration_structure) */
  2262. #if defined(VK_KHR_android_surface)
  2263. PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR;
  2264. #endif /* defined(VK_KHR_android_surface) */
  2265. #if defined(VK_KHR_bind_memory2)
  2266. PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
  2267. PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
  2268. #endif /* defined(VK_KHR_bind_memory2) */
  2269. #if defined(VK_KHR_buffer_device_address)
  2270. PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
  2271. PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
  2272. PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
  2273. #endif /* defined(VK_KHR_buffer_device_address) */
  2274. #if defined(VK_KHR_copy_commands2)
  2275. PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR;
  2276. PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR;
  2277. PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR;
  2278. PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR;
  2279. PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR;
  2280. PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR;
  2281. #endif /* defined(VK_KHR_copy_commands2) */
  2282. #if defined(VK_KHR_create_renderpass2)
  2283. PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
  2284. PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
  2285. PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
  2286. PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
  2287. #endif /* defined(VK_KHR_create_renderpass2) */
  2288. #if defined(VK_KHR_deferred_host_operations)
  2289. PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR;
  2290. PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR;
  2291. PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR;
  2292. PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR;
  2293. PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR;
  2294. #endif /* defined(VK_KHR_deferred_host_operations) */
  2295. #if defined(VK_KHR_descriptor_update_template)
  2296. PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
  2297. PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
  2298. PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
  2299. #endif /* defined(VK_KHR_descriptor_update_template) */
  2300. #if defined(VK_KHR_device_group)
  2301. PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
  2302. PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
  2303. PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
  2304. #endif /* defined(VK_KHR_device_group) */
  2305. #if defined(VK_KHR_device_group_creation)
  2306. PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR;
  2307. #endif /* defined(VK_KHR_device_group_creation) */
  2308. #if defined(VK_KHR_display)
  2309. PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR;
  2310. PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR;
  2311. PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR;
  2312. PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR;
  2313. PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR;
  2314. PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR;
  2315. PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR;
  2316. #endif /* defined(VK_KHR_display) */
  2317. #if defined(VK_KHR_display_swapchain)
  2318. PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
  2319. #endif /* defined(VK_KHR_display_swapchain) */
  2320. #if defined(VK_KHR_draw_indirect_count)
  2321. PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
  2322. PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
  2323. #endif /* defined(VK_KHR_draw_indirect_count) */
  2324. #if defined(VK_KHR_dynamic_rendering)
  2325. PFN_vkCmdBeginRenderingKHR vkCmdBeginRenderingKHR;
  2326. PFN_vkCmdEndRenderingKHR vkCmdEndRenderingKHR;
  2327. #endif /* defined(VK_KHR_dynamic_rendering) */
  2328. #if defined(VK_KHR_external_fence_capabilities)
  2329. PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR;
  2330. #endif /* defined(VK_KHR_external_fence_capabilities) */
  2331. #if defined(VK_KHR_external_fence_fd)
  2332. PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
  2333. PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
  2334. #endif /* defined(VK_KHR_external_fence_fd) */
  2335. #if defined(VK_KHR_external_fence_win32)
  2336. PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
  2337. PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
  2338. #endif /* defined(VK_KHR_external_fence_win32) */
  2339. #if defined(VK_KHR_external_memory_capabilities)
  2340. PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR;
  2341. #endif /* defined(VK_KHR_external_memory_capabilities) */
  2342. #if defined(VK_KHR_external_memory_fd)
  2343. PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
  2344. PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
  2345. #endif /* defined(VK_KHR_external_memory_fd) */
  2346. #if defined(VK_KHR_external_memory_win32)
  2347. PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
  2348. PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
  2349. #endif /* defined(VK_KHR_external_memory_win32) */
  2350. #if defined(VK_KHR_external_semaphore_capabilities)
  2351. PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
  2352. #endif /* defined(VK_KHR_external_semaphore_capabilities) */
  2353. #if defined(VK_KHR_external_semaphore_fd)
  2354. PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
  2355. PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
  2356. #endif /* defined(VK_KHR_external_semaphore_fd) */
  2357. #if defined(VK_KHR_external_semaphore_win32)
  2358. PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
  2359. PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
  2360. #endif /* defined(VK_KHR_external_semaphore_win32) */
  2361. #if defined(VK_KHR_fragment_shading_rate)
  2362. PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR;
  2363. PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR;
  2364. #endif /* defined(VK_KHR_fragment_shading_rate) */
  2365. #if defined(VK_KHR_get_display_properties2)
  2366. PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR;
  2367. PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR;
  2368. PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR;
  2369. PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR;
  2370. #endif /* defined(VK_KHR_get_display_properties2) */
  2371. #if defined(VK_KHR_get_memory_requirements2)
  2372. PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
  2373. PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
  2374. PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
  2375. #endif /* defined(VK_KHR_get_memory_requirements2) */
  2376. #if defined(VK_KHR_get_physical_device_properties2)
  2377. PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR;
  2378. PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR;
  2379. PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR;
  2380. PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
  2381. PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR;
  2382. PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR;
  2383. PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
  2384. #endif /* defined(VK_KHR_get_physical_device_properties2) */
  2385. #if defined(VK_KHR_get_surface_capabilities2)
  2386. PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR;
  2387. PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR;
  2388. #endif /* defined(VK_KHR_get_surface_capabilities2) */
  2389. #if defined(VK_KHR_maintenance1)
  2390. PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
  2391. #endif /* defined(VK_KHR_maintenance1) */
  2392. #if defined(VK_KHR_maintenance3)
  2393. PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
  2394. #endif /* defined(VK_KHR_maintenance3) */
  2395. #if defined(VK_KHR_maintenance4)
  2396. PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirementsKHR;
  2397. PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirementsKHR;
  2398. PFN_vkGetDeviceImageSparseMemoryRequirementsKHR vkGetDeviceImageSparseMemoryRequirementsKHR;
  2399. #endif /* defined(VK_KHR_maintenance4) */
  2400. #if defined(VK_KHR_performance_query)
  2401. PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
  2402. PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
  2403. PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
  2404. PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
  2405. #endif /* defined(VK_KHR_performance_query) */
  2406. #if defined(VK_KHR_pipeline_executable_properties)
  2407. PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
  2408. PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
  2409. PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
  2410. #endif /* defined(VK_KHR_pipeline_executable_properties) */
  2411. #if defined(VK_KHR_present_wait)
  2412. PFN_vkWaitForPresentKHR vkWaitForPresentKHR;
  2413. #endif /* defined(VK_KHR_present_wait) */
  2414. #if defined(VK_KHR_push_descriptor)
  2415. PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
  2416. #endif /* defined(VK_KHR_push_descriptor) */
  2417. #if defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline)
  2418. PFN_vkCmdTraceRaysIndirect2KHR vkCmdTraceRaysIndirect2KHR;
  2419. #endif /* defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline) */
  2420. #if defined(VK_KHR_ray_tracing_pipeline)
  2421. PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR;
  2422. PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR;
  2423. PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR;
  2424. PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR;
  2425. PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR;
  2426. PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR;
  2427. PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR;
  2428. #endif /* defined(VK_KHR_ray_tracing_pipeline) */
  2429. #if defined(VK_KHR_sampler_ycbcr_conversion)
  2430. PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
  2431. PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
  2432. #endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
  2433. #if defined(VK_KHR_shared_presentable_image)
  2434. PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
  2435. #endif /* defined(VK_KHR_shared_presentable_image) */
  2436. #if defined(VK_KHR_surface)
  2437. PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR;
  2438. PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR;
  2439. PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR;
  2440. PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR;
  2441. PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR;
  2442. #endif /* defined(VK_KHR_surface) */
  2443. #if defined(VK_KHR_swapchain)
  2444. PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
  2445. PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
  2446. PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
  2447. PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
  2448. PFN_vkQueuePresentKHR vkQueuePresentKHR;
  2449. #endif /* defined(VK_KHR_swapchain) */
  2450. #if defined(VK_KHR_synchronization2)
  2451. PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR;
  2452. PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR;
  2453. PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR;
  2454. PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR;
  2455. PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR;
  2456. PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR;
  2457. #endif /* defined(VK_KHR_synchronization2) */
  2458. #if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
  2459. PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD;
  2460. #endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
  2461. #if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
  2462. PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV;
  2463. #endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
  2464. #if defined(VK_KHR_timeline_semaphore)
  2465. PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
  2466. PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
  2467. PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
  2468. #endif /* defined(VK_KHR_timeline_semaphore) */
  2469. #if defined(VK_KHR_video_decode_queue)
  2470. PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR;
  2471. #endif /* defined(VK_KHR_video_decode_queue) */
  2472. #if defined(VK_KHR_video_encode_queue)
  2473. PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR;
  2474. #endif /* defined(VK_KHR_video_encode_queue) */
  2475. #if defined(VK_KHR_video_queue)
  2476. PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR;
  2477. PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR;
  2478. PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR;
  2479. PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR;
  2480. PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR;
  2481. PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR;
  2482. PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR;
  2483. PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR;
  2484. PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR;
  2485. PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR;
  2486. PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR;
  2487. PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR;
  2488. #endif /* defined(VK_KHR_video_queue) */
  2489. #if defined(VK_KHR_wayland_surface)
  2490. PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR;
  2491. PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR;
  2492. #endif /* defined(VK_KHR_wayland_surface) */
  2493. #if defined(VK_KHR_win32_surface)
  2494. PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR;
  2495. PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR;
  2496. #endif /* defined(VK_KHR_win32_surface) */
  2497. #if defined(VK_KHR_xcb_surface)
  2498. PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR;
  2499. PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR;
  2500. #endif /* defined(VK_KHR_xcb_surface) */
  2501. #if defined(VK_KHR_xlib_surface)
  2502. PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR;
  2503. PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR;
  2504. #endif /* defined(VK_KHR_xlib_surface) */
  2505. #if defined(VK_MVK_ios_surface)
  2506. PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK;
  2507. #endif /* defined(VK_MVK_ios_surface) */
  2508. #if defined(VK_MVK_macos_surface)
  2509. PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK;
  2510. #endif /* defined(VK_MVK_macos_surface) */
  2511. #if defined(VK_NN_vi_surface)
  2512. PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN;
  2513. #endif /* defined(VK_NN_vi_surface) */
  2514. #if defined(VK_NVX_binary_import)
  2515. PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX;
  2516. PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX;
  2517. PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX;
  2518. PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX;
  2519. PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX;
  2520. #endif /* defined(VK_NVX_binary_import) */
  2521. #if defined(VK_NVX_image_view_handle)
  2522. PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX;
  2523. PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX;
  2524. #endif /* defined(VK_NVX_image_view_handle) */
  2525. #if defined(VK_NV_acquire_winrt_display)
  2526. PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV;
  2527. PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV;
  2528. #endif /* defined(VK_NV_acquire_winrt_display) */
  2529. #if defined(VK_NV_clip_space_w_scaling)
  2530. PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV;
  2531. #endif /* defined(VK_NV_clip_space_w_scaling) */
  2532. #if defined(VK_NV_cooperative_matrix)
  2533. PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV;
  2534. #endif /* defined(VK_NV_cooperative_matrix) */
  2535. #if defined(VK_NV_coverage_reduction_mode)
  2536. PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
  2537. #endif /* defined(VK_NV_coverage_reduction_mode) */
  2538. #if defined(VK_NV_device_diagnostic_checkpoints)
  2539. PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV;
  2540. PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV;
  2541. #endif /* defined(VK_NV_device_diagnostic_checkpoints) */
  2542. #if defined(VK_NV_device_generated_commands)
  2543. PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV;
  2544. PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV;
  2545. PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV;
  2546. PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV;
  2547. PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV;
  2548. PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV;
  2549. #endif /* defined(VK_NV_device_generated_commands) */
  2550. #if defined(VK_NV_external_memory_capabilities)
  2551. PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV;
  2552. #endif /* defined(VK_NV_external_memory_capabilities) */
  2553. #if defined(VK_NV_external_memory_rdma)
  2554. PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV;
  2555. #endif /* defined(VK_NV_external_memory_rdma) */
  2556. #if defined(VK_NV_external_memory_win32)
  2557. PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV;
  2558. #endif /* defined(VK_NV_external_memory_win32) */
  2559. #if defined(VK_NV_fragment_shading_rate_enums)
  2560. PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV;
  2561. #endif /* defined(VK_NV_fragment_shading_rate_enums) */
  2562. #if defined(VK_NV_mesh_shader)
  2563. PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV;
  2564. PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV;
  2565. PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV;
  2566. #endif /* defined(VK_NV_mesh_shader) */
  2567. #if defined(VK_NV_optical_flow)
  2568. PFN_vkBindOpticalFlowSessionImageNV vkBindOpticalFlowSessionImageNV;
  2569. PFN_vkCmdOpticalFlowExecuteNV vkCmdOpticalFlowExecuteNV;
  2570. PFN_vkCreateOpticalFlowSessionNV vkCreateOpticalFlowSessionNV;
  2571. PFN_vkDestroyOpticalFlowSessionNV vkDestroyOpticalFlowSessionNV;
  2572. PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV vkGetPhysicalDeviceOpticalFlowImageFormatsNV;
  2573. #endif /* defined(VK_NV_optical_flow) */
  2574. #if defined(VK_NV_ray_tracing)
  2575. PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV;
  2576. PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV;
  2577. PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV;
  2578. PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV;
  2579. PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV;
  2580. PFN_vkCompileDeferredNV vkCompileDeferredNV;
  2581. PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV;
  2582. PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV;
  2583. PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV;
  2584. PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV;
  2585. PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV;
  2586. PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV;
  2587. #endif /* defined(VK_NV_ray_tracing) */
  2588. #if defined(VK_NV_scissor_exclusive)
  2589. PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV;
  2590. #endif /* defined(VK_NV_scissor_exclusive) */
  2591. #if defined(VK_NV_shading_rate_image)
  2592. PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV;
  2593. PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV;
  2594. PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV;
  2595. #endif /* defined(VK_NV_shading_rate_image) */
  2596. #if defined(VK_QCOM_tile_properties)
  2597. PFN_vkGetDynamicRenderingTilePropertiesQCOM vkGetDynamicRenderingTilePropertiesQCOM;
  2598. PFN_vkGetFramebufferTilePropertiesQCOM vkGetFramebufferTilePropertiesQCOM;
  2599. #endif /* defined(VK_QCOM_tile_properties) */
  2600. #if defined(VK_QNX_screen_surface)
  2601. PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX;
  2602. PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX;
  2603. #endif /* defined(VK_QNX_screen_surface) */
  2604. #if defined(VK_VALVE_descriptor_set_host_mapping)
  2605. PFN_vkGetDescriptorSetHostMappingVALVE vkGetDescriptorSetHostMappingVALVE;
  2606. PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE vkGetDescriptorSetLayoutHostMappingInfoVALVE;
  2607. #endif /* defined(VK_VALVE_descriptor_set_host_mapping) */
  2608. #if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
  2609. PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT;
  2610. #endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
  2611. #if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
  2612. PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
  2613. #endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
  2614. #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
  2615. PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
  2616. PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
  2617. PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR;
  2618. #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
  2619. #if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
  2620. PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
  2621. #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
  2622. /* VOLK_GENERATE_PROTOTYPES_C */
  2623. #ifdef __GNUC__
  2624. # pragma GCC visibility pop
  2625. #endif
  2626. #ifdef __cplusplus
  2627. }
  2628. #endif
  2629. /* clang-format on */