-
Notifications
You must be signed in to change notification settings - Fork 0
/
platform_android.go
559 lines (553 loc) · 55.1 KB
/
platform_android.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
package vulkan
import "syscall"
import "unsafe"
var (
vulkan = syscall.NewLazyDLL("libvulkan.so")
PFN_vkCreateInstance = vulkan.NewProc("vkCreateInstance")
PFN_vkDestroyInstance = vulkan.NewProc("vkDestroyInstance")
PFN_vkEnumeratePhysicalDevices = vulkan.NewProc("vkEnumeratePhysicalDevices")
PFN_vkGetPhysicalDeviceFeatures = vulkan.NewProc("vkGetPhysicalDeviceFeatures")
PFN_vkGetPhysicalDeviceFormatProperties = vulkan.NewProc("vkGetPhysicalDeviceFormatProperties")
PFN_vkGetPhysicalDeviceImageFormatProperties = vulkan.NewProc("vkGetPhysicalDeviceImageFormatProperties")
PFN_vkGetPhysicalDeviceProperties = vulkan.NewProc("vkGetPhysicalDeviceProperties")
PFN_vkGetPhysicalDeviceQueueFamilyProperties = vulkan.NewProc("vkGetPhysicalDeviceQueueFamilyProperties")
PFN_vkGetPhysicalDeviceMemoryProperties = vulkan.NewProc("vkGetPhysicalDeviceMemoryProperties")
PFN_vkGetInstanceProcAddr = vulkan.NewProc("vkGetInstanceProcAddr")
PFN_vkGetDeviceProcAddr = vulkan.NewProc("vkGetDeviceProcAddr")
PFN_vkCreateDevice = vulkan.NewProc("vkCreateDevice")
PFN_vkDestroyDevice = vulkan.NewProc("vkDestroyDevice")
PFN_vkEnumerateInstanceExtensionProperties = vulkan.NewProc("vkEnumerateInstanceExtensionProperties")
PFN_vkEnumerateDeviceExtensionProperties = vulkan.NewProc("vkEnumerateDeviceExtensionProperties")
PFN_vkEnumerateInstanceLayerProperties = vulkan.NewProc("vkEnumerateInstanceLayerProperties")
PFN_vkEnumerateDeviceLayerProperties = vulkan.NewProc("vkEnumerateDeviceLayerProperties")
PFN_vkGetDeviceQueue = vulkan.NewProc("vkGetDeviceQueue")
PFN_vkQueueSubmit = vulkan.NewProc("vkQueueSubmit")
PFN_vkQueueWaitIdle = vulkan.NewProc("vkQueueWaitIdle")
PFN_vkDeviceWaitIdle = vulkan.NewProc("vkDeviceWaitIdle")
PFN_vkAllocateMemory = vulkan.NewProc("vkAllocateMemory")
PFN_vkFreeMemory = vulkan.NewProc("vkFreeMemory")
PFN_vkMapMemory = vulkan.NewProc("vkMapMemory")
PFN_vkUnmapMemory = vulkan.NewProc("vkUnmapMemory")
PFN_vkFlushMappedMemoryRanges = vulkan.NewProc("vkFlushMappedMemoryRanges")
PFN_vkInvalidateMappedMemoryRanges = vulkan.NewProc("vkInvalidateMappedMemoryRanges")
PFN_vkGetDeviceMemoryCommitment = vulkan.NewProc("vkGetDeviceMemoryCommitment")
PFN_vkBindBufferMemory = vulkan.NewProc("vkBindBufferMemory")
PFN_vkBindImageMemory = vulkan.NewProc("vkBindImageMemory")
PFN_vkGetBufferMemoryRequirements = vulkan.NewProc("vkGetBufferMemoryRequirements")
PFN_vkGetImageMemoryRequirements = vulkan.NewProc("vkGetImageMemoryRequirements")
PFN_vkGetImageSparseMemoryRequirements = vulkan.NewProc("vkGetImageSparseMemoryRequirements")
PFN_vkGetPhysicalDeviceSparseImageFormatProperties = vulkan.NewProc("vkGetPhysicalDeviceSparseImageFormatProperties")
PFN_vkQueueBindSparse = vulkan.NewProc("vkQueueBindSparse")
PFN_vkCreateFence = vulkan.NewProc("vkCreateFence")
PFN_vkDestroyFence = vulkan.NewProc("vkDestroyFence")
PFN_vkResetFences = vulkan.NewProc("vkResetFences")
PFN_vkGetFenceStatus = vulkan.NewProc("vkGetFenceStatus")
PFN_vkWaitForFences = vulkan.NewProc("vkWaitForFences")
PFN_vkCreateSemaphore = vulkan.NewProc("vkCreateSemaphore")
PFN_vkDestroySemaphore = vulkan.NewProc("vkDestroySemaphore")
PFN_vkCreateEvent = vulkan.NewProc("vkCreateEvent")
PFN_vkDestroyEvent = vulkan.NewProc("vkDestroyEvent")
PFN_vkGetEventStatus = vulkan.NewProc("vkGetEventStatus")
PFN_vkSetEvent = vulkan.NewProc("vkSetEvent")
PFN_vkResetEvent = vulkan.NewProc("vkResetEvent")
PFN_vkCreateQueryPool = vulkan.NewProc("vkCreateQueryPool")
PFN_vkDestroyQueryPool = vulkan.NewProc("vkDestroyQueryPool")
PFN_vkGetQueryPoolResults = vulkan.NewProc("vkGetQueryPoolResults")
PFN_vkCreateBuffer = vulkan.NewProc("vkCreateBuffer")
PFN_vkDestroyBuffer = vulkan.NewProc("vkDestroyBuffer")
PFN_vkCreateBufferView = vulkan.NewProc("vkCreateBufferView")
PFN_vkDestroyBufferView = vulkan.NewProc("vkDestroyBufferView")
PFN_vkCreateImage = vulkan.NewProc("vkCreateImage")
PFN_vkDestroyImage = vulkan.NewProc("vkDestroyImage")
PFN_vkGetImageSubresourceLayout = vulkan.NewProc("vkGetImageSubresourceLayout")
PFN_vkCreateImageView = vulkan.NewProc("vkCreateImageView")
PFN_vkDestroyImageView = vulkan.NewProc("vkDestroyImageView")
PFN_vkCreateShaderModule = vulkan.NewProc("vkCreateShaderModule")
PFN_vkDestroyShaderModule = vulkan.NewProc("vkDestroyShaderModule")
PFN_vkCreatePipelineCache = vulkan.NewProc("vkCreatePipelineCache")
PFN_vkDestroyPipelineCache = vulkan.NewProc("vkDestroyPipelineCache")
PFN_vkGetPipelineCacheData = vulkan.NewProc("vkGetPipelineCacheData")
PFN_vkMergePipelineCaches = vulkan.NewProc("vkMergePipelineCaches")
PFN_vkCreateGraphicsPipelines = vulkan.NewProc("vkCreateGraphicsPipelines")
PFN_vkCreateComputePipelines = vulkan.NewProc("vkCreateComputePipelines")
PFN_vkDestroyPipeline = vulkan.NewProc("vkDestroyPipeline")
PFN_vkCreatePipelineLayout = vulkan.NewProc("vkCreatePipelineLayout")
PFN_vkDestroyPipelineLayout = vulkan.NewProc("vkDestroyPipelineLayout")
PFN_vkCreateSampler = vulkan.NewProc("vkCreateSampler")
PFN_vkDestroySampler = vulkan.NewProc("vkDestroySampler")
PFN_vkCreateDescriptorSetLayout = vulkan.NewProc("vkCreateDescriptorSetLayout")
PFN_vkDestroyDescriptorSetLayout = vulkan.NewProc("vkDestroyDescriptorSetLayout")
PFN_vkCreateDescriptorPool = vulkan.NewProc("vkCreateDescriptorPool")
PFN_vkDestroyDescriptorPool = vulkan.NewProc("vkDestroyDescriptorPool")
PFN_vkResetDescriptorPool = vulkan.NewProc("vkResetDescriptorPool")
PFN_vkAllocateDescriptorSets = vulkan.NewProc("vkAllocateDescriptorSets")
PFN_vkFreeDescriptorSets = vulkan.NewProc("vkFreeDescriptorSets")
PFN_vkUpdateDescriptorSets = vulkan.NewProc("vkUpdateDescriptorSets")
PFN_vkCreateFramebuffer = vulkan.NewProc("vkCreateFramebuffer")
PFN_vkDestroyFramebuffer = vulkan.NewProc("vkDestroyFramebuffer")
PFN_vkCreateRenderPass = vulkan.NewProc("vkCreateRenderPass")
PFN_vkDestroyRenderPass = vulkan.NewProc("vkDestroyRenderPass")
PFN_vkGetRenderAreaGranularity = vulkan.NewProc("vkGetRenderAreaGranularity")
PFN_vkCreateCommandPool = vulkan.NewProc("vkCreateCommandPool")
PFN_vkDestroyCommandPool = vulkan.NewProc("vkDestroyCommandPool")
PFN_vkResetCommandPool = vulkan.NewProc("vkResetCommandPool")
PFN_vkAllocateCommandBuffers = vulkan.NewProc("vkAllocateCommandBuffers")
PFN_vkFreeCommandBuffers = vulkan.NewProc("vkFreeCommandBuffers")
PFN_vkBeginCommandBuffer = vulkan.NewProc("vkBeginCommandBuffer")
PFN_vkEndCommandBuffer = vulkan.NewProc("vkEndCommandBuffer")
PFN_vkResetCommandBuffer = vulkan.NewProc("vkResetCommandBuffer")
PFN_vkCmdBindPipeline = vulkan.NewProc("vkCmdBindPipeline")
PFN_vkCmdSetViewport = vulkan.NewProc("vkCmdSetViewport")
PFN_vkCmdSetScissor = vulkan.NewProc("vkCmdSetScissor")
PFN_vkCmdSetLineWidth = vulkan.NewProc("vkCmdSetLineWidth")
PFN_vkCmdSetDepthBias = vulkan.NewProc("vkCmdSetDepthBias")
PFN_vkCmdSetBlendConstants = vulkan.NewProc("vkCmdSetBlendConstants")
PFN_vkCmdSetDepthBounds = vulkan.NewProc("vkCmdSetDepthBounds")
PFN_vkCmdSetStencilCompareMask = vulkan.NewProc("vkCmdSetStencilCompareMask")
PFN_vkCmdSetStencilWriteMask = vulkan.NewProc("vkCmdSetStencilWriteMask")
PFN_vkCmdSetStencilReference = vulkan.NewProc("vkCmdSetStencilReference")
PFN_vkCmdBindDescriptorSets = vulkan.NewProc("vkCmdBindDescriptorSets")
PFN_vkCmdBindIndexBuffer = vulkan.NewProc("vkCmdBindIndexBuffer")
PFN_vkCmdBindVertexBuffers = vulkan.NewProc("vkCmdBindVertexBuffers")
PFN_vkCmdDraw = vulkan.NewProc("vkCmdDraw")
PFN_vkCmdDrawIndexed = vulkan.NewProc("vkCmdDrawIndexed")
PFN_vkCmdDrawIndirect = vulkan.NewProc("vkCmdDrawIndirect")
PFN_vkCmdDrawIndexedIndirect = vulkan.NewProc("vkCmdDrawIndexedIndirect")
PFN_vkCmdDispatch = vulkan.NewProc("vkCmdDispatch")
PFN_vkCmdDispatchIndirect = vulkan.NewProc("vkCmdDispatchIndirect")
PFN_vkCmdCopyBuffer = vulkan.NewProc("vkCmdCopyBuffer")
PFN_vkCmdCopyImage = vulkan.NewProc("vkCmdCopyImage")
PFN_vkCmdBlitImage = vulkan.NewProc("vkCmdBlitImage")
PFN_vkCmdCopyBufferToImage = vulkan.NewProc("vkCmdCopyBufferToImage")
PFN_vkCmdCopyImageToBuffer = vulkan.NewProc("vkCmdCopyImageToBuffer")
PFN_vkCmdUpdateBuffer = vulkan.NewProc("vkCmdUpdateBuffer")
PFN_vkCmdFillBuffer = vulkan.NewProc("vkCmdFillBuffer")
PFN_vkCmdClearColorImage = vulkan.NewProc("vkCmdClearColorImage")
PFN_vkCmdClearDepthStencilImage = vulkan.NewProc("vkCmdClearDepthStencilImage")
PFN_vkCmdClearAttachments = vulkan.NewProc("vkCmdClearAttachments")
PFN_vkCmdResolveImage = vulkan.NewProc("vkCmdResolveImage")
PFN_vkCmdSetEvent = vulkan.NewProc("vkCmdSetEvent")
PFN_vkCmdResetEvent = vulkan.NewProc("vkCmdResetEvent")
PFN_vkCmdWaitEvents = vulkan.NewProc("vkCmdWaitEvents")
PFN_vkCmdPipelineBarrier = vulkan.NewProc("vkCmdPipelineBarrier")
PFN_vkCmdBeginQuery = vulkan.NewProc("vkCmdBeginQuery")
PFN_vkCmdEndQuery = vulkan.NewProc("vkCmdEndQuery")
PFN_vkCmdResetQueryPool = vulkan.NewProc("vkCmdResetQueryPool")
PFN_vkCmdWriteTimestamp = vulkan.NewProc("vkCmdWriteTimestamp")
PFN_vkCmdCopyQueryPoolResults = vulkan.NewProc("vkCmdCopyQueryPoolResults")
PFN_vkCmdPushConstants = vulkan.NewProc("vkCmdPushConstants")
PFN_vkCmdBeginRenderPass = vulkan.NewProc("vkCmdBeginRenderPass")
PFN_vkCmdNextSubpass = vulkan.NewProc("vkCmdNextSubpass")
PFN_vkCmdEndRenderPass = vulkan.NewProc("vkCmdEndRenderPass")
PFN_vkCmdExecuteCommands = vulkan.NewProc("vkCmdExecuteCommands")
PFN_vkEnumerateInstanceVersion = vulkan.NewProc("vkEnumerateInstanceVersion")
PFN_vkBindBufferMemory2 = vulkan.NewProc("vkBindBufferMemory2")
PFN_vkBindImageMemory2 = vulkan.NewProc("vkBindImageMemory2")
PFN_vkGetDeviceGroupPeerMemoryFeatures = vulkan.NewProc("vkGetDeviceGroupPeerMemoryFeatures")
PFN_vkCmdSetDeviceMask = vulkan.NewProc("vkCmdSetDeviceMask")
PFN_vkCmdDispatchBase = vulkan.NewProc("vkCmdDispatchBase")
PFN_vkEnumeratePhysicalDeviceGroups = vulkan.NewProc("vkEnumeratePhysicalDeviceGroups")
PFN_vkGetImageMemoryRequirements2 = vulkan.NewProc("vkGetImageMemoryRequirements2")
PFN_vkGetBufferMemoryRequirements2 = vulkan.NewProc("vkGetBufferMemoryRequirements2")
PFN_vkGetImageSparseMemoryRequirements2 = vulkan.NewProc("vkGetImageSparseMemoryRequirements2")
PFN_vkGetPhysicalDeviceFeatures2 = vulkan.NewProc("vkGetPhysicalDeviceFeatures2")
PFN_vkGetPhysicalDeviceProperties2 = vulkan.NewProc("vkGetPhysicalDeviceProperties2")
PFN_vkGetPhysicalDeviceFormatProperties2 = vulkan.NewProc("vkGetPhysicalDeviceFormatProperties2")
PFN_vkGetPhysicalDeviceImageFormatProperties2 = vulkan.NewProc("vkGetPhysicalDeviceImageFormatProperties2")
PFN_vkGetPhysicalDeviceQueueFamilyProperties2 = vulkan.NewProc("vkGetPhysicalDeviceQueueFamilyProperties2")
PFN_vkGetPhysicalDeviceMemoryProperties2 = vulkan.NewProc("vkGetPhysicalDeviceMemoryProperties2")
PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 = vulkan.NewProc("vkGetPhysicalDeviceSparseImageFormatProperties2")
PFN_vkTrimCommandPool = vulkan.NewProc("vkTrimCommandPool")
PFN_vkGetDeviceQueue2 = vulkan.NewProc("vkGetDeviceQueue2")
PFN_vkCreateSamplerYcbcrConversion = vulkan.NewProc("vkCreateSamplerYcbcrConversion")
PFN_vkDestroySamplerYcbcrConversion = vulkan.NewProc("vkDestroySamplerYcbcrConversion")
PFN_vkCreateDescriptorUpdateTemplate = vulkan.NewProc("vkCreateDescriptorUpdateTemplate")
PFN_vkDestroyDescriptorUpdateTemplate = vulkan.NewProc("vkDestroyDescriptorUpdateTemplate")
PFN_vkUpdateDescriptorSetWithTemplate = vulkan.NewProc("vkUpdateDescriptorSetWithTemplate")
PFN_vkGetPhysicalDeviceExternalBufferProperties = vulkan.NewProc("vkGetPhysicalDeviceExternalBufferProperties")
PFN_vkGetPhysicalDeviceExternalFenceProperties = vulkan.NewProc("vkGetPhysicalDeviceExternalFenceProperties")
PFN_vkGetPhysicalDeviceExternalSemaphoreProperties = vulkan.NewProc("vkGetPhysicalDeviceExternalSemaphoreProperties")
PFN_vkGetDescriptorSetLayoutSupport = vulkan.NewProc("vkGetDescriptorSetLayoutSupport")
PFN_vkCmdDrawIndirectCount = vulkan.NewProc("vkCmdDrawIndirectCount")
PFN_vkCmdDrawIndexedIndirectCount = vulkan.NewProc("vkCmdDrawIndexedIndirectCount")
PFN_vkCreateRenderPass2 = vulkan.NewProc("vkCreateRenderPass2")
PFN_vkCmdBeginRenderPass2 = vulkan.NewProc("vkCmdBeginRenderPass2")
PFN_vkCmdNextSubpass2 = vulkan.NewProc("vkCmdNextSubpass2")
PFN_vkCmdEndRenderPass2 = vulkan.NewProc("vkCmdEndRenderPass2")
PFN_vkResetQueryPool = vulkan.NewProc("vkResetQueryPool")
PFN_vkGetSemaphoreCounterValue = vulkan.NewProc("vkGetSemaphoreCounterValue")
PFN_vkWaitSemaphores = vulkan.NewProc("vkWaitSemaphores")
PFN_vkSignalSemaphore = vulkan.NewProc("vkSignalSemaphore")
PFN_vkGetBufferDeviceAddress = vulkan.NewProc("vkGetBufferDeviceAddress")
PFN_vkGetBufferOpaqueCaptureAddress = vulkan.NewProc("vkGetBufferOpaqueCaptureAddress")
PFN_vkGetDeviceMemoryOpaqueCaptureAddress = vulkan.NewProc("vkGetDeviceMemoryOpaqueCaptureAddress")
PFN_vkDestroySurfaceKHR = vulkan.NewProc("vkDestroySurfaceKHR")
PFN_vkGetPhysicalDeviceSurfaceSupportKHR = vulkan.NewProc("vkGetPhysicalDeviceSurfaceSupportKHR")
PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR = vulkan.NewProc("vkGetPhysicalDeviceSurfaceCapabilitiesKHR")
PFN_vkGetPhysicalDeviceSurfaceFormatsKHR = vulkan.NewProc("vkGetPhysicalDeviceSurfaceFormatsKHR")
PFN_vkGetPhysicalDeviceSurfacePresentModesKHR = vulkan.NewProc("vkGetPhysicalDeviceSurfacePresentModesKHR")
PFN_vkCreateSwapchainKHR = vulkan.NewProc("vkCreateSwapchainKHR")
PFN_vkDestroySwapchainKHR = vulkan.NewProc("vkDestroySwapchainKHR")
PFN_vkGetSwapchainImagesKHR = vulkan.NewProc("vkGetSwapchainImagesKHR")
PFN_vkAcquireNextImageKHR = vulkan.NewProc("vkAcquireNextImageKHR")
PFN_vkQueuePresentKHR = vulkan.NewProc("vkQueuePresentKHR")
PFN_vkGetDeviceGroupPresentCapabilitiesKHR = vulkan.NewProc("vkGetDeviceGroupPresentCapabilitiesKHR")
PFN_vkGetDeviceGroupSurfacePresentModesKHR = vulkan.NewProc("vkGetDeviceGroupSurfacePresentModesKHR")
PFN_vkGetPhysicalDevicePresentRectanglesKHR = vulkan.NewProc("vkGetPhysicalDevicePresentRectanglesKHR")
PFN_vkAcquireNextImage2KHR = vulkan.NewProc("vkAcquireNextImage2KHR")
PFN_vkGetPhysicalDeviceDisplayPropertiesKHR = vulkan.NewProc("vkGetPhysicalDeviceDisplayPropertiesKHR")
PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR = vulkan.NewProc("vkGetPhysicalDeviceDisplayPlanePropertiesKHR")
PFN_vkGetDisplayPlaneSupportedDisplaysKHR = vulkan.NewProc("vkGetDisplayPlaneSupportedDisplaysKHR")
PFN_vkGetDisplayModePropertiesKHR = vulkan.NewProc("vkGetDisplayModePropertiesKHR")
PFN_vkCreateDisplayModeKHR = vulkan.NewProc("vkCreateDisplayModeKHR")
PFN_vkGetDisplayPlaneCapabilitiesKHR = vulkan.NewProc("vkGetDisplayPlaneCapabilitiesKHR")
PFN_vkCreateDisplayPlaneSurfaceKHR = vulkan.NewProc("vkCreateDisplayPlaneSurfaceKHR")
PFN_vkCreateSharedSwapchainsKHR = vulkan.NewProc("vkCreateSharedSwapchainsKHR")
PFN_vkGetPhysicalDeviceFeatures2KHR = vulkan.NewProc("vkGetPhysicalDeviceFeatures2KHR")
PFN_vkGetPhysicalDeviceProperties2KHR = vulkan.NewProc("vkGetPhysicalDeviceProperties2KHR")
PFN_vkGetPhysicalDeviceFormatProperties2KHR = vulkan.NewProc("vkGetPhysicalDeviceFormatProperties2KHR")
PFN_vkGetPhysicalDeviceImageFormatProperties2KHR = vulkan.NewProc("vkGetPhysicalDeviceImageFormatProperties2KHR")
PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR = vulkan.NewProc("vkGetPhysicalDeviceQueueFamilyProperties2KHR")
PFN_vkGetPhysicalDeviceMemoryProperties2KHR = vulkan.NewProc("vkGetPhysicalDeviceMemoryProperties2KHR")
PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR = vulkan.NewProc("vkGetPhysicalDeviceSparseImageFormatProperties2KHR")
PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR = vulkan.NewProc("vkGetDeviceGroupPeerMemoryFeaturesKHR")
PFN_vkCmdSetDeviceMaskKHR = vulkan.NewProc("vkCmdSetDeviceMaskKHR")
PFN_vkCmdDispatchBaseKHR = vulkan.NewProc("vkCmdDispatchBaseKHR")
PFN_vkTrimCommandPoolKHR = vulkan.NewProc("vkTrimCommandPoolKHR")
PFN_vkEnumeratePhysicalDeviceGroupsKHR = vulkan.NewProc("vkEnumeratePhysicalDeviceGroupsKHR")
PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR = vulkan.NewProc("vkGetPhysicalDeviceExternalBufferPropertiesKHR")
PFN_vkGetMemoryFdKHR = vulkan.NewProc("vkGetMemoryFdKHR")
PFN_vkGetMemoryFdPropertiesKHR = vulkan.NewProc("vkGetMemoryFdPropertiesKHR")
PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = vulkan.NewProc("vkGetPhysicalDeviceExternalSemaphorePropertiesKHR")
PFN_vkImportSemaphoreFdKHR = vulkan.NewProc("vkImportSemaphoreFdKHR")
PFN_vkGetSemaphoreFdKHR = vulkan.NewProc("vkGetSemaphoreFdKHR")
PFN_vkCmdPushDescriptorSetKHR = vulkan.NewProc("vkCmdPushDescriptorSetKHR")
PFN_vkCmdPushDescriptorSetWithTemplateKHR = vulkan.NewProc("vkCmdPushDescriptorSetWithTemplateKHR")
PFN_vkCreateDescriptorUpdateTemplateKHR = vulkan.NewProc("vkCreateDescriptorUpdateTemplateKHR")
PFN_vkDestroyDescriptorUpdateTemplateKHR = vulkan.NewProc("vkDestroyDescriptorUpdateTemplateKHR")
PFN_vkUpdateDescriptorSetWithTemplateKHR = vulkan.NewProc("vkUpdateDescriptorSetWithTemplateKHR")
PFN_vkCreateRenderPass2KHR = vulkan.NewProc("vkCreateRenderPass2KHR")
PFN_vkCmdBeginRenderPass2KHR = vulkan.NewProc("vkCmdBeginRenderPass2KHR")
PFN_vkCmdNextSubpass2KHR = vulkan.NewProc("vkCmdNextSubpass2KHR")
PFN_vkCmdEndRenderPass2KHR = vulkan.NewProc("vkCmdEndRenderPass2KHR")
PFN_vkGetSwapchainStatusKHR = vulkan.NewProc("vkGetSwapchainStatusKHR")
PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR = vulkan.NewProc("vkGetPhysicalDeviceExternalFencePropertiesKHR")
PFN_vkImportFenceFdKHR = vulkan.NewProc("vkImportFenceFdKHR")
PFN_vkGetFenceFdKHR = vulkan.NewProc("vkGetFenceFdKHR")
PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = vulkan.NewProc("vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR")
PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = vulkan.NewProc("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR")
PFN_vkAcquireProfilingLockKHR = vulkan.NewProc("vkAcquireProfilingLockKHR")
PFN_vkReleaseProfilingLockKHR = vulkan.NewProc("vkReleaseProfilingLockKHR")
PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR = vulkan.NewProc("vkGetPhysicalDeviceSurfaceCapabilities2KHR")
PFN_vkGetPhysicalDeviceSurfaceFormats2KHR = vulkan.NewProc("vkGetPhysicalDeviceSurfaceFormats2KHR")
PFN_vkGetPhysicalDeviceDisplayProperties2KHR = vulkan.NewProc("vkGetPhysicalDeviceDisplayProperties2KHR")
PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR = vulkan.NewProc("vkGetPhysicalDeviceDisplayPlaneProperties2KHR")
PFN_vkGetDisplayModeProperties2KHR = vulkan.NewProc("vkGetDisplayModeProperties2KHR")
PFN_vkGetDisplayPlaneCapabilities2KHR = vulkan.NewProc("vkGetDisplayPlaneCapabilities2KHR")
PFN_vkGetImageMemoryRequirements2KHR = vulkan.NewProc("vkGetImageMemoryRequirements2KHR")
PFN_vkGetBufferMemoryRequirements2KHR = vulkan.NewProc("vkGetBufferMemoryRequirements2KHR")
PFN_vkGetImageSparseMemoryRequirements2KHR = vulkan.NewProc("vkGetImageSparseMemoryRequirements2KHR")
PFN_vkCreateSamplerYcbcrConversionKHR = vulkan.NewProc("vkCreateSamplerYcbcrConversionKHR")
PFN_vkDestroySamplerYcbcrConversionKHR = vulkan.NewProc("vkDestroySamplerYcbcrConversionKHR")
PFN_vkBindBufferMemory2KHR = vulkan.NewProc("vkBindBufferMemory2KHR")
PFN_vkBindImageMemory2KHR = vulkan.NewProc("vkBindImageMemory2KHR")
PFN_vkGetDescriptorSetLayoutSupportKHR = vulkan.NewProc("vkGetDescriptorSetLayoutSupportKHR")
PFN_vkCmdDrawIndirectCountKHR = vulkan.NewProc("vkCmdDrawIndirectCountKHR")
PFN_vkCmdDrawIndexedIndirectCountKHR = vulkan.NewProc("vkCmdDrawIndexedIndirectCountKHR")
PFN_vkGetSemaphoreCounterValueKHR = vulkan.NewProc("vkGetSemaphoreCounterValueKHR")
PFN_vkWaitSemaphoresKHR = vulkan.NewProc("vkWaitSemaphoresKHR")
PFN_vkSignalSemaphoreKHR = vulkan.NewProc("vkSignalSemaphoreKHR")
PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR = vulkan.NewProc("vkGetPhysicalDeviceFragmentShadingRatesKHR")
PFN_vkCmdSetFragmentShadingRateKHR = vulkan.NewProc("vkCmdSetFragmentShadingRateKHR")
PFN_vkWaitForPresentKHR = vulkan.NewProc("vkWaitForPresentKHR")
PFN_vkGetBufferDeviceAddressKHR = vulkan.NewProc("vkGetBufferDeviceAddressKHR")
PFN_vkGetBufferOpaqueCaptureAddressKHR = vulkan.NewProc("vkGetBufferOpaqueCaptureAddressKHR")
PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR = vulkan.NewProc("vkGetDeviceMemoryOpaqueCaptureAddressKHR")
PFN_vkCreateDeferredOperationKHR = vulkan.NewProc("vkCreateDeferredOperationKHR")
PFN_vkDestroyDeferredOperationKHR = vulkan.NewProc("vkDestroyDeferredOperationKHR")
PFN_vkGetDeferredOperationMaxConcurrencyKHR = vulkan.NewProc("vkGetDeferredOperationMaxConcurrencyKHR")
PFN_vkGetDeferredOperationResultKHR = vulkan.NewProc("vkGetDeferredOperationResultKHR")
PFN_vkDeferredOperationJoinKHR = vulkan.NewProc("vkDeferredOperationJoinKHR")
PFN_vkGetPipelineExecutablePropertiesKHR = vulkan.NewProc("vkGetPipelineExecutablePropertiesKHR")
PFN_vkGetPipelineExecutableStatisticsKHR = vulkan.NewProc("vkGetPipelineExecutableStatisticsKHR")
PFN_vkGetPipelineExecutableInternalRepresentationsKHR = vulkan.NewProc("vkGetPipelineExecutableInternalRepresentationsKHR")
PFN_vkCmdSetEvent2KHR = vulkan.NewProc("vkCmdSetEvent2KHR")
PFN_vkCmdResetEvent2KHR = vulkan.NewProc("vkCmdResetEvent2KHR")
PFN_vkCmdWaitEvents2KHR = vulkan.NewProc("vkCmdWaitEvents2KHR")
PFN_vkCmdPipelineBarrier2KHR = vulkan.NewProc("vkCmdPipelineBarrier2KHR")
PFN_vkCmdWriteTimestamp2KHR = vulkan.NewProc("vkCmdWriteTimestamp2KHR")
PFN_vkQueueSubmit2KHR = vulkan.NewProc("vkQueueSubmit2KHR")
PFN_vkCmdWriteBufferMarker2AMD = vulkan.NewProc("vkCmdWriteBufferMarker2AMD")
PFN_vkGetQueueCheckpointData2NV = vulkan.NewProc("vkGetQueueCheckpointData2NV")
PFN_vkCmdCopyBuffer2KHR = vulkan.NewProc("vkCmdCopyBuffer2KHR")
PFN_vkCmdCopyImage2KHR = vulkan.NewProc("vkCmdCopyImage2KHR")
PFN_vkCmdCopyBufferToImage2KHR = vulkan.NewProc("vkCmdCopyBufferToImage2KHR")
PFN_vkCmdCopyImageToBuffer2KHR = vulkan.NewProc("vkCmdCopyImageToBuffer2KHR")
PFN_vkCmdBlitImage2KHR = vulkan.NewProc("vkCmdBlitImage2KHR")
PFN_vkCmdResolveImage2KHR = vulkan.NewProc("vkCmdResolveImage2KHR")
PFN_vkCreateDebugReportCallbackEXT = vulkan.NewProc("vkCreateDebugReportCallbackEXT")
PFN_vkDestroyDebugReportCallbackEXT = vulkan.NewProc("vkDestroyDebugReportCallbackEXT")
PFN_vkDebugReportMessageEXT = vulkan.NewProc("vkDebugReportMessageEXT")
PFN_vkDebugMarkerSetObjectTagEXT = vulkan.NewProc("vkDebugMarkerSetObjectTagEXT")
PFN_vkDebugMarkerSetObjectNameEXT = vulkan.NewProc("vkDebugMarkerSetObjectNameEXT")
PFN_vkCmdDebugMarkerBeginEXT = vulkan.NewProc("vkCmdDebugMarkerBeginEXT")
PFN_vkCmdDebugMarkerEndEXT = vulkan.NewProc("vkCmdDebugMarkerEndEXT")
PFN_vkCmdDebugMarkerInsertEXT = vulkan.NewProc("vkCmdDebugMarkerInsertEXT")
PFN_vkCmdBindTransformFeedbackBuffersEXT = vulkan.NewProc("vkCmdBindTransformFeedbackBuffersEXT")
PFN_vkCmdBeginTransformFeedbackEXT = vulkan.NewProc("vkCmdBeginTransformFeedbackEXT")
PFN_vkCmdEndTransformFeedbackEXT = vulkan.NewProc("vkCmdEndTransformFeedbackEXT")
PFN_vkCmdBeginQueryIndexedEXT = vulkan.NewProc("vkCmdBeginQueryIndexedEXT")
PFN_vkCmdEndQueryIndexedEXT = vulkan.NewProc("vkCmdEndQueryIndexedEXT")
PFN_vkCmdDrawIndirectByteCountEXT = vulkan.NewProc("vkCmdDrawIndirectByteCountEXT")
PFN_vkCreateCuModuleNVX = vulkan.NewProc("vkCreateCuModuleNVX")
PFN_vkCreateCuFunctionNVX = vulkan.NewProc("vkCreateCuFunctionNVX")
PFN_vkDestroyCuModuleNVX = vulkan.NewProc("vkDestroyCuModuleNVX")
PFN_vkDestroyCuFunctionNVX = vulkan.NewProc("vkDestroyCuFunctionNVX")
PFN_vkCmdCuLaunchKernelNVX = vulkan.NewProc("vkCmdCuLaunchKernelNVX")
PFN_vkGetImageViewHandleNVX = vulkan.NewProc("vkGetImageViewHandleNVX")
PFN_vkGetImageViewAddressNVX = vulkan.NewProc("vkGetImageViewAddressNVX")
PFN_vkCmdDrawIndirectCountAMD = vulkan.NewProc("vkCmdDrawIndirectCountAMD")
PFN_vkCmdDrawIndexedIndirectCountAMD = vulkan.NewProc("vkCmdDrawIndexedIndirectCountAMD")
PFN_vkGetShaderInfoAMD = vulkan.NewProc("vkGetShaderInfoAMD")
PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV = vulkan.NewProc("vkGetPhysicalDeviceExternalImageFormatPropertiesNV")
PFN_vkCmdBeginConditionalRenderingEXT = vulkan.NewProc("vkCmdBeginConditionalRenderingEXT")
PFN_vkCmdEndConditionalRenderingEXT = vulkan.NewProc("vkCmdEndConditionalRenderingEXT")
PFN_vkCmdSetViewportWScalingNV = vulkan.NewProc("vkCmdSetViewportWScalingNV")
PFN_vkReleaseDisplayEXT = vulkan.NewProc("vkReleaseDisplayEXT")
PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT = vulkan.NewProc("vkGetPhysicalDeviceSurfaceCapabilities2EXT")
PFN_vkDisplayPowerControlEXT = vulkan.NewProc("vkDisplayPowerControlEXT")
PFN_vkRegisterDeviceEventEXT = vulkan.NewProc("vkRegisterDeviceEventEXT")
PFN_vkRegisterDisplayEventEXT = vulkan.NewProc("vkRegisterDisplayEventEXT")
PFN_vkGetSwapchainCounterEXT = vulkan.NewProc("vkGetSwapchainCounterEXT")
PFN_vkGetRefreshCycleDurationGOOGLE = vulkan.NewProc("vkGetRefreshCycleDurationGOOGLE")
PFN_vkGetPastPresentationTimingGOOGLE = vulkan.NewProc("vkGetPastPresentationTimingGOOGLE")
PFN_vkCmdSetDiscardRectangleEXT = vulkan.NewProc("vkCmdSetDiscardRectangleEXT")
PFN_vkSetHdrMetadataEXT = vulkan.NewProc("vkSetHdrMetadataEXT")
PFN_vkSetDebugUtilsObjectNameEXT = vulkan.NewProc("vkSetDebugUtilsObjectNameEXT")
PFN_vkSetDebugUtilsObjectTagEXT = vulkan.NewProc("vkSetDebugUtilsObjectTagEXT")
PFN_vkQueueBeginDebugUtilsLabelEXT = vulkan.NewProc("vkQueueBeginDebugUtilsLabelEXT")
PFN_vkQueueEndDebugUtilsLabelEXT = vulkan.NewProc("vkQueueEndDebugUtilsLabelEXT")
PFN_vkQueueInsertDebugUtilsLabelEXT = vulkan.NewProc("vkQueueInsertDebugUtilsLabelEXT")
PFN_vkCmdBeginDebugUtilsLabelEXT = vulkan.NewProc("vkCmdBeginDebugUtilsLabelEXT")
PFN_vkCmdEndDebugUtilsLabelEXT = vulkan.NewProc("vkCmdEndDebugUtilsLabelEXT")
PFN_vkCmdInsertDebugUtilsLabelEXT = vulkan.NewProc("vkCmdInsertDebugUtilsLabelEXT")
PFN_vkCreateDebugUtilsMessengerEXT = vulkan.NewProc("vkCreateDebugUtilsMessengerEXT")
PFN_vkDestroyDebugUtilsMessengerEXT = vulkan.NewProc("vkDestroyDebugUtilsMessengerEXT")
PFN_vkSubmitDebugUtilsMessageEXT = vulkan.NewProc("vkSubmitDebugUtilsMessageEXT")
PFN_vkCmdSetSampleLocationsEXT = vulkan.NewProc("vkCmdSetSampleLocationsEXT")
PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT = vulkan.NewProc("vkGetPhysicalDeviceMultisamplePropertiesEXT")
PFN_vkGetImageDrmFormatModifierPropertiesEXT = vulkan.NewProc("vkGetImageDrmFormatModifierPropertiesEXT")
PFN_vkCreateValidationCacheEXT = vulkan.NewProc("vkCreateValidationCacheEXT")
PFN_vkDestroyValidationCacheEXT = vulkan.NewProc("vkDestroyValidationCacheEXT")
PFN_vkMergeValidationCachesEXT = vulkan.NewProc("vkMergeValidationCachesEXT")
PFN_vkGetValidationCacheDataEXT = vulkan.NewProc("vkGetValidationCacheDataEXT")
PFN_vkCmdBindShadingRateImageNV = vulkan.NewProc("vkCmdBindShadingRateImageNV")
PFN_vkCmdSetViewportShadingRatePaletteNV = vulkan.NewProc("vkCmdSetViewportShadingRatePaletteNV")
PFN_vkCmdSetCoarseSampleOrderNV = vulkan.NewProc("vkCmdSetCoarseSampleOrderNV")
PFN_vkCreateAccelerationStructureNV = vulkan.NewProc("vkCreateAccelerationStructureNV")
PFN_vkDestroyAccelerationStructureNV = vulkan.NewProc("vkDestroyAccelerationStructureNV")
PFN_vkGetAccelerationStructureMemoryRequirementsNV = vulkan.NewProc("vkGetAccelerationStructureMemoryRequirementsNV")
PFN_vkBindAccelerationStructureMemoryNV = vulkan.NewProc("vkBindAccelerationStructureMemoryNV")
PFN_vkCmdBuildAccelerationStructureNV = vulkan.NewProc("vkCmdBuildAccelerationStructureNV")
PFN_vkCmdCopyAccelerationStructureNV = vulkan.NewProc("vkCmdCopyAccelerationStructureNV")
PFN_vkCmdTraceRaysNV = vulkan.NewProc("vkCmdTraceRaysNV")
PFN_vkCreateRayTracingPipelinesNV = vulkan.NewProc("vkCreateRayTracingPipelinesNV")
PFN_vkGetRayTracingShaderGroupHandlesKHR = vulkan.NewProc("vkGetRayTracingShaderGroupHandlesKHR")
PFN_vkGetRayTracingShaderGroupHandlesNV = vulkan.NewProc("vkGetRayTracingShaderGroupHandlesNV")
PFN_vkGetAccelerationStructureHandleNV = vulkan.NewProc("vkGetAccelerationStructureHandleNV")
PFN_vkCmdWriteAccelerationStructuresPropertiesNV = vulkan.NewProc("vkCmdWriteAccelerationStructuresPropertiesNV")
PFN_vkCompileDeferredNV = vulkan.NewProc("vkCompileDeferredNV")
PFN_vkGetMemoryHostPointerPropertiesEXT = vulkan.NewProc("vkGetMemoryHostPointerPropertiesEXT")
PFN_vkCmdWriteBufferMarkerAMD = vulkan.NewProc("vkCmdWriteBufferMarkerAMD")
PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = vulkan.NewProc("vkGetPhysicalDeviceCalibrateableTimeDomainsEXT")
PFN_vkGetCalibratedTimestampsEXT = vulkan.NewProc("vkGetCalibratedTimestampsEXT")
PFN_vkCmdDrawMeshTasksNV = vulkan.NewProc("vkCmdDrawMeshTasksNV")
PFN_vkCmdDrawMeshTasksIndirectNV = vulkan.NewProc("vkCmdDrawMeshTasksIndirectNV")
PFN_vkCmdDrawMeshTasksIndirectCountNV = vulkan.NewProc("vkCmdDrawMeshTasksIndirectCountNV")
PFN_vkCmdSetExclusiveScissorNV = vulkan.NewProc("vkCmdSetExclusiveScissorNV")
PFN_vkCmdSetCheckpointNV = vulkan.NewProc("vkCmdSetCheckpointNV")
PFN_vkGetQueueCheckpointDataNV = vulkan.NewProc("vkGetQueueCheckpointDataNV")
PFN_vkInitializePerformanceApiINTEL = vulkan.NewProc("vkInitializePerformanceApiINTEL")
PFN_vkUninitializePerformanceApiINTEL = vulkan.NewProc("vkUninitializePerformanceApiINTEL")
PFN_vkCmdSetPerformanceMarkerINTEL = vulkan.NewProc("vkCmdSetPerformanceMarkerINTEL")
PFN_vkCmdSetPerformanceStreamMarkerINTEL = vulkan.NewProc("vkCmdSetPerformanceStreamMarkerINTEL")
PFN_vkCmdSetPerformanceOverrideINTEL = vulkan.NewProc("vkCmdSetPerformanceOverrideINTEL")
PFN_vkAcquirePerformanceConfigurationINTEL = vulkan.NewProc("vkAcquirePerformanceConfigurationINTEL")
PFN_vkReleasePerformanceConfigurationINTEL = vulkan.NewProc("vkReleasePerformanceConfigurationINTEL")
PFN_vkQueueSetPerformanceConfigurationINTEL = vulkan.NewProc("vkQueueSetPerformanceConfigurationINTEL")
PFN_vkGetPerformanceParameterINTEL = vulkan.NewProc("vkGetPerformanceParameterINTEL")
PFN_vkSetLocalDimmingAMD = vulkan.NewProc("vkSetLocalDimmingAMD")
PFN_vkGetBufferDeviceAddressEXT = vulkan.NewProc("vkGetBufferDeviceAddressEXT")
PFN_vkGetPhysicalDeviceToolPropertiesEXT = vulkan.NewProc("vkGetPhysicalDeviceToolPropertiesEXT")
PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = vulkan.NewProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesNV")
PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = vulkan.NewProc("vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV")
PFN_vkCreateHeadlessSurfaceEXT = vulkan.NewProc("vkCreateHeadlessSurfaceEXT")
PFN_vkCmdSetLineStippleEXT = vulkan.NewProc("vkCmdSetLineStippleEXT")
PFN_vkResetQueryPoolEXT = vulkan.NewProc("vkResetQueryPoolEXT")
PFN_vkCmdSetCullModeEXT = vulkan.NewProc("vkCmdSetCullModeEXT")
PFN_vkCmdSetFrontFaceEXT = vulkan.NewProc("vkCmdSetFrontFaceEXT")
PFN_vkCmdSetPrimitiveTopologyEXT = vulkan.NewProc("vkCmdSetPrimitiveTopologyEXT")
PFN_vkCmdSetViewportWithCountEXT = vulkan.NewProc("vkCmdSetViewportWithCountEXT")
PFN_vkCmdSetScissorWithCountEXT = vulkan.NewProc("vkCmdSetScissorWithCountEXT")
PFN_vkCmdBindVertexBuffers2EXT = vulkan.NewProc("vkCmdBindVertexBuffers2EXT")
PFN_vkCmdSetDepthTestEnableEXT = vulkan.NewProc("vkCmdSetDepthTestEnableEXT")
PFN_vkCmdSetDepthWriteEnableEXT = vulkan.NewProc("vkCmdSetDepthWriteEnableEXT")
PFN_vkCmdSetDepthCompareOpEXT = vulkan.NewProc("vkCmdSetDepthCompareOpEXT")
PFN_vkCmdSetDepthBoundsTestEnableEXT = vulkan.NewProc("vkCmdSetDepthBoundsTestEnableEXT")
PFN_vkCmdSetStencilTestEnableEXT = vulkan.NewProc("vkCmdSetStencilTestEnableEXT")
PFN_vkCmdSetStencilOpEXT = vulkan.NewProc("vkCmdSetStencilOpEXT")
PFN_vkGetGeneratedCommandsMemoryRequirementsNV = vulkan.NewProc("vkGetGeneratedCommandsMemoryRequirementsNV")
PFN_vkCmdPreprocessGeneratedCommandsNV = vulkan.NewProc("vkCmdPreprocessGeneratedCommandsNV")
PFN_vkCmdExecuteGeneratedCommandsNV = vulkan.NewProc("vkCmdExecuteGeneratedCommandsNV")
PFN_vkCmdBindPipelineShaderGroupNV = vulkan.NewProc("vkCmdBindPipelineShaderGroupNV")
PFN_vkCreateIndirectCommandsLayoutNV = vulkan.NewProc("vkCreateIndirectCommandsLayoutNV")
PFN_vkDestroyIndirectCommandsLayoutNV = vulkan.NewProc("vkDestroyIndirectCommandsLayoutNV")
PFN_vkAcquireDrmDisplayEXT = vulkan.NewProc("vkAcquireDrmDisplayEXT")
PFN_vkGetDrmDisplayEXT = vulkan.NewProc("vkGetDrmDisplayEXT")
PFN_vkCreatePrivateDataSlotEXT = vulkan.NewProc("vkCreatePrivateDataSlotEXT")
PFN_vkDestroyPrivateDataSlotEXT = vulkan.NewProc("vkDestroyPrivateDataSlotEXT")
PFN_vkSetPrivateDataEXT = vulkan.NewProc("vkSetPrivateDataEXT")
PFN_vkGetPrivateDataEXT = vulkan.NewProc("vkGetPrivateDataEXT")
PFN_vkCmdSetFragmentShadingRateEnumNV = vulkan.NewProc("vkCmdSetFragmentShadingRateEnumNV")
PFN_vkAcquireWinrtDisplayNV = vulkan.NewProc("vkAcquireWinrtDisplayNV")
PFN_vkGetWinrtDisplayNV = vulkan.NewProc("vkGetWinrtDisplayNV")
PFN_vkCmdSetVertexInputEXT = vulkan.NewProc("vkCmdSetVertexInputEXT")
PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = vulkan.NewProc("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI")
PFN_vkCmdSubpassShadingHUAWEI = vulkan.NewProc("vkCmdSubpassShadingHUAWEI")
PFN_vkCmdBindInvocationMaskHUAWEI = vulkan.NewProc("vkCmdBindInvocationMaskHUAWEI")
PFN_vkGetMemoryRemoteAddressNV = vulkan.NewProc("vkGetMemoryRemoteAddressNV")
PFN_vkCmdSetPatchControlPointsEXT = vulkan.NewProc("vkCmdSetPatchControlPointsEXT")
PFN_vkCmdSetRasterizerDiscardEnableEXT = vulkan.NewProc("vkCmdSetRasterizerDiscardEnableEXT")
PFN_vkCmdSetDepthBiasEnableEXT = vulkan.NewProc("vkCmdSetDepthBiasEnableEXT")
PFN_vkCmdSetLogicOpEXT = vulkan.NewProc("vkCmdSetLogicOpEXT")
PFN_vkCmdSetPrimitiveRestartEnableEXT = vulkan.NewProc("vkCmdSetPrimitiveRestartEnableEXT")
PFN_vkCmdSetColorWriteEnableEXT = vulkan.NewProc("vkCmdSetColorWriteEnableEXT")
PFN_vkCmdDrawMultiEXT = vulkan.NewProc("vkCmdDrawMultiEXT")
PFN_vkCmdDrawMultiIndexedEXT = vulkan.NewProc("vkCmdDrawMultiIndexedEXT")
PFN_vkCreateAccelerationStructureKHR = vulkan.NewProc("vkCreateAccelerationStructureKHR")
PFN_vkDestroyAccelerationStructureKHR = vulkan.NewProc("vkDestroyAccelerationStructureKHR")
PFN_vkCmdBuildAccelerationStructuresKHR = vulkan.NewProc("vkCmdBuildAccelerationStructuresKHR")
PFN_vkCmdBuildAccelerationStructuresIndirectKHR = vulkan.NewProc("vkCmdBuildAccelerationStructuresIndirectKHR")
PFN_vkBuildAccelerationStructuresKHR = vulkan.NewProc("vkBuildAccelerationStructuresKHR")
PFN_vkCopyAccelerationStructureKHR = vulkan.NewProc("vkCopyAccelerationStructureKHR")
PFN_vkCopyAccelerationStructureToMemoryKHR = vulkan.NewProc("vkCopyAccelerationStructureToMemoryKHR")
PFN_vkCopyMemoryToAccelerationStructureKHR = vulkan.NewProc("vkCopyMemoryToAccelerationStructureKHR")
PFN_vkWriteAccelerationStructuresPropertiesKHR = vulkan.NewProc("vkWriteAccelerationStructuresPropertiesKHR")
PFN_vkCmdCopyAccelerationStructureKHR = vulkan.NewProc("vkCmdCopyAccelerationStructureKHR")
PFN_vkCmdCopyAccelerationStructureToMemoryKHR = vulkan.NewProc("vkCmdCopyAccelerationStructureToMemoryKHR")
PFN_vkCmdCopyMemoryToAccelerationStructureKHR = vulkan.NewProc("vkCmdCopyMemoryToAccelerationStructureKHR")
PFN_vkGetAccelerationStructureDeviceAddressKHR = vulkan.NewProc("vkGetAccelerationStructureDeviceAddressKHR")
PFN_vkCmdWriteAccelerationStructuresPropertiesKHR = vulkan.NewProc("vkCmdWriteAccelerationStructuresPropertiesKHR")
PFN_vkGetDeviceAccelerationStructureCompatibilityKHR = vulkan.NewProc("vkGetDeviceAccelerationStructureCompatibilityKHR")
PFN_vkGetAccelerationStructureBuildSizesKHR = vulkan.NewProc("vkGetAccelerationStructureBuildSizesKHR")
PFN_vkCmdTraceRaysKHR = vulkan.NewProc("vkCmdTraceRaysKHR")
PFN_vkCreateRayTracingPipelinesKHR = vulkan.NewProc("vkCreateRayTracingPipelinesKHR")
PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = vulkan.NewProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")
PFN_vkCmdTraceRaysIndirectKHR = vulkan.NewProc("vkCmdTraceRaysIndirectKHR")
PFN_vkGetRayTracingShaderGroupStackSizeKHR = vulkan.NewProc("vkGetRayTracingShaderGroupStackSizeKHR")
PFN_vkCmdSetRayTracingPipelineStackSizeKHR = vulkan.NewProc("vkCmdSetRayTracingPipelineStackSizeKHR")
PFN_vkCreateAndroidSurfaceKHR = vulkan.NewProc("vkCreateAndroidSurfaceKHR")
PFN_vkGetAndroidHardwareBufferPropertiesANDROID = vulkan.NewProc("vkGetAndroidHardwareBufferPropertiesANDROID")
PFN_vkGetMemoryAndroidHardwareBufferANDROID = vulkan.NewProc("vkGetMemoryAndroidHardwareBufferANDROID")
)
type (
VkAndroidSurfaceCreateFlagsKHR = VkFlags
)
const (
VK_KHR_android_surface uint32 = 1
VK_KHR_ANDROID_SURFACE_SPEC_VERSION uint32 = 6
VK_KHR_ANDROID_SURFACE_EXTENSION_NAME string = "VK_KHR_android_surface"
VK_ANDROID_external_memory_android_hardware_buffer uint32 = 1
VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION uint32 = 3
VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME string = "VK_ANDROID_external_memory_android_hardware_buffer"
)
type VkAndroidSurfaceCreateInfoKHR struct {
SType VkStructureType
PNext uintptr
Flags VkAndroidSurfaceCreateFlagsKHR
}
type VkAndroidHardwareBufferUsageANDROID struct {
SType VkStructureType
PNext uintptr
AndroidHardwareBufferUsage uint64
}
type VkAndroidHardwareBufferPropertiesANDROID struct {
SType VkStructureType
PNext uintptr
AllocationSize VkDeviceSize
MemoryTypeBits uint32
}
type VkAndroidHardwareBufferFormatPropertiesANDROID struct {
SType VkStructureType
PNext uintptr
Format VkFormat
ExternalFormat uint64
FormatFeatures VkFormatFeatureFlags
SamplerYcbcrConversionComponents VkComponentMapping
SuggestedYcbcrModel VkSamplerYcbcrModelConversion
SuggestedYcbcrRange VkSamplerYcbcrRange
SuggestedXChromaOffset VkChromaLocation
SuggestedYChromaOffset VkChromaLocation
}
type VkImportAndroidHardwareBufferInfoANDROID struct {
SType VkStructureType
PNext uintptr
}
type VkMemoryGetAndroidHardwareBufferInfoANDROID struct {
SType VkStructureType
PNext uintptr
Memory VkDeviceMemory
}
type VkExternalFormatANDROID struct {
SType VkStructureType
PNext uintptr
ExternalFormat uint64
}
func CreateAndroidSurfaceKHR(
instance VkInstance,
pCreateInfo *VkAndroidSurfaceCreateInfoKHR,
pAllocator *VkAllocationCallbacks,
) (pSurface VkSurfaceKHR, result error) {
ret, _, _ := syscall.Syscall6(
PFN_vkCreateAndroidSurfaceKHR.Addr(),
4,
uintptr(instance),
uintptr(unsafe.Pointer(pCreateInfo)),
uintptr(unsafe.Pointer(pAllocator)),
uintptr(unsafe.Pointer(&pSurface)),
0,
0,
)
result = GetError((int32)(ret))
return
}
func GetAndroidHardwareBufferPropertiesANDROID(
device VkDevice,
buffer *AHardwareBuffer,
pProperties *VkAndroidHardwareBufferPropertiesANDROID,
) (result error) {
ret, _, _ := syscall.Syscall(
PFN_vkGetAndroidHardwareBufferPropertiesANDROID.Addr(),
3,
uintptr(device),
uintptr(unsafe.Pointer(buffer)),
uintptr(unsafe.Pointer(pProperties)),
)
result = GetError((int32)(ret))
return
}
func GetMemoryAndroidHardwareBufferANDROID(
device VkDevice,
pInfo *VkMemoryGetAndroidHardwareBufferInfoANDROID,
pBuffer **AHardwareBuffer,
) (result error) {
ret, _, _ := syscall.Syscall(
PFN_vkGetMemoryAndroidHardwareBufferANDROID.Addr(),
3,
uintptr(device),
uintptr(unsafe.Pointer(pInfo)),
uintptr(unsafe.Pointer(pBuffer)),
)
result = GetError((int32)(ret))
return
}