Felix Hufnagel 9 lat temu
rodzic
commit
d632ce2db1
1 zmienionych plików z 229 dodań i 9 usunięć
  1. 229 9
      source/derelict/vulkan/vulkan.d

+ 229 - 9
source/derelict/vulkan/vulkan.d

@@ -53,15 +53,235 @@ class DerelictESCAPILoader : SharedLibLoader
     protected
     {
         override void loadSymbols()
-        {
-            bindFunc(cast(void**)&escapiInitCOM, "initCOM");
-            bindFunc(cast(void**)&escapiCountCaptureDevices, "countCaptureDevices");
-            bindFunc(cast(void**)&escapiInitCapture, "initCapture");
-            bindFunc(cast(void**)&escapiDeinitCapture, "deinitCapture");            
-            bindFunc(cast(void**)&escapiDoCapture, "doCapture");
-            bindFunc(cast(void**)&escapiIsCaptureDone, "isCaptureDone");
-            bindFunc(cast(void**)&escapiGetCaptureDeviceName, "getCaptureDeviceName");
-            bindFunc(cast(void**)&escapiESCAPIDLLVersion, "ESCAPIDLLVersion");
+        {		
+			bindFunc(cast(void**)&vkAllocationFunction, "vkAllocationFunction");
+			bindFunc(cast(void**)&vkReallocationFunction, "vkReallocationFunction");
+			bindFunc(cast(void**)&vkFreeFunction, "vkFreeFunction");
+			bindFunc(cast(void**)&vkInternalAllocationNotification, "vkInternalAllocationNotification");
+			bindFunc(cast(void**)&vkInternalFreeNotification, "vkInternalFreeNotification");
+			bindFunc(cast(void**)&vkVoidFunction, "vkVoidFunction");
+			bindFunc(cast(void**)&vkCreateInstance, "vkCreateInstance");
+			bindFunc(cast(void**)&vkDestroyInstance, "vkDestroyInstance");
+			bindFunc(cast(void**)&vkEnumeratePhysicalDevices, "vkEnumeratePhysicalDevices");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceFeatures, "vkGetPhysicalDeviceFeatures");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceFormatProperties, "vkGetPhysicalDeviceFormatProperties");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceImageFormatProperties, "vkGetPhysicalDeviceImageFormatProperties");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceProperties, "vkGetPhysicalDeviceProperties");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceQueueFamilyProperties, "vkGetPhysicalDeviceQueueFamilyProperties");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceMemoryProperties, "vkGetPhysicalDeviceMemoryProperties");
+			bindFunc(cast(void**)&vkGetInstanceProcAddr, "vkGetInstanceProcAddr");
+			bindFunc(cast(void**)&vkGetDeviceProcAddr, "vkGetDeviceProcAddr");
+			bindFunc(cast(void**)&vkCreateDevice, "vkCreateDevice");
+			bindFunc(cast(void**)&vkDestroyDevice, "vkDestroyDevice");
+			bindFunc(cast(void**)&vkEnumerateInstanceExtensionProperties, "vkEnumerateInstanceExtensionProperties");
+			bindFunc(cast(void**)&vkEnumerateDeviceExtensionProperties, "vkEnumerateDeviceExtensionProperties");
+			bindFunc(cast(void**)&vkEnumerateInstanceLayerProperties, "vkEnumerateInstanceLayerProperties");
+			bindFunc(cast(void**)&vkEnumerateDeviceLayerProperties, "vkEnumerateDeviceLayerProperties");
+			bindFunc(cast(void**)&vkGetDeviceQueue, "vkGetDeviceQueue");
+			bindFunc(cast(void**)&vkQueueSubmit, "vkQueueSubmit");
+			bindFunc(cast(void**)&vkQueueWaitIdle, "vkQueueWaitIdle");
+			bindFunc(cast(void**)&vkDeviceWaitIdle, "vkDeviceWaitIdle");
+			bindFunc(cast(void**)&vkAllocateMemory, "vkAllocateMemory");
+			bindFunc(cast(void**)&vkFreeMemory, "vkFreeMemory");
+			bindFunc(cast(void**)&vkMapMemory, "vkMapMemory");
+			bindFunc(cast(void**)&vkUnmapMemory, "vkUnmapMemory");
+			bindFunc(cast(void**)&vkFlushMappedMemoryRanges, "vkFlushMappedMemoryRanges");
+			bindFunc(cast(void**)&vkInvalidateMappedMemoryRanges, "vkInvalidateMappedMemoryRanges");
+			bindFunc(cast(void**)&vkGetDeviceMemoryCommitment, "vkGetDeviceMemoryCommitment");
+			bindFunc(cast(void**)&vkBindBufferMemory, "vkBindBufferMemory");
+			bindFunc(cast(void**)&vkBindImageMemory, "vkBindImageMemory");
+			bindFunc(cast(void**)&vkGetBufferMemoryRequirements, "vkGetBufferMemoryRequirements");
+			bindFunc(cast(void**)&vkGetImageMemoryRequirements, "vkGetImageMemoryRequirements");
+			bindFunc(cast(void**)&vkGetImageSparseMemoryRequirements, "vkGetImageSparseMemoryRequirements");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceSparseImageFormatProperties, "vkGetPhysicalDeviceSparseImageFormatProperties");
+			bindFunc(cast(void**)&vkQueueBindSparse, "vkQueueBindSparse");
+			bindFunc(cast(void**)&vkCreateFence, "vkCreateFence");
+			bindFunc(cast(void**)&vkDestroyFence, "vkDestroyFence");
+			bindFunc(cast(void**)&vkResetFences, "vkResetFences");
+			bindFunc(cast(void**)&vkGetFenceStatus, "vkGetFenceStatus");
+			bindFunc(cast(void**)&vkWaitForFences, "vkWaitForFences");
+			bindFunc(cast(void**)&vkCreateSemaphore, "vkCreateSemaphore");
+			bindFunc(cast(void**)&vkDestroySemaphore, "vkDestroySemaphore");
+			bindFunc(cast(void**)&vkCreateEvent, "vkCreateEvent");
+			bindFunc(cast(void**)&vkDestroyEvent, "vkDestroyEvent");
+			bindFunc(cast(void**)&vkGetEventStatus, "vkGetEventStatus");
+			bindFunc(cast(void**)&vkSetEvent, "vkSetEvent");
+			bindFunc(cast(void**)&vkAllocationFunction, "vkAllocationFunction");
+			bindFunc(cast(void**)&vkReallocationFunction, "vkReallocationFunction");
+			bindFunc(cast(void**)&vkFreeFunction, "vkFreeFunction");
+			bindFunc(cast(void**)&vkInternalAllocationNotification, "vkInternalAllocationNotification");
+			bindFunc(cast(void**)&vkInternalFreeNotification, "vkInternalFreeNotification");
+			bindFunc(cast(void**)&vkVoidFunction, "vkVoidFunction");
+			bindFunc(cast(void**)&vkCreateInstance, "vkCreateInstance");
+			bindFunc(cast(void**)&vkDestroyInstance, "vkDestroyInstance");
+			bindFunc(cast(void**)&vkEnumeratePhysicalDevices, "vkEnumeratePhysicalDevices");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceFeatures, "vkGetPhysicalDeviceFeatures");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceFormatProperties, "vkGetPhysicalDeviceFormatProperties");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceImageFormatProperties, "vkGetPhysicalDeviceImageFormatProperties");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceProperties, "vkGetPhysicalDeviceProperties");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceQueueFamilyProperties, "vkGetPhysicalDeviceQueueFamilyProperties");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceMemoryProperties, "vkGetPhysicalDeviceMemoryProperties");
+			bindFunc(cast(void**)&vkGetInstanceProcAddr, "vkGetInstanceProcAddr");
+			bindFunc(cast(void**)&vkGetDeviceProcAddr, "vkGetDeviceProcAddr");
+			bindFunc(cast(void**)&vkCreateDevice, "vkCreateDevice");
+			bindFunc(cast(void**)&vkDestroyDevice, "vkDestroyDevice");
+			bindFunc(cast(void**)&vkEnumerateInstanceExtensionProperties, "vkEnumerateInstanceExtensionProperties");
+			bindFunc(cast(void**)&vkEnumerateDeviceExtensionProperties, "vkEnumerateDeviceExtensionProperties");
+			bindFunc(cast(void**)&vkEnumerateInstanceLayerProperties, "vkEnumerateInstanceLayerProperties");
+			bindFunc(cast(void**)&vkEnumerateDeviceLayerProperties, "vkEnumerateDeviceLayerProperties");
+			bindFunc(cast(void**)&vkGetDeviceQueue, "vkGetDeviceQueue");
+			bindFunc(cast(void**)&vkQueueSubmit, "vkQueueSubmit");
+			bindFunc(cast(void**)&vkQueueWaitIdle, "vkQueueWaitIdle");
+			bindFunc(cast(void**)&vkDeviceWaitIdle, "vkDeviceWaitIdle");
+			bindFunc(cast(void**)&vkAllocateMemory, "vkAllocateMemory");
+			bindFunc(cast(void**)&vkFreeMemory, "vkFreeMemory");
+			bindFunc(cast(void**)&vkMapMemory, "vkMapMemory");
+			bindFunc(cast(void**)&vkUnmapMemory, "vkUnmapMemory");
+			bindFunc(cast(void**)&vkFlushMappedMemoryRanges, "vkFlushMappedMemoryRanges");
+			bindFunc(cast(void**)&vkInvalidateMappedMemoryRanges, "vkInvalidateMappedMemoryRanges");
+			bindFunc(cast(void**)&vkGetDeviceMemoryCommitment, "vkGetDeviceMemoryCommitment");
+			bindFunc(cast(void**)&vkBindBufferMemory, "vkBindBufferMemory");
+			bindFunc(cast(void**)&vkBindImageMemory, "vkBindImageMemory");
+			bindFunc(cast(void**)&vkGetBufferMemoryRequirements, "vkGetBufferMemoryRequirements");
+			bindFunc(cast(void**)&vkGetImageMemoryRequirements, "vkGetImageMemoryRequirements");
+			bindFunc(cast(void**)&vkGetImageSparseMemoryRequirements, "vkGetImageSparseMemoryRequirements");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceSparseImageFormatProperties, "vkGetPhysicalDeviceSparseImageFormatProperties");
+			bindFunc(cast(void**)&vkQueueBindSparse, "vkQueueBindSparse");
+			bindFunc(cast(void**)&vkCreateFence, "vkCreateFence");
+			bindFunc(cast(void**)&vkDestroyFence, "vkDestroyFence");
+			bindFunc(cast(void**)&vkResetFences, "vkResetFences");
+			bindFunc(cast(void**)&vkGetFenceStatus, "vkGetFenceStatus");
+			bindFunc(cast(void**)&vkWaitForFences, "vkWaitForFences");
+			bindFunc(cast(void**)&vkCreateSemaphore, "vkCreateSemaphore");
+			bindFunc(cast(void**)&vkDestroySemaphore, "vkDestroySemaphore");
+			bindFunc(cast(void**)&vkCreateEvent, "vkCreateEvent");
+			bindFunc(cast(void**)&vkDestroyEvent, "vkDestroyEvent");
+			bindFunc(cast(void**)&vkGetEventStatus, "vkGetEventStatus");
+			bindFunc(cast(void**)&vkSetEvent, "vkSetEvent");
+			bindFunc(cast(void**)&vkResetEvent, "vkResetEvent");
+			bindFunc(cast(void**)&vkCreateQueryPool, "vkCreateQueryPool");
+			bindFunc(cast(void**)&vkDestroyQueryPool, "vkDestroyQueryPool");
+			bindFunc(cast(void**)&vkGetQueryPoolResults, "vkGetQueryPoolResults");
+			bindFunc(cast(void**)&vkCreateBuffer, "vkCreateBuffer");
+			bindFunc(cast(void**)&vkDestroyBuffer, "vkDestroyBuffer");
+			bindFunc(cast(void**)&vkCreateBufferView, "vkCreateBufferView");
+			bindFunc(cast(void**)&vkDestroyBufferView, "vkDestroyBufferView");
+			bindFunc(cast(void**)&vkCreateImage, "vkCreateImage");
+			bindFunc(cast(void**)&vkDestroyImage, "vkDestroyImage");
+			bindFunc(cast(void**)&vkGetImageSubresourceLayout, "vkGetImageSubresourceLayout");
+			bindFunc(cast(void**)&vkCreateImageView, "vkCreateImageView");
+			bindFunc(cast(void**)&vkDestroyImageView, "vkDestroyImageView");
+			bindFunc(cast(void**)&vkCreateShaderModule, "vkCreateShaderModule");
+			bindFunc(cast(void**)&vkDestroyShaderModule, "vkDestroyShaderModule");
+			bindFunc(cast(void**)&vkCreatePipelineCache, "vkCreatePipelineCache");
+			bindFunc(cast(void**)&vkDestroyPipelineCache, "vkDestroyPipelineCache");
+			bindFunc(cast(void**)&vkGetPipelineCacheData, "vkGetPipelineCacheData");
+			bindFunc(cast(void**)&vkMergePipelineCaches, "vkMergePipelineCaches");
+			bindFunc(cast(void**)&vkCreateGraphicsPipelines, "vkCreateGraphicsPipelines");
+			bindFunc(cast(void**)&vkCreateComputePipelines, "vkCreateComputePipelines");
+			bindFunc(cast(void**)&vkDestroyPipeline, "vkDestroyPipeline");
+			bindFunc(cast(void**)&vkCreatePipelineLayout, "vkCreatePipelineLayout");
+			bindFunc(cast(void**)&vkDestroyPipelineLayout, "vkDestroyPipelineLayout");
+			bindFunc(cast(void**)&vkCreateSampler, "vkCreateSampler");
+			bindFunc(cast(void**)&vkDestroySampler, "vkDestroySampler");
+			bindFunc(cast(void**)&vkCreateDescriptorSetLayout, "vkCreateDescriptorSetLayout");
+			bindFunc(cast(void**)&vkDestroyDescriptorSetLayout, "vkDestroyDescriptorSetLayout");
+			bindFunc(cast(void**)&vkCreateDescriptorPool, "vkCreateDescriptorPool");
+			bindFunc(cast(void**)&vkDestroyDescriptorPool, "vkDestroyDescriptorPool");
+			bindFunc(cast(void**)&vkResetDescriptorPool, "vkResetDescriptorPool");
+			bindFunc(cast(void**)&vkAllocateDescriptorSets, "vkAllocateDescriptorSets");
+			bindFunc(cast(void**)&vkFreeDescriptorSets, "vkFreeDescriptorSets");
+			bindFunc(cast(void**)&vkUpdateDescriptorSets, "vkUpdateDescriptorSets");
+			bindFunc(cast(void**)&vkCreateFramebuffer, "vkCreateFramebuffer");
+			bindFunc(cast(void**)&vkDestroyFramebuffer, "vkDestroyFramebuffer");
+			bindFunc(cast(void**)&vkCreateRenderPass, "vkCreateRenderPass");
+			bindFunc(cast(void**)&vkDestroyRenderPass, "vkDestroyRenderPass");
+			bindFunc(cast(void**)&vkGetRenderAreaGranularity, "vkGetRenderAreaGranularity");
+			bindFunc(cast(void**)&vkCreateCommandPool, "vkCreateCommandPool");
+			bindFunc(cast(void**)&vkDestroyCommandPool, "vkDestroyCommandPool");
+			bindFunc(cast(void**)&vkResetCommandPool, "vkResetCommandPool");
+			bindFunc(cast(void**)&vkAllocateCommandBuffers, "vkAllocateCommandBuffers");
+			bindFunc(cast(void**)&vkFreeCommandBuffers, "vkFreeCommandBuffers");
+			bindFunc(cast(void**)&vkBeginCommandBuffer, "vkBeginCommandBuffer");
+			bindFunc(cast(void**)&vkEndCommandBuffer, "vkEndCommandBuffer");
+			bindFunc(cast(void**)&vkResetCommandBuffer, "vkResetCommandBuffer");
+			bindFunc(cast(void**)&vkCmdBindPipeline, "vkCmdBindPipeline");
+			bindFunc(cast(void**)&vkCmdSetViewport, "vkCmdSetViewport");
+			bindFunc(cast(void**)&vkCmdSetScissor, "vkCmdSetScissor");
+			bindFunc(cast(void**)&vkCmdSetLineWidth, "vkCmdSetLineWidth");
+			bindFunc(cast(void**)&vkCmdSetDepthBias, "vkCmdSetDepthBias");
+			bindFunc(cast(void**)&vkCmdSetBlendConstants, "vkCmdSetBlendConstants");
+			bindFunc(cast(void**)&vkCmdSetDepthBounds, "vkCmdSetDepthBounds");
+			bindFunc(cast(void**)&vkCmdSetStencilCompareMask, "vkCmdSetStencilCompareMask");
+			bindFunc(cast(void**)&vkCmdSetStencilWriteMask, "vkCmdSetStencilWriteMask");
+			bindFunc(cast(void**)&vkCmdSetStencilReference, "vkCmdSetStencilReference");
+			bindFunc(cast(void**)&vkCmdBindDescriptorSets, "vkCmdBindDescriptorSets");
+			bindFunc(cast(void**)&vkCmdBindIndexBuffer, "vkCmdBindIndexBuffer");
+			bindFunc(cast(void**)&vkCmdBindVertexBuffers, "vkCmdBindVertexBuffers");
+			bindFunc(cast(void**)&vkCmdDraw, "vkCmdDraw");
+			bindFunc(cast(void**)&vkCmdDrawIndexed, "vkCmdDrawIndexed");
+			bindFunc(cast(void**)&vkCmdDrawIndirect, "vkCmdDrawIndirect");
+			bindFunc(cast(void**)&vkCmdDrawIndexedIndirect, "vkCmdDrawIndexedIndirect");
+			bindFunc(cast(void**)&vkCmdDispatch, "vkCmdDispatch");
+			bindFunc(cast(void**)&vkCmdDispatchIndirect, "vkCmdDispatchIndirect");
+			bindFunc(cast(void**)&vkCmdCopyBuffer, "vkCmdCopyBuffer");
+			bindFunc(cast(void**)&vkCmdCopyImage, "vkCmdCopyImage");
+			bindFunc(cast(void**)&vkCmdBlitImage, "vkCmdBlitImage");
+			bindFunc(cast(void**)&vkCmdCopyBufferToImage, "vkCmdCopyBufferToImage");
+			bindFunc(cast(void**)&vkCmdCopyImageToBuffer, "vkCmdCopyImageToBuffer");
+			bindFunc(cast(void**)&vkCmdUpdateBuffer, "vkCmdUpdateBuffer");
+			bindFunc(cast(void**)&vkCmdFillBuffer, "vkCmdFillBuffer");
+			bindFunc(cast(void**)&vkCmdClearColorImage, "vkCmdClearColorImage");
+			bindFunc(cast(void**)&vkCmdClearDepthStencilImage, "vkCmdClearDepthStencilImage");
+			bindFunc(cast(void**)&vkCmdClearAttachments, "vkCmdClearAttachments");
+			bindFunc(cast(void**)&vkCmdResolveImage, "vkCmdResolveImage");
+			bindFunc(cast(void**)&vkCmdSetEvent, "vkCmdSetEvent");
+			bindFunc(cast(void**)&vkCmdResetEvent, "vkCmdResetEvent");
+			bindFunc(cast(void**)&vkCmdWaitEvents, "vkCmdWaitEvents");
+			bindFunc(cast(void**)&vkCmdPipelineBarrier, "vkCmdPipelineBarrier");
+			bindFunc(cast(void**)&vkCmdBeginQuery, "vkCmdBeginQuery");
+			bindFunc(cast(void**)&vkCmdEndQuery, "vkCmdEndQuery");
+			bindFunc(cast(void**)&vkCmdResetQueryPool, "vkCmdResetQueryPool");
+			bindFunc(cast(void**)&vkCmdWriteTimestamp, "vkCmdWriteTimestamp");
+			bindFunc(cast(void**)&vkCmdCopyQueryPoolResults, "vkCmdCopyQueryPoolResults");
+			bindFunc(cast(void**)&vkCmdPushConstants, "vkCmdPushConstants");
+			bindFunc(cast(void**)&vkCmdBeginRenderPass, "vkCmdBeginRenderPass");
+			bindFunc(cast(void**)&vkCmdNextSubpass, "vkCmdNextSubpass");
+			bindFunc(cast(void**)&vkCmdEndRenderPass, "vkCmdEndRenderPass");
+			bindFunc(cast(void**)&vkCmdExecuteCommands, "vkCmdExecuteCommands");
+			bindFunc(cast(void**)&vkDestroySurfaceKHR, "vkDestroySurfaceKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceSurfaceSupportKHR, "vkGetPhysicalDeviceSurfaceSupportKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceSurfaceCapabilitiesKHR, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceSurfaceFormatsKHR, "vkGetPhysicalDeviceSurfaceFormatsKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceSurfacePresentModesKHR, "vkGetPhysicalDeviceSurfacePresentModesKHR");
+			bindFunc(cast(void**)&vkCreateSwapchainKHR, "vkCreateSwapchainKHR");
+			bindFunc(cast(void**)&vkDestroySwapchainKHR, "vkDestroySwapchainKHR");
+			bindFunc(cast(void**)&vkGetSwapchainImagesKHR, "vkGetSwapchainImagesKHR");
+			bindFunc(cast(void**)&vkAcquireNextImageKHR, "vkAcquireNextImageKHR");
+			bindFunc(cast(void**)&vkQueuePresentKHR, "vkQueuePresentKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceDisplayPropertiesKHR, "vkGetPhysicalDeviceDisplayPropertiesKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceDisplayPlanePropertiesKHR, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
+			bindFunc(cast(void**)&vkGetDisplayPlaneSupportedDisplaysKHR, "vkGetDisplayPlaneSupportedDisplaysKHR");
+			bindFunc(cast(void**)&vkGetDisplayModePropertiesKHR, "vkGetDisplayModePropertiesKHR");
+			bindFunc(cast(void**)&vkCreateDisplayModeKHR, "vkCreateDisplayModeKHR");
+			bindFunc(cast(void**)&vkGetDisplayPlaneCapabilitiesKHR, "vkGetDisplayPlaneCapabilitiesKHR");
+			bindFunc(cast(void**)&vkCreateDisplayPlaneSurfaceKHR, "vkCreateDisplayPlaneSurfaceKHR");
+			bindFunc(cast(void**)&vkCreateSharedSwapchainsKHR, "vkCreateSharedSwapchainsKHR");
+			bindFunc(cast(void**)&vkCreateXlibSurfaceKHR, "vkCreateXlibSurfaceKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceXlibPresentationSupportKHR, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
+			bindFunc(cast(void**)&vkCreateXcbSurfaceKHR, "vkCreateXcbSurfaceKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceXcbPresentationSupportKHR, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
+			bindFunc(cast(void**)&vkCreateWaylandSurfaceKHR, "vkCreateWaylandSurfaceKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceWaylandPresentationSupportKHR, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
+			bindFunc(cast(void**)&vkCreateMirSurfaceKHR, "vkCreateMirSurfaceKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceMirPresentationSupportKHR, "vkGetPhysicalDeviceMirPresentationSupportKHR");
+			bindFunc(cast(void**)&vkCreateAndroidSurfaceKHR, "vkCreateAndroidSurfaceKHR");
+			bindFunc(cast(void**)&vkCreateWin32SurfaceKHR, "vkCreateWin32SurfaceKHR");
+			bindFunc(cast(void**)&vkGetPhysicalDeviceWin32PresentationSupportKHR, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
+			bindFunc(cast(void**)&vkDebugReportCallbackEXT, "vkDebugReportCallbackEXT");
+			bindFunc(cast(void**)&vkCreateDebugReportCallbackEXT, "vkCreateDebugReportCallbackEXT");
+			bindFunc(cast(void**)&vkDestroyDebugReportCallbackEXT, "vkDestroyDebugReportCallbackEXT");
+			bindFunc(cast(void**)&vkDebugReportMessageEXT, "vkDebugReportMessageEXT");
         }
     }
     public