#include "loader.h" #include "stdio.h" #include "stdlib.h" #ifdef __linux #include #endif #ifdef _WIN32 #include #endif void assign_fn(void** fn, void* proc) { if(proc) *fn = proc; } #define Load_Global_Function(fn) assign_fn((void**)&fn, vkGetInstanceProcAddr(0, #fn)); #define Load_Function(fn) assign_fn((void**)&fn, vkGetInstanceProcAddr(instance, #fn)); //if(!fn) printf("%s\n", #fn); #define Load_Device_Function(fn) assign_fn((void**)&fn, vkGetDeviceProcAddr(device, #fn)); int load_fn() { #ifdef __linux void* lib = dlopen("libvulkan.so.1", RTLD_NOW); if (!lib) { printf("FAILED TO FIND libvulkan.so.1\n"); return 0; } vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlsym(lib, "vkGetInstanceProcAddr"); #endif #ifdef _WIN32 HMODULE lib = LoadLibraryA("vulkan-1.dll"); if (!lib) { printf("FAILED TO FIND vulkan-1.dll\n"); return 0; } vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)GetProcAddress(lib, "vkGetInstanceProcAddr"); #endif if (!vkGetInstanceProcAddr) { printf("FAILED to load vkGetInstanceProcAddr\n Make sure you have the latest drivers installed\n"); return 0; } Load_Global_Function(vkCreateInstance); Load_Global_Function(vkEnumerateInstanceExtensionProperties); Load_Global_Function(vkEnumerateInstanceLayerProperties); Load_Global_Function(vkEnumerateInstanceVersion); return 1; } void load_instance_fn(VkInstance instance) { Load_Function(vkAllocationFunction); Load_Function(vkReallocationFunction); Load_Function(vkFreeFunction); Load_Function(vkInternalAllocationNotification); Load_Function(vkInternalFreeNotification); Load_Function(vkVoidFunction); Load_Function(vkCreateInstance); Load_Function(vkDestroyInstance); Load_Function(vkEnumeratePhysicalDevices); Load_Function(vkGetPhysicalDeviceFeatures); Load_Function(vkGetPhysicalDeviceFormatProperties); Load_Function(vkGetPhysicalDeviceImageFormatProperties); Load_Function(vkGetPhysicalDeviceProperties); Load_Function(vkGetPhysicalDeviceQueueFamilyProperties); Load_Function(vkGetPhysicalDeviceMemoryProperties); Load_Function(vkGetInstanceProcAddr); Load_Function(vkGetDeviceProcAddr); Load_Function(vkCreateDevice); Load_Function(vkDestroyDevice); Load_Function(vkEnumerateInstanceExtensionProperties); Load_Function(vkEnumerateDeviceExtensionProperties); Load_Function(vkEnumerateInstanceLayerProperties); Load_Function(vkEnumerateDeviceLayerProperties); Load_Function(vkGetDeviceQueue); Load_Function(vkQueueSubmit); Load_Function(vkQueueWaitIdle); Load_Function(vkDeviceWaitIdle); Load_Function(vkAllocateMemory); Load_Function(vkFreeMemory); Load_Function(vkMapMemory); Load_Function(vkUnmapMemory); Load_Function(vkFlushMappedMemoryRanges); Load_Function(vkInvalidateMappedMemoryRanges); Load_Function(vkGetDeviceMemoryCommitment); Load_Function(vkBindBufferMemory); Load_Function(vkBindImageMemory); Load_Function(vkGetBufferMemoryRequirements); Load_Function(vkGetImageMemoryRequirements); Load_Function(vkGetImageSparseMemoryRequirements); Load_Function(vkGetPhysicalDeviceSparseImageFormatProperties); Load_Function(vkQueueBindSparse); Load_Function(vkCreateFence); Load_Function(vkDestroyFence); Load_Function(vkResetFences); Load_Function(vkGetFenceStatus); Load_Function(vkWaitForFences); Load_Function(vkCreateSemaphore); Load_Function(vkDestroySemaphore); Load_Function(vkCreateEvent); Load_Function(vkDestroyEvent); Load_Function(vkGetEventStatus); Load_Function(vkSetEvent); Load_Function(vkResetEvent); Load_Function(vkCreateQueryPool); Load_Function(vkDestroyQueryPool); Load_Function(vkGetQueryPoolResults); Load_Function(vkCreateBuffer); Load_Function(vkDestroyBuffer); Load_Function(vkCreateBufferView); Load_Function(vkDestroyBufferView); Load_Function(vkCreateImage); Load_Function(vkDestroyImage); Load_Function(vkGetImageSubresourceLayout); Load_Function(vkCreateImageView); Load_Function(vkDestroyImageView); Load_Function(vkCreateShaderModule); Load_Function(vkDestroyShaderModule); Load_Function(vkCreatePipelineCache); Load_Function(vkDestroyPipelineCache); Load_Function(vkGetPipelineCacheData); Load_Function(vkMergePipelineCaches); Load_Function(vkCreateGraphicsPipelines); Load_Function(vkCreateComputePipelines); Load_Function(vkDestroyPipeline); Load_Function(vkCreatePipelineLayout); Load_Function(vkDestroyPipelineLayout); Load_Function(vkCreateSampler); Load_Function(vkDestroySampler); Load_Function(vkCreateDescriptorSetLayout); Load_Function(vkDestroyDescriptorSetLayout); Load_Function(vkCreateDescriptorPool); Load_Function(vkDestroyDescriptorPool); Load_Function(vkResetDescriptorPool); Load_Function(vkAllocateDescriptorSets); Load_Function(vkFreeDescriptorSets); Load_Function(vkUpdateDescriptorSets); Load_Function(vkCreateFramebuffer); Load_Function(vkDestroyFramebuffer); Load_Function(vkCreateRenderPass); Load_Function(vkDestroyRenderPass); Load_Function(vkGetRenderAreaGranularity); Load_Function(vkCreateCommandPool); Load_Function(vkDestroyCommandPool); Load_Function(vkResetCommandPool); Load_Function(vkAllocateCommandBuffers); Load_Function(vkFreeCommandBuffers); Load_Function(vkBeginCommandBuffer); Load_Function(vkEndCommandBuffer); Load_Function(vkResetCommandBuffer); Load_Function(vkCmdBindPipeline); Load_Function(vkCmdSetViewport); Load_Function(vkCmdSetScissor); Load_Function(vkCmdSetLineWidth); Load_Function(vkCmdSetDepthBias); Load_Function(vkCmdSetBlendConstants); Load_Function(vkCmdSetDepthBounds); Load_Function(vkCmdSetStencilCompareMask); Load_Function(vkCmdSetStencilWriteMask); Load_Function(vkCmdSetStencilReference); Load_Function(vkCmdBindDescriptorSets); Load_Function(vkCmdBindIndexBuffer); Load_Function(vkCmdBindVertexBuffers); Load_Function(vkCmdDraw); Load_Function(vkCmdDrawIndexed); Load_Function(vkCmdDrawIndirect); Load_Function(vkCmdDrawIndexedIndirect); Load_Function(vkCmdDispatch); Load_Function(vkCmdDispatchIndirect); Load_Function(vkCmdCopyBuffer); Load_Function(vkCmdCopyImage); Load_Function(vkCmdBlitImage); Load_Function(vkCmdCopyBufferToImage); Load_Function(vkCmdCopyImageToBuffer); Load_Function(vkCmdUpdateBuffer); Load_Function(vkCmdFillBuffer); Load_Function(vkCmdClearColorImage); Load_Function(vkCmdClearDepthStencilImage); Load_Function(vkCmdClearAttachments); Load_Function(vkCmdResolveImage); Load_Function(vkCmdSetEvent); Load_Function(vkCmdResetEvent); Load_Function(vkCmdWaitEvents); Load_Function(vkCmdPipelineBarrier); Load_Function(vkCmdBeginQuery); Load_Function(vkCmdEndQuery); Load_Function(vkCmdResetQueryPool); Load_Function(vkCmdWriteTimestamp); Load_Function(vkCmdCopyQueryPoolResults); Load_Function(vkCmdPushConstants); Load_Function(vkCmdBeginRenderPass); Load_Function(vkCmdNextSubpass); Load_Function(vkCmdEndRenderPass); Load_Function(vkCmdExecuteCommands); Load_Function(vkEnumerateInstanceVersion); Load_Function(vkBindBufferMemory2); Load_Function(vkBindImageMemory2); Load_Function(vkGetDeviceGroupPeerMemoryFeatures); Load_Function(vkCmdSetDeviceMask); Load_Function(vkCmdDispatchBase); Load_Function(vkEnumeratePhysicalDeviceGroups); Load_Function(vkGetImageMemoryRequirements2); Load_Function(vkGetBufferMemoryRequirements2); Load_Function(vkGetImageSparseMemoryRequirements2); Load_Function(vkGetPhysicalDeviceFeatures2); Load_Function(vkGetPhysicalDeviceProperties2); Load_Function(vkGetPhysicalDeviceFormatProperties2); Load_Function(vkGetPhysicalDeviceImageFormatProperties2); Load_Function(vkGetPhysicalDeviceQueueFamilyProperties2); Load_Function(vkGetPhysicalDeviceMemoryProperties2); Load_Function(vkGetPhysicalDeviceSparseImageFormatProperties2); Load_Function(vkTrimCommandPool); Load_Function(vkGetDeviceQueue2); Load_Function(vkCreateSamplerYcbcrConversion); Load_Function(vkDestroySamplerYcbcrConversion); Load_Function(vkCreateDescriptorUpdateTemplate); Load_Function(vkDestroyDescriptorUpdateTemplate); Load_Function(vkUpdateDescriptorSetWithTemplate); Load_Function(vkGetPhysicalDeviceExternalBufferProperties); Load_Function(vkGetPhysicalDeviceExternalFenceProperties); Load_Function(vkGetPhysicalDeviceExternalSemaphoreProperties); Load_Function(vkGetDescriptorSetLayoutSupport); Load_Function(vkCmdDrawIndirectCount); Load_Function(vkCmdDrawIndexedIndirectCount); Load_Function(vkCreateRenderPass2); Load_Function(vkCmdBeginRenderPass2); Load_Function(vkCmdNextSubpass2); Load_Function(vkCmdEndRenderPass2); Load_Function(vkResetQueryPool); Load_Function(vkGetSemaphoreCounterValue); Load_Function(vkWaitSemaphores); Load_Function(vkSignalSemaphore); Load_Function(vkGetBufferDeviceAddress); Load_Function(vkGetBufferOpaqueCaptureAddress); Load_Function(vkGetDeviceMemoryOpaqueCaptureAddress); Load_Function(vkDestroySurfaceKHR); Load_Function(vkGetPhysicalDeviceSurfaceSupportKHR); Load_Function(vkGetPhysicalDeviceSurfaceCapabilitiesKHR); Load_Function(vkGetPhysicalDeviceSurfaceFormatsKHR); Load_Function(vkGetPhysicalDeviceSurfacePresentModesKHR); Load_Function(vkCreateSwapchainKHR); Load_Function(vkDestroySwapchainKHR); Load_Function(vkGetSwapchainImagesKHR); Load_Function(vkAcquireNextImageKHR); Load_Function(vkQueuePresentKHR); Load_Function(vkGetDeviceGroupPresentCapabilitiesKHR); Load_Function(vkGetDeviceGroupSurfacePresentModesKHR); Load_Function(vkGetPhysicalDevicePresentRectanglesKHR); Load_Function(vkAcquireNextImage2KHR); Load_Function(vkGetPhysicalDeviceDisplayPropertiesKHR); Load_Function(vkGetPhysicalDeviceDisplayPlanePropertiesKHR); Load_Function(vkGetDisplayPlaneSupportedDisplaysKHR); Load_Function(vkGetDisplayModePropertiesKHR); Load_Function(vkCreateDisplayModeKHR); Load_Function(vkGetDisplayPlaneCapabilitiesKHR); Load_Function(vkCreateDisplayPlaneSurfaceKHR); Load_Function(vkCreateSharedSwapchainsKHR); Load_Function(vkGetPhysicalDeviceFeatures2KHR); Load_Function(vkGetPhysicalDeviceProperties2KHR); Load_Function(vkGetPhysicalDeviceFormatProperties2KHR); Load_Function(vkGetPhysicalDeviceImageFormatProperties2KHR); Load_Function(vkGetPhysicalDeviceQueueFamilyProperties2KHR); Load_Function(vkGetPhysicalDeviceMemoryProperties2KHR); Load_Function(vkGetPhysicalDeviceSparseImageFormatProperties2KHR); Load_Function(vkGetDeviceGroupPeerMemoryFeaturesKHR); Load_Function(vkCmdSetDeviceMaskKHR); Load_Function(vkCmdDispatchBaseKHR); Load_Function(vkTrimCommandPoolKHR); Load_Function(vkEnumeratePhysicalDeviceGroupsKHR); Load_Function(vkGetPhysicalDeviceExternalBufferPropertiesKHR); Load_Function(vkGetMemoryFdKHR); Load_Function(vkGetMemoryFdPropertiesKHR); Load_Function(vkGetPhysicalDeviceExternalSemaphorePropertiesKHR); Load_Function(vkImportSemaphoreFdKHR); Load_Function(vkGetSemaphoreFdKHR); Load_Function(vkCmdPushDescriptorSetKHR); Load_Function(vkCmdPushDescriptorSetWithTemplateKHR); Load_Function(vkCreateDescriptorUpdateTemplateKHR); Load_Function(vkDestroyDescriptorUpdateTemplateKHR); Load_Function(vkUpdateDescriptorSetWithTemplateKHR); Load_Function(vkCreateRenderPass2KHR); Load_Function(vkCmdBeginRenderPass2KHR); Load_Function(vkCmdNextSubpass2KHR); Load_Function(vkCmdEndRenderPass2KHR); Load_Function(vkGetSwapchainStatusKHR); Load_Function(vkGetPhysicalDeviceExternalFencePropertiesKHR); Load_Function(vkImportFenceFdKHR); Load_Function(vkGetFenceFdKHR); Load_Function(vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR); Load_Function(vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR); Load_Function(vkAcquireProfilingLockKHR); Load_Function(vkReleaseProfilingLockKHR); Load_Function(vkGetPhysicalDeviceSurfaceCapabilities2KHR); Load_Function(vkGetPhysicalDeviceSurfaceFormats2KHR); Load_Function(vkGetPhysicalDeviceDisplayProperties2KHR); Load_Function(vkGetPhysicalDeviceDisplayPlaneProperties2KHR); Load_Function(vkGetDisplayModeProperties2KHR); Load_Function(vkGetDisplayPlaneCapabilities2KHR); Load_Function(vkGetImageMemoryRequirements2KHR); Load_Function(vkGetBufferMemoryRequirements2KHR); Load_Function(vkGetImageSparseMemoryRequirements2KHR); Load_Function(vkCreateSamplerYcbcrConversionKHR); Load_Function(vkDestroySamplerYcbcrConversionKHR); Load_Function(vkBindBufferMemory2KHR); Load_Function(vkBindImageMemory2KHR); Load_Function(vkGetDescriptorSetLayoutSupportKHR); Load_Function(vkCmdDrawIndirectCountKHR); Load_Function(vkCmdDrawIndexedIndirectCountKHR); Load_Function(vkGetSemaphoreCounterValueKHR); Load_Function(vkWaitSemaphoresKHR); Load_Function(vkSignalSemaphoreKHR); Load_Function(vkGetBufferDeviceAddressKHR); Load_Function(vkGetBufferOpaqueCaptureAddressKHR); Load_Function(vkGetDeviceMemoryOpaqueCaptureAddressKHR); Load_Function(vkGetPipelineExecutablePropertiesKHR); Load_Function(vkGetPipelineExecutableStatisticsKHR); Load_Function(vkGetPipelineExecutableInternalRepresentationsKHR); Load_Function(vkDebugReportCallbackEXT); Load_Function(vkCreateDebugReportCallbackEXT); Load_Function(vkDestroyDebugReportCallbackEXT); Load_Function(vkDebugReportMessageEXT); Load_Function(vkDebugMarkerSetObjectTagEXT); Load_Function(vkDebugMarkerSetObjectNameEXT); Load_Function(vkCmdDebugMarkerBeginEXT); Load_Function(vkCmdDebugMarkerEndEXT); Load_Function(vkCmdDebugMarkerInsertEXT); Load_Function(vkCmdBindTransformFeedbackBuffersEXT); Load_Function(vkCmdBeginTransformFeedbackEXT); Load_Function(vkCmdEndTransformFeedbackEXT); Load_Function(vkCmdBeginQueryIndexedEXT); Load_Function(vkCmdEndQueryIndexedEXT); Load_Function(vkCmdDrawIndirectByteCountEXT); Load_Function(vkGetImageViewHandleNVX); Load_Function(vkGetImageViewAddressNVX); Load_Function(vkCmdDrawIndirectCountAMD); Load_Function(vkCmdDrawIndexedIndirectCountAMD); Load_Function(vkGetShaderInfoAMD); Load_Function(vkGetPhysicalDeviceExternalImageFormatPropertiesNV); Load_Function(vkCmdBeginConditionalRenderingEXT); Load_Function(vkCmdEndConditionalRenderingEXT); Load_Function(vkCmdSetViewportWScalingNV); Load_Function(vkReleaseDisplayEXT); Load_Function(vkGetPhysicalDeviceSurfaceCapabilities2EXT); Load_Function(vkDisplayPowerControlEXT); Load_Function(vkRegisterDeviceEventEXT); Load_Function(vkRegisterDisplayEventEXT); Load_Function(vkGetSwapchainCounterEXT); Load_Function(vkGetRefreshCycleDurationGOOGLE); Load_Function(vkGetPastPresentationTimingGOOGLE); Load_Function(vkCmdSetDiscardRectangleEXT); Load_Function(vkSetHdrMetadataEXT); Load_Function(vkDebugUtilsMessengerCallbackEXT); Load_Function(vkSetDebugUtilsObjectNameEXT); Load_Function(vkSetDebugUtilsObjectTagEXT); Load_Function(vkQueueBeginDebugUtilsLabelEXT); Load_Function(vkQueueEndDebugUtilsLabelEXT); Load_Function(vkQueueInsertDebugUtilsLabelEXT); Load_Function(vkCmdBeginDebugUtilsLabelEXT); Load_Function(vkCmdEndDebugUtilsLabelEXT); Load_Function(vkCmdInsertDebugUtilsLabelEXT); Load_Function(vkCreateDebugUtilsMessengerEXT); Load_Function(vkDestroyDebugUtilsMessengerEXT); Load_Function(vkSubmitDebugUtilsMessageEXT); Load_Function(vkCmdSetSampleLocationsEXT); Load_Function(vkGetPhysicalDeviceMultisamplePropertiesEXT); Load_Function(vkGetImageDrmFormatModifierPropertiesEXT); Load_Function(vkCreateValidationCacheEXT); Load_Function(vkDestroyValidationCacheEXT); Load_Function(vkMergeValidationCachesEXT); Load_Function(vkGetValidationCacheDataEXT); Load_Function(vkCmdBindShadingRateImageNV); Load_Function(vkCmdSetViewportShadingRatePaletteNV); Load_Function(vkCmdSetCoarseSampleOrderNV); Load_Function(vkCreateAccelerationStructureNV); Load_Function(vkDestroyAccelerationStructureKHR); Load_Function(vkDestroyAccelerationStructureNV); Load_Function(vkGetAccelerationStructureMemoryRequirementsNV); Load_Function(vkBindAccelerationStructureMemoryKHR); Load_Function(vkBindAccelerationStructureMemoryNV); Load_Function(vkCmdBuildAccelerationStructureNV); Load_Function(vkCmdCopyAccelerationStructureNV); Load_Function(vkCmdTraceRaysNV); Load_Function(vkCreateRayTracingPipelinesNV); Load_Function(vkGetRayTracingShaderGroupHandlesKHR); Load_Function(vkGetRayTracingShaderGroupHandlesNV); Load_Function(vkGetAccelerationStructureHandleNV); Load_Function(vkCmdWriteAccelerationStructuresPropertiesKHR); Load_Function(vkCmdWriteAccelerationStructuresPropertiesNV); Load_Function(vkCompileDeferredNV); Load_Function(vkGetMemoryHostPointerPropertiesEXT); Load_Function(vkCmdWriteBufferMarkerAMD); Load_Function(vkGetPhysicalDeviceCalibrateableTimeDomainsEXT); Load_Function(vkGetCalibratedTimestampsEXT); Load_Function(vkCmdDrawMeshTasksNV); Load_Function(vkCmdDrawMeshTasksIndirectNV); Load_Function(vkCmdDrawMeshTasksIndirectCountNV); Load_Function(vkCmdSetExclusiveScissorNV); Load_Function(vkCmdSetCheckpointNV); Load_Function(vkGetQueueCheckpointDataNV); Load_Function(vkInitializePerformanceApiINTEL); Load_Function(vkUninitializePerformanceApiINTEL); Load_Function(vkCmdSetPerformanceMarkerINTEL); Load_Function(vkCmdSetPerformanceStreamMarkerINTEL); Load_Function(vkCmdSetPerformanceOverrideINTEL); Load_Function(vkAcquirePerformanceConfigurationINTEL); Load_Function(vkReleasePerformanceConfigurationINTEL); Load_Function(vkQueueSetPerformanceConfigurationINTEL); Load_Function(vkGetPerformanceParameterINTEL); Load_Function(vkSetLocalDimmingAMD); Load_Function(vkGetBufferDeviceAddressEXT); Load_Function(vkGetPhysicalDeviceToolPropertiesEXT); Load_Function(vkGetPhysicalDeviceCooperativeMatrixPropertiesNV); Load_Function(vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV); Load_Function(vkCreateHeadlessSurfaceEXT); Load_Function(vkCmdSetLineStippleEXT); Load_Function(vkResetQueryPoolEXT); Load_Function(vkGetGeneratedCommandsMemoryRequirementsNV); Load_Function(vkCmdPreprocessGeneratedCommandsNV); Load_Function(vkCmdExecuteGeneratedCommandsNV); Load_Function(vkCmdBindPipelineShaderGroupNV); Load_Function(vkCreateIndirectCommandsLayoutNV); Load_Function(vkDestroyIndirectCommandsLayoutNV); Load_Function(vkCreatePrivateDataSlotEXT); Load_Function(vkDestroyPrivateDataSlotEXT); Load_Function(vkSetPrivateDataEXT); Load_Function(vkGetPrivateDataEXT); Load_Function(vkCreateWin32SurfaceKHR); Load_Function(vkGetPhysicalDeviceWin32PresentationSupportKHR); Load_Function(vkGetMemoryWin32HandleKHR); Load_Function(vkGetMemoryWin32HandlePropertiesKHR); Load_Function(vkImportSemaphoreWin32HandleKHR); Load_Function(vkGetSemaphoreWin32HandleKHR); Load_Function(vkImportFenceWin32HandleKHR); Load_Function(vkGetFenceWin32HandleKHR); Load_Function(vkGetMemoryWin32HandleNV); Load_Function(vkGetPhysicalDeviceSurfacePresentModes2EXT); Load_Function(vkAcquireFullScreenExclusiveModeEXT); Load_Function(vkReleaseFullScreenExclusiveModeEXT); Load_Function(vkGetDeviceGroupSurfacePresentModes2EXT); Load_Function(vkCreateXlibSurfaceKHR); Load_Function(vkGetPhysicalDeviceXlibPresentationSupportKHR); Load_Function(vkCreateXcbSurfaceKHR); Load_Function(vkGetPhysicalDeviceXcbPresentationSupportKHR); Load_Function(vkCreateWaylandSurfaceKHR); Load_Function(vkGetPhysicalDeviceWaylandPresentationSupportKHR); Load_Function(vkCreateAndroidSurfaceKHR); Load_Function(vkGetAndroidHardwareBufferPropertiesANDROID); Load_Function(vkGetMemoryAndroidHardwareBufferANDROID); } void load_device_fn(VkDevice device) { Load_Device_Function(vkAllocationFunction); Load_Device_Function(vkReallocationFunction); Load_Device_Function(vkFreeFunction); Load_Device_Function(vkInternalAllocationNotification); Load_Device_Function(vkInternalFreeNotification); Load_Device_Function(vkVoidFunction); Load_Device_Function(vkCreateInstance); Load_Device_Function(vkDestroyInstance); Load_Device_Function(vkEnumeratePhysicalDevices); Load_Device_Function(vkGetPhysicalDeviceFeatures); Load_Device_Function(vkGetPhysicalDeviceFormatProperties); Load_Device_Function(vkGetPhysicalDeviceImageFormatProperties); Load_Device_Function(vkGetPhysicalDeviceProperties); Load_Device_Function(vkGetPhysicalDeviceQueueFamilyProperties); Load_Device_Function(vkGetPhysicalDeviceMemoryProperties); Load_Device_Function(vkGetInstanceProcAddr); Load_Device_Function(vkGetDeviceProcAddr); Load_Device_Function(vkCreateDevice); Load_Device_Function(vkDestroyDevice); Load_Device_Function(vkEnumerateInstanceExtensionProperties); Load_Device_Function(vkEnumerateDeviceExtensionProperties); Load_Device_Function(vkEnumerateInstanceLayerProperties); Load_Device_Function(vkEnumerateDeviceLayerProperties); Load_Device_Function(vkGetDeviceQueue); Load_Device_Function(vkQueueSubmit); Load_Device_Function(vkQueueWaitIdle); Load_Device_Function(vkDeviceWaitIdle); Load_Device_Function(vkAllocateMemory); Load_Device_Function(vkFreeMemory); Load_Device_Function(vkMapMemory); Load_Device_Function(vkUnmapMemory); Load_Device_Function(vkFlushMappedMemoryRanges); Load_Device_Function(vkInvalidateMappedMemoryRanges); Load_Device_Function(vkGetDeviceMemoryCommitment); Load_Device_Function(vkBindBufferMemory); Load_Device_Function(vkBindImageMemory); Load_Device_Function(vkGetBufferMemoryRequirements); Load_Device_Function(vkGetImageMemoryRequirements); Load_Device_Function(vkGetImageSparseMemoryRequirements); Load_Device_Function(vkGetPhysicalDeviceSparseImageFormatProperties); Load_Device_Function(vkQueueBindSparse); Load_Device_Function(vkCreateFence); Load_Device_Function(vkDestroyFence); Load_Device_Function(vkResetFences); Load_Device_Function(vkGetFenceStatus); Load_Device_Function(vkWaitForFences); Load_Device_Function(vkCreateSemaphore); Load_Device_Function(vkDestroySemaphore); Load_Device_Function(vkCreateEvent); Load_Device_Function(vkDestroyEvent); Load_Device_Function(vkGetEventStatus); Load_Device_Function(vkSetEvent); Load_Device_Function(vkResetEvent); Load_Device_Function(vkCreateQueryPool); Load_Device_Function(vkDestroyQueryPool); Load_Device_Function(vkGetQueryPoolResults); Load_Device_Function(vkCreateBuffer); Load_Device_Function(vkDestroyBuffer); Load_Device_Function(vkCreateBufferView); Load_Device_Function(vkDestroyBufferView); Load_Device_Function(vkCreateImage); Load_Device_Function(vkDestroyImage); Load_Device_Function(vkGetImageSubresourceLayout); Load_Device_Function(vkCreateImageView); Load_Device_Function(vkDestroyImageView); Load_Device_Function(vkCreateShaderModule); Load_Device_Function(vkDestroyShaderModule); Load_Device_Function(vkCreatePipelineCache); Load_Device_Function(vkDestroyPipelineCache); Load_Device_Function(vkGetPipelineCacheData); Load_Device_Function(vkMergePipelineCaches); Load_Device_Function(vkCreateGraphicsPipelines); Load_Device_Function(vkCreateComputePipelines); Load_Device_Function(vkDestroyPipeline); Load_Device_Function(vkCreatePipelineLayout); Load_Device_Function(vkDestroyPipelineLayout); Load_Device_Function(vkCreateSampler); Load_Device_Function(vkDestroySampler); Load_Device_Function(vkCreateDescriptorSetLayout); Load_Device_Function(vkDestroyDescriptorSetLayout); Load_Device_Function(vkCreateDescriptorPool); Load_Device_Function(vkDestroyDescriptorPool); Load_Device_Function(vkResetDescriptorPool); Load_Device_Function(vkAllocateDescriptorSets); Load_Device_Function(vkFreeDescriptorSets); Load_Device_Function(vkUpdateDescriptorSets); Load_Device_Function(vkCreateFramebuffer); Load_Device_Function(vkDestroyFramebuffer); Load_Device_Function(vkCreateRenderPass); Load_Device_Function(vkDestroyRenderPass); Load_Device_Function(vkGetRenderAreaGranularity); Load_Device_Function(vkCreateCommandPool); Load_Device_Function(vkDestroyCommandPool); Load_Device_Function(vkResetCommandPool); Load_Device_Function(vkAllocateCommandBuffers); Load_Device_Function(vkFreeCommandBuffers); Load_Device_Function(vkBeginCommandBuffer); Load_Device_Function(vkEndCommandBuffer); Load_Device_Function(vkResetCommandBuffer); Load_Device_Function(vkCmdBindPipeline); Load_Device_Function(vkCmdSetViewport); Load_Device_Function(vkCmdSetScissor); Load_Device_Function(vkCmdSetLineWidth); Load_Device_Function(vkCmdSetDepthBias); Load_Device_Function(vkCmdSetBlendConstants); Load_Device_Function(vkCmdSetDepthBounds); Load_Device_Function(vkCmdSetStencilCompareMask); Load_Device_Function(vkCmdSetStencilWriteMask); Load_Device_Function(vkCmdSetStencilReference); Load_Device_Function(vkCmdBindDescriptorSets); Load_Device_Function(vkCmdBindIndexBuffer); Load_Device_Function(vkCmdBindVertexBuffers); Load_Device_Function(vkCmdDraw); Load_Device_Function(vkCmdDrawIndexed); Load_Device_Function(vkCmdDrawIndirect); Load_Device_Function(vkCmdDrawIndexedIndirect); Load_Device_Function(vkCmdDispatch); Load_Device_Function(vkCmdDispatchIndirect); Load_Device_Function(vkCmdCopyBuffer); Load_Device_Function(vkCmdCopyImage); Load_Device_Function(vkCmdBlitImage); Load_Device_Function(vkCmdCopyBufferToImage); Load_Device_Function(vkCmdCopyImageToBuffer); Load_Device_Function(vkCmdUpdateBuffer); Load_Device_Function(vkCmdFillBuffer); Load_Device_Function(vkCmdClearColorImage); Load_Device_Function(vkCmdClearDepthStencilImage); Load_Device_Function(vkCmdClearAttachments); Load_Device_Function(vkCmdResolveImage); Load_Device_Function(vkCmdSetEvent); Load_Device_Function(vkCmdResetEvent); Load_Device_Function(vkCmdWaitEvents); Load_Device_Function(vkCmdPipelineBarrier); Load_Device_Function(vkCmdBeginQuery); Load_Device_Function(vkCmdEndQuery); Load_Device_Function(vkCmdResetQueryPool); Load_Device_Function(vkCmdWriteTimestamp); Load_Device_Function(vkCmdCopyQueryPoolResults); Load_Device_Function(vkCmdPushConstants); Load_Device_Function(vkCmdBeginRenderPass); Load_Device_Function(vkCmdNextSubpass); Load_Device_Function(vkCmdEndRenderPass); Load_Device_Function(vkCmdExecuteCommands); Load_Device_Function(vkEnumerateInstanceVersion); Load_Device_Function(vkBindBufferMemory2); Load_Device_Function(vkBindImageMemory2); Load_Device_Function(vkGetDeviceGroupPeerMemoryFeatures); Load_Device_Function(vkCmdSetDeviceMask); Load_Device_Function(vkCmdDispatchBase); Load_Device_Function(vkEnumeratePhysicalDeviceGroups); Load_Device_Function(vkGetImageMemoryRequirements2); Load_Device_Function(vkGetBufferMemoryRequirements2); Load_Device_Function(vkGetImageSparseMemoryRequirements2); Load_Device_Function(vkGetPhysicalDeviceFeatures2); Load_Device_Function(vkGetPhysicalDeviceProperties2); Load_Device_Function(vkGetPhysicalDeviceFormatProperties2); Load_Device_Function(vkGetPhysicalDeviceImageFormatProperties2); Load_Device_Function(vkGetPhysicalDeviceQueueFamilyProperties2); Load_Device_Function(vkGetPhysicalDeviceMemoryProperties2); Load_Device_Function(vkGetPhysicalDeviceSparseImageFormatProperties2); Load_Device_Function(vkTrimCommandPool); Load_Device_Function(vkGetDeviceQueue2); Load_Device_Function(vkCreateSamplerYcbcrConversion); Load_Device_Function(vkDestroySamplerYcbcrConversion); Load_Device_Function(vkCreateDescriptorUpdateTemplate); Load_Device_Function(vkDestroyDescriptorUpdateTemplate); Load_Device_Function(vkUpdateDescriptorSetWithTemplate); Load_Device_Function(vkGetPhysicalDeviceExternalBufferProperties); Load_Device_Function(vkGetPhysicalDeviceExternalFenceProperties); Load_Device_Function(vkGetPhysicalDeviceExternalSemaphoreProperties); Load_Device_Function(vkGetDescriptorSetLayoutSupport); Load_Device_Function(vkCmdDrawIndirectCount); Load_Device_Function(vkCmdDrawIndexedIndirectCount); Load_Device_Function(vkCreateRenderPass2); Load_Device_Function(vkCmdBeginRenderPass2); Load_Device_Function(vkCmdNextSubpass2); Load_Device_Function(vkCmdEndRenderPass2); Load_Device_Function(vkResetQueryPool); Load_Device_Function(vkGetSemaphoreCounterValue); Load_Device_Function(vkWaitSemaphores); Load_Device_Function(vkSignalSemaphore); Load_Device_Function(vkGetBufferDeviceAddress); Load_Device_Function(vkGetBufferOpaqueCaptureAddress); Load_Device_Function(vkGetDeviceMemoryOpaqueCaptureAddress); Load_Device_Function(vkDestroySurfaceKHR); Load_Device_Function(vkGetPhysicalDeviceSurfaceSupportKHR); Load_Device_Function(vkGetPhysicalDeviceSurfaceCapabilitiesKHR); Load_Device_Function(vkGetPhysicalDeviceSurfaceFormatsKHR); Load_Device_Function(vkGetPhysicalDeviceSurfacePresentModesKHR); Load_Device_Function(vkCreateSwapchainKHR); Load_Device_Function(vkDestroySwapchainKHR); Load_Device_Function(vkGetSwapchainImagesKHR); Load_Device_Function(vkAcquireNextImageKHR); Load_Device_Function(vkQueuePresentKHR); Load_Device_Function(vkGetDeviceGroupPresentCapabilitiesKHR); Load_Device_Function(vkGetDeviceGroupSurfacePresentModesKHR); Load_Device_Function(vkGetPhysicalDevicePresentRectanglesKHR); Load_Device_Function(vkAcquireNextImage2KHR); Load_Device_Function(vkGetPhysicalDeviceDisplayPropertiesKHR); Load_Device_Function(vkGetPhysicalDeviceDisplayPlanePropertiesKHR); Load_Device_Function(vkGetDisplayPlaneSupportedDisplaysKHR); Load_Device_Function(vkGetDisplayModePropertiesKHR); Load_Device_Function(vkCreateDisplayModeKHR); Load_Device_Function(vkGetDisplayPlaneCapabilitiesKHR); Load_Device_Function(vkCreateDisplayPlaneSurfaceKHR); Load_Device_Function(vkCreateSharedSwapchainsKHR); Load_Device_Function(vkGetPhysicalDeviceFeatures2KHR); Load_Device_Function(vkGetPhysicalDeviceProperties2KHR); Load_Device_Function(vkGetPhysicalDeviceFormatProperties2KHR); Load_Device_Function(vkGetPhysicalDeviceImageFormatProperties2KHR); Load_Device_Function(vkGetPhysicalDeviceQueueFamilyProperties2KHR); Load_Device_Function(vkGetPhysicalDeviceMemoryProperties2KHR); Load_Device_Function(vkGetPhysicalDeviceSparseImageFormatProperties2KHR); Load_Device_Function(vkGetDeviceGroupPeerMemoryFeaturesKHR); Load_Device_Function(vkCmdSetDeviceMaskKHR); Load_Device_Function(vkCmdDispatchBaseKHR); Load_Device_Function(vkTrimCommandPoolKHR); Load_Device_Function(vkEnumeratePhysicalDeviceGroupsKHR); Load_Device_Function(vkGetPhysicalDeviceExternalBufferPropertiesKHR); Load_Device_Function(vkGetMemoryFdKHR); Load_Device_Function(vkGetMemoryFdPropertiesKHR); Load_Device_Function(vkGetPhysicalDeviceExternalSemaphorePropertiesKHR); Load_Device_Function(vkImportSemaphoreFdKHR); Load_Device_Function(vkGetSemaphoreFdKHR); Load_Device_Function(vkCmdPushDescriptorSetKHR); Load_Device_Function(vkCmdPushDescriptorSetWithTemplateKHR); Load_Device_Function(vkCreateDescriptorUpdateTemplateKHR); Load_Device_Function(vkDestroyDescriptorUpdateTemplateKHR); Load_Device_Function(vkUpdateDescriptorSetWithTemplateKHR); Load_Device_Function(vkCreateRenderPass2KHR); Load_Device_Function(vkCmdBeginRenderPass2KHR); Load_Device_Function(vkCmdNextSubpass2KHR); Load_Device_Function(vkCmdEndRenderPass2KHR); Load_Device_Function(vkGetSwapchainStatusKHR); Load_Device_Function(vkGetPhysicalDeviceExternalFencePropertiesKHR); Load_Device_Function(vkImportFenceFdKHR); Load_Device_Function(vkGetFenceFdKHR); Load_Device_Function(vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR); Load_Device_Function(vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR); Load_Device_Function(vkAcquireProfilingLockKHR); Load_Device_Function(vkReleaseProfilingLockKHR); Load_Device_Function(vkGetPhysicalDeviceSurfaceCapabilities2KHR); Load_Device_Function(vkGetPhysicalDeviceSurfaceFormats2KHR); Load_Device_Function(vkGetPhysicalDeviceDisplayProperties2KHR); Load_Device_Function(vkGetPhysicalDeviceDisplayPlaneProperties2KHR); Load_Device_Function(vkGetDisplayModeProperties2KHR); Load_Device_Function(vkGetDisplayPlaneCapabilities2KHR); Load_Device_Function(vkGetImageMemoryRequirements2KHR); Load_Device_Function(vkGetBufferMemoryRequirements2KHR); Load_Device_Function(vkGetImageSparseMemoryRequirements2KHR); Load_Device_Function(vkCreateSamplerYcbcrConversionKHR); Load_Device_Function(vkDestroySamplerYcbcrConversionKHR); Load_Device_Function(vkBindBufferMemory2KHR); Load_Device_Function(vkBindImageMemory2KHR); Load_Device_Function(vkGetDescriptorSetLayoutSupportKHR); Load_Device_Function(vkCmdDrawIndirectCountKHR); Load_Device_Function(vkCmdDrawIndexedIndirectCountKHR); Load_Device_Function(vkGetSemaphoreCounterValueKHR); Load_Device_Function(vkWaitSemaphoresKHR); Load_Device_Function(vkSignalSemaphoreKHR); Load_Device_Function(vkGetBufferDeviceAddressKHR); Load_Device_Function(vkGetBufferOpaqueCaptureAddressKHR); Load_Device_Function(vkGetDeviceMemoryOpaqueCaptureAddressKHR); Load_Device_Function(vkGetPipelineExecutablePropertiesKHR); Load_Device_Function(vkGetPipelineExecutableStatisticsKHR); Load_Device_Function(vkGetPipelineExecutableInternalRepresentationsKHR); Load_Device_Function(vkDebugReportCallbackEXT); Load_Device_Function(vkCreateDebugReportCallbackEXT); Load_Device_Function(vkDestroyDebugReportCallbackEXT); Load_Device_Function(vkDebugReportMessageEXT); Load_Device_Function(vkDebugMarkerSetObjectTagEXT); Load_Device_Function(vkDebugMarkerSetObjectNameEXT); Load_Device_Function(vkCmdDebugMarkerBeginEXT); Load_Device_Function(vkCmdDebugMarkerEndEXT); Load_Device_Function(vkCmdDebugMarkerInsertEXT); Load_Device_Function(vkCmdBindTransformFeedbackBuffersEXT); Load_Device_Function(vkCmdBeginTransformFeedbackEXT); Load_Device_Function(vkCmdEndTransformFeedbackEXT); Load_Device_Function(vkCmdBeginQueryIndexedEXT); Load_Device_Function(vkCmdEndQueryIndexedEXT); Load_Device_Function(vkCmdDrawIndirectByteCountEXT); Load_Device_Function(vkGetImageViewHandleNVX); Load_Device_Function(vkGetImageViewAddressNVX); Load_Device_Function(vkCmdDrawIndirectCountAMD); Load_Device_Function(vkCmdDrawIndexedIndirectCountAMD); Load_Device_Function(vkGetShaderInfoAMD); Load_Device_Function(vkGetPhysicalDeviceExternalImageFormatPropertiesNV); Load_Device_Function(vkCmdBeginConditionalRenderingEXT); Load_Device_Function(vkCmdEndConditionalRenderingEXT); Load_Device_Function(vkCmdSetViewportWScalingNV); Load_Device_Function(vkReleaseDisplayEXT); Load_Device_Function(vkGetPhysicalDeviceSurfaceCapabilities2EXT); Load_Device_Function(vkDisplayPowerControlEXT); Load_Device_Function(vkRegisterDeviceEventEXT); Load_Device_Function(vkRegisterDisplayEventEXT); Load_Device_Function(vkGetSwapchainCounterEXT); Load_Device_Function(vkGetRefreshCycleDurationGOOGLE); Load_Device_Function(vkGetPastPresentationTimingGOOGLE); Load_Device_Function(vkCmdSetDiscardRectangleEXT); Load_Device_Function(vkSetHdrMetadataEXT); Load_Device_Function(vkDebugUtilsMessengerCallbackEXT); Load_Device_Function(vkSetDebugUtilsObjectNameEXT); Load_Device_Function(vkSetDebugUtilsObjectTagEXT); Load_Device_Function(vkQueueBeginDebugUtilsLabelEXT); Load_Device_Function(vkQueueEndDebugUtilsLabelEXT); Load_Device_Function(vkQueueInsertDebugUtilsLabelEXT); Load_Device_Function(vkCmdBeginDebugUtilsLabelEXT); Load_Device_Function(vkCmdEndDebugUtilsLabelEXT); Load_Device_Function(vkCmdInsertDebugUtilsLabelEXT); Load_Device_Function(vkCreateDebugUtilsMessengerEXT); Load_Device_Function(vkDestroyDebugUtilsMessengerEXT); Load_Device_Function(vkSubmitDebugUtilsMessageEXT); Load_Device_Function(vkCmdSetSampleLocationsEXT); Load_Device_Function(vkGetPhysicalDeviceMultisamplePropertiesEXT); Load_Device_Function(vkGetImageDrmFormatModifierPropertiesEXT); Load_Device_Function(vkCreateValidationCacheEXT); Load_Device_Function(vkDestroyValidationCacheEXT); Load_Device_Function(vkMergeValidationCachesEXT); Load_Device_Function(vkGetValidationCacheDataEXT); Load_Device_Function(vkCmdBindShadingRateImageNV); Load_Device_Function(vkCmdSetViewportShadingRatePaletteNV); Load_Device_Function(vkCmdSetCoarseSampleOrderNV); Load_Device_Function(vkCreateAccelerationStructureNV); Load_Device_Function(vkDestroyAccelerationStructureKHR); Load_Device_Function(vkDestroyAccelerationStructureNV); Load_Device_Function(vkGetAccelerationStructureMemoryRequirementsNV); Load_Device_Function(vkBindAccelerationStructureMemoryKHR); Load_Device_Function(vkBindAccelerationStructureMemoryNV); Load_Device_Function(vkCmdBuildAccelerationStructureNV); Load_Device_Function(vkCmdCopyAccelerationStructureNV); Load_Device_Function(vkCmdTraceRaysNV); Load_Device_Function(vkCreateRayTracingPipelinesNV); Load_Device_Function(vkGetRayTracingShaderGroupHandlesKHR); Load_Device_Function(vkGetRayTracingShaderGroupHandlesNV); Load_Device_Function(vkGetAccelerationStructureHandleNV); Load_Device_Function(vkCmdWriteAccelerationStructuresPropertiesKHR); Load_Device_Function(vkCmdWriteAccelerationStructuresPropertiesNV); Load_Device_Function(vkCompileDeferredNV); Load_Device_Function(vkGetMemoryHostPointerPropertiesEXT); Load_Device_Function(vkCmdWriteBufferMarkerAMD); Load_Device_Function(vkGetPhysicalDeviceCalibrateableTimeDomainsEXT); Load_Device_Function(vkGetCalibratedTimestampsEXT); Load_Device_Function(vkCmdDrawMeshTasksNV); Load_Device_Function(vkCmdDrawMeshTasksIndirectNV); Load_Device_Function(vkCmdDrawMeshTasksIndirectCountNV); Load_Device_Function(vkCmdSetExclusiveScissorNV); Load_Device_Function(vkCmdSetCheckpointNV); Load_Device_Function(vkGetQueueCheckpointDataNV); Load_Device_Function(vkInitializePerformanceApiINTEL); Load_Device_Function(vkUninitializePerformanceApiINTEL); Load_Device_Function(vkCmdSetPerformanceMarkerINTEL); Load_Device_Function(vkCmdSetPerformanceStreamMarkerINTEL); Load_Device_Function(vkCmdSetPerformanceOverrideINTEL); Load_Device_Function(vkAcquirePerformanceConfigurationINTEL); Load_Device_Function(vkReleasePerformanceConfigurationINTEL); Load_Device_Function(vkQueueSetPerformanceConfigurationINTEL); Load_Device_Function(vkGetPerformanceParameterINTEL); Load_Device_Function(vkSetLocalDimmingAMD); Load_Device_Function(vkGetBufferDeviceAddressEXT); Load_Device_Function(vkGetPhysicalDeviceToolPropertiesEXT); Load_Device_Function(vkGetPhysicalDeviceCooperativeMatrixPropertiesNV); Load_Device_Function(vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV); Load_Device_Function(vkCreateHeadlessSurfaceEXT); Load_Device_Function(vkCmdSetLineStippleEXT); Load_Device_Function(vkResetQueryPoolEXT); Load_Device_Function(vkGetGeneratedCommandsMemoryRequirementsNV); Load_Device_Function(vkCmdPreprocessGeneratedCommandsNV); Load_Device_Function(vkCmdExecuteGeneratedCommandsNV); Load_Device_Function(vkCmdBindPipelineShaderGroupNV); Load_Device_Function(vkCreateIndirectCommandsLayoutNV); Load_Device_Function(vkDestroyIndirectCommandsLayoutNV); Load_Device_Function(vkCreatePrivateDataSlotEXT); Load_Device_Function(vkDestroyPrivateDataSlotEXT); Load_Device_Function(vkSetPrivateDataEXT); Load_Device_Function(vkGetPrivateDataEXT); }