Sfoglia il codice sorgente

fixed vulkan error when building win32x86 apps

davecamp 8 anni fa
parent
commit
6d250b7a3a
3 ha cambiato i file con 371 aggiunte e 180 eliminazioni
  1. 7 180
      vulkan.mod/vkApi.bmx
  2. 182 0
      vulkan.mod/vkFunctions.bmx
  3. 182 0
      vulkan.mod/vkFunctionsWin32x86.bmx

+ 7 - 180
vulkan.mod/vkApi.bmx

@@ -3555,186 +3555,13 @@ Type VkDebugMarkerMarkerInfoEXT
 	Field color_2:Float
 	Field color_3:Float
 EndType
-' Global functions
-Global vkCreateInstance:Int(pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pInstance:Byte Ptr)"Os"
-Global vkEnumerateInstanceExtensionProperties:Int(pLayerName:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
-Global vkEnumerateInstanceLayerProperties:Int(pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
-' Instance functions
-Global vkDestroyInstance(instance:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkEnumeratePhysicalDevices:Int(instance:Byte Ptr,pPhysicalDeviceCount:UInt Ptr,pPhysicalDevices:Byte Ptr)"Os"
-Global vkGetInstanceProcAddr:Byte Ptr(instance:Byte Ptr,pName:Byte Ptr)"Os"
-Global vkDestroySurfaceKHR(instance:Byte Ptr,surface:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateDisplayPlaneSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
-Global vkCreateXlibSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
-Global vkCreateXcbSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
-Global vkCreateWaylandSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
-Global vkCreateMirSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
-Global vkCreateAndroidSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
-Global vkCreateWin32SurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
-Global vkCreateDebugReportCallbackEXT:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pCallback:Byte Ptr)"Os"
-Global vkDestroyDebugReportCallbackEXT(instance:Byte Ptr,callback:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkDebugReportMessageEXT(instance:Byte Ptr,flags:UInt,objectType:Int,Object:ULong,location:Size_T,messageCode:Int,pLayerPrefix:Byte Ptr,pMessage:Byte Ptr)"Os"
-' PhysicalDevice functions
-Global vkGetPhysicalDeviceFeatures(physicalDevice:Byte Ptr,pFeatures:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceFormatProperties(physicalDevice:Byte Ptr,format:Int,pFormatProperties:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceImageFormatProperties:Int(physicalDevice:Byte Ptr,format:Int,type_:Int,tiling:Int,usage:UInt,flags:UInt,pImageFormatProperties:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceProperties(physicalDevice:Byte Ptr,pProperties:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceQueueFamilyProperties(physicalDevice:Byte Ptr,pQueueFamilyPropertyCount:UInt Ptr,pQueueFamilyProperties:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceMemoryProperties(physicalDevice:Byte Ptr,pMemoryProperties:Byte Ptr)"Os"
-Global vkCreateDevice:Int(physicalDevice:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pDevice:Byte Ptr)"Os"
-Global vkEnumerateDeviceExtensionProperties:Int(physicalDevice:Byte Ptr,pLayerName:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
-Global vkEnumerateDeviceLayerProperties:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceSparseImageFormatProperties(physicalDevice:Byte Ptr,format:Int,type_:Int,samples:Int,usage:UInt,tiling:Int,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceSurfaceSupportKHR:Int(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,surface:Byte Ptr,pSupported:UInt Ptr)"Os"
-Global vkGetPhysicalDeviceSurfaceCapabilitiesKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pSurfaceCapabilities:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceSurfaceFormatsKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pSurfaceFormatCount:UInt Ptr,pSurfaceFormats:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceSurfacePresentModesKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pPresentModeCount:UInt Ptr,pPresentModes:Int Ptr)"Os"
-Global vkGetPhysicalDeviceDisplayPropertiesKHR:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceDisplayPlanePropertiesKHR:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
-Global vkGetDisplayPlaneSupportedDisplaysKHR:Int(physicalDevice:Byte Ptr,planeIndex:UInt,pDisplayCount:UInt Ptr,pDisplays:Byte Ptr)"Os"
-Global vkGetDisplayModePropertiesKHR:Int(physicalDevice:Byte Ptr,display:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
-Global vkCreateDisplayModeKHR:Int(physicalDevice:Byte Ptr,display:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pMode:Byte Ptr)"Os"
-Global vkGetDisplayPlaneCapabilitiesKHR:Int(physicalDevice:Byte Ptr,mode:Byte Ptr,planeIndex:UInt,pCapabilities:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceXlibPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,dpy:Byte Ptr,visualID:ULong)"Os"
-Global vkGetPhysicalDeviceXcbPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,connection:Byte Ptr,visual_id:ULong)"Os"
-Global vkGetPhysicalDeviceWaylandPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,display:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceMirPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,connection:Byte Ptr)"Os"
-Global vkGetPhysicalDeviceWin32PresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt)"Os"
-' Device functions
-Global vkGetDeviceProcAddr:Byte Ptr(device:Byte Ptr,pName:Byte Ptr)"Os"
-Global vkDestroyDevice(device:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkGetDeviceQueue(device:Byte Ptr,queueFamilyIndex:UInt,queueIndex:UInt,pQueue:Byte Ptr)"Os"
-Global vkDeviceWaitIdle:Int(device:Byte Ptr)"Os"
-Global vkAllocateMemory:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pAllocator:Byte Ptr,pMemory:Byte Ptr)"Os"
-Global vkFreeMemory(device:Byte Ptr,memory:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkMapMemory:Int(device:Byte Ptr,memory:Byte Ptr,offset:ULong,size:ULong,flags:UInt,ppData:Byte Ptr)"Os"
-Global vkUnmapMemory(device:Byte Ptr,memory:Byte Ptr)"Os"
-Global vkFlushMappedMemoryRanges:Int(device:Byte Ptr,memoryRangeCount:UInt,pMemoryRanges:Byte Ptr)"Os"
-Global vkInvalidateMappedMemoryRanges:Int(device:Byte Ptr,memoryRangeCount:UInt,pMemoryRanges:Byte Ptr)"Os"
-Global vkGetDeviceMemoryCommitment(device:Byte Ptr,memory:Byte Ptr,pCommittedMemoryInBytes:ULong Ptr)"Os"
-Global vkBindBufferMemory:Int(device:Byte Ptr,buffer:Byte Ptr,memory:Byte Ptr,memoryOffset:ULong)"Os"
-Global vkBindImageMemory:Int(device:Byte Ptr,image:Byte Ptr,memory:Byte Ptr,memoryOffset:ULong)"Os"
-Global vkGetBufferMemoryRequirements(device:Byte Ptr,buffer:Byte Ptr,pMemoryRequirements:Byte Ptr)"Os"
-Global vkGetImageMemoryRequirements(device:Byte Ptr,image:Byte Ptr,pMemoryRequirements:Byte Ptr)"Os"
-Global vkGetImageSparseMemoryRequirements(device:Byte Ptr,image:Byte Ptr,pSparseMemoryRequirementCount:UInt Ptr,pSparseMemoryRequirements:Byte Ptr)"Os"
-Global vkCreateFence:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pFence:Byte Ptr)"Os"
-Global vkDestroyFence(device:Byte Ptr,fence:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkResetFences:Int(device:Byte Ptr,fenceCount:UInt,pFences:Byte Ptr)"Os"
-Global vkGetFenceStatus:Int(device:Byte Ptr,fence:Byte Ptr)"Os"
-Global vkWaitForFences:Int(device:Byte Ptr,fenceCount:UInt,pFences:Byte Ptr,waitAll:UInt,timeout:ULong)"Os"
-Global vkCreateSemaphore:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSemaphore:Byte Ptr)"Os"
-Global vkDestroySemaphore(device:Byte Ptr,semaphore:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateEvent:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pEvent:Byte Ptr)"Os"
-Global vkDestroyEvent(device:Byte Ptr,event:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkGetEventStatus:Int(device:Byte Ptr,event:Byte Ptr)"Os"
-Global vkSetEvent:Int(device:Byte Ptr,event:Byte Ptr)"Os"
-Global vkResetEvent:Int(device:Byte Ptr,event:Byte Ptr)"Os"
-Global vkCreateQueryPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pQueryPool:Byte Ptr)"Os"
-Global vkDestroyQueryPool(device:Byte Ptr,queryPool:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkGetQueryPoolResults:Int(device:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt,dataSize:Size_T,pData:Byte Ptr,stride:ULong,flags:UInt)"Os"
-Global vkCreateBuffer:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pBuffer:Byte Ptr)"Os"
-Global vkDestroyBuffer(device:Byte Ptr,buffer:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateBufferView:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pView:Byte Ptr)"Os"
-Global vkDestroyBufferView(device:Byte Ptr,bufferView:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateImage:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pImage:Byte Ptr)"Os"
-Global vkDestroyImage(device:Byte Ptr,image:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkGetImageSubresourceLayout(device:Byte Ptr,image:Byte Ptr,pSubresource:Byte Ptr,pLayout:Byte Ptr)"Os"
-Global vkCreateImageView:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pView:Byte Ptr)"Os"
-Global vkDestroyImageView(device:Byte Ptr,imageView:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateShaderModule:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pShaderModule:Byte Ptr)"Os"
-Global vkDestroyShaderModule(device:Byte Ptr,shaderModule:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreatePipelineCache:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pPipelineCache:Byte Ptr)"Os"
-Global vkDestroyPipelineCache(device:Byte Ptr,pipelineCache:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkGetPipelineCacheData:Int(device:Byte Ptr,pipelineCache:Byte Ptr,pDataSize:Size_T Ptr,pData:Byte Ptr)"Os"
-Global vkMergePipelineCaches:Int(device:Byte Ptr,dstCache:Byte Ptr,srcCacheCount:UInt,pSrcCaches:Byte Ptr)"Os"
-Global vkCreateGraphicsPipelines:Int(device:Byte Ptr,pipelineCache:Byte Ptr,createInfoCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pPipelines:Byte Ptr)"Os"
-Global vkCreateComputePipelines:Int(device:Byte Ptr,pipelineCache:Byte Ptr,createInfoCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pPipelines:Byte Ptr)"Os"
-Global vkDestroyPipeline(device:Byte Ptr,pipeline:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreatePipelineLayout:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pPipelineLayout:Byte Ptr)"Os"
-Global vkDestroyPipelineLayout(device:Byte Ptr,pipelineLayout:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateSampler:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSampler:Byte Ptr)"Os"
-Global vkDestroySampler(device:Byte Ptr,sampler:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateDescriptorSetLayout:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSetLayout:Byte Ptr)"Os"
-Global vkDestroyDescriptorSetLayout(device:Byte Ptr,descriptorSetLayout:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateDescriptorPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pDescriptorPool:Byte Ptr)"Os"
-Global vkDestroyDescriptorPool(device:Byte Ptr,descriptorPool:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkResetDescriptorPool:Int(device:Byte Ptr,descriptorPool:Byte Ptr,flags:UInt)"Os"
-Global vkAllocateDescriptorSets:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pDescriptorSets:Byte Ptr)"Os"
-Global vkFreeDescriptorSets:Int(device:Byte Ptr,descriptorPool:Byte Ptr,descriptorSetCount:UInt,pDescriptorSets:Byte Ptr)"Os"
-Global vkUpdateDescriptorSets(device:Byte Ptr,descriptorWriteCount:UInt,pDescriptorWrites:Byte Ptr,descriptorCopyCount:UInt,pDescriptorCopies:Byte Ptr)"Os"
-Global vkCreateFramebuffer:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pFramebuffer:Byte Ptr)"Os"
-Global vkDestroyFramebuffer(device:Byte Ptr,framebuffer:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkCreateRenderPass:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pRenderPass:Byte Ptr)"Os"
-Global vkDestroyRenderPass(device:Byte Ptr,renderPass:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkGetRenderAreaGranularity(device:Byte Ptr,renderPass:Byte Ptr,pGranularity:Byte Ptr)"Os"
-Global vkCreateCommandPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pCommandPool:Byte Ptr)"Os"
-Global vkDestroyCommandPool(device:Byte Ptr,commandPool:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkResetCommandPool:Int(device:Byte Ptr,commandPool:Byte Ptr,flags:UInt)"Os"
-Global vkAllocateCommandBuffers:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pCommandBuffers:Byte Ptr)"Os"
-Global vkFreeCommandBuffers(device:Byte Ptr,commandPool:Byte Ptr,commandBufferCount:UInt,pCommandBuffers:Byte Ptr)"Os"
-Global vkCreateSwapchainKHR:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSwapchain:Byte Ptr)"Os"
-Global vkDestroySwapchainKHR(device:Byte Ptr,swapchain:Byte Ptr,pAllocator:Byte Ptr)"Os"
-Global vkGetSwapchainImagesKHR:Int(device:Byte Ptr,swapchain:Byte Ptr,pSwapchainImageCount:UInt Ptr,pSwapchainImages:Byte Ptr)"Os"
-Global vkAcquireNextImageKHR:Int(device:Byte Ptr,swapchain:Byte Ptr,timeout:ULong,semaphore:Byte Ptr,fence:Byte Ptr,pImageIndex:UInt Ptr)"Os"
-Global vkCreateSharedSwapchainsKHR:Int(device:Byte Ptr,swapchainCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pSwapchains:Byte Ptr)"Os"
-Global vkDebugMarkerSetObjectTagEXT:Int(device:Byte Ptr,pTagInfo:Byte Ptr)"Os"
-Global vkDebugMarkerSetObjectNameEXT:Int(device:Byte Ptr,pNameInfo:Byte Ptr)"Os"
-' Queue functions
-Global vkQueueSubmit:Int(queue:Byte Ptr,submitCount:UInt,pSubmits:Byte Ptr,fence:Byte Ptr)"Os"
-Global vkQueueWaitIdle:Int(queue:Byte Ptr)"Os"
-Global vkQueueBindSparse:Int(queue:Byte Ptr,bindInfoCount:UInt,pBindInfo:Byte Ptr,fence:Byte Ptr)"Os"
-Global vkQueuePresentKHR:Int(queue:Byte Ptr,pPresentInfo:Byte Ptr)"Os"
-' CommandBuffer functions
-Global vkBeginCommandBuffer:Int(commandBuffer:Byte Ptr,pBeginInfo:Byte Ptr)"Os"
-Global vkEndCommandBuffer:Int(commandBuffer:Byte Ptr)"Os"
-Global vkResetCommandBuffer:Int(commandBuffer:Byte Ptr,flags:UInt)"Os"
-Global vkCmdBindPipeline(commandBuffer:Byte Ptr,pipelineBindPoint:Int,pipeline:Byte Ptr)"Os"
-Global vkCmdSetViewport(commandBuffer:Byte Ptr,firstViewport:UInt,viewportCount:UInt,pViewports:Byte Ptr)"Os"
-Global vkCmdSetScissor(commandBuffer:Byte Ptr,firstScissor:UInt,scissorCount:UInt,pScissors:Byte Ptr)"Os"
-Global vkCmdSetLineWidth(commandBuffer:Byte Ptr,lineWidth:Float)"Os"
-Global vkCmdSetDepthBias(commandBuffer:Byte Ptr,depthBiasConstantFactor:Float,depthBiasClamp:Float,depthBiasSlopeFactor:Float)"Os"
-Global vkCmdSetBlendConstants(commandBuffer:Byte Ptr,blendConstants:Float Ptr)"Os"
-Global vkCmdSetDepthBounds(commandBuffer:Byte Ptr,minDepthBounds:Float,maxDepthBounds:Float)"Os"
-Global vkCmdSetStencilCompareMask(commandBuffer:Byte Ptr,faceMask:UInt,compareMask:UInt)"Os"
-Global vkCmdSetStencilWriteMask(commandBuffer:Byte Ptr,faceMask:UInt,writeMask:UInt)"Os"
-Global vkCmdSetStencilReference(commandBuffer:Byte Ptr,faceMask:UInt,reference:UInt)"Os"
-Global vkCmdBindDescriptorSets(commandBuffer:Byte Ptr,pipelineBindPoint:Int,layout:Byte Ptr,firstSet:UInt,descriptorSetCount:UInt,pDescriptorSets:Byte Ptr,dynamicOffsetCount:UInt,pDynamicOffsets:UInt Ptr)"Os"
-Global vkCmdBindIndexBuffer(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,indexType:Int)"Os"
-Global vkCmdBindVertexBuffers(commandBuffer:Byte Ptr,firstBinding:UInt,bindingCount:UInt,pBuffers:Byte Ptr,pOffsets:ULong Ptr)"Os"
-Global vkCmdDraw(commandBuffer:Byte Ptr,vertexCount:UInt,instanceCount:UInt,firstVertex:UInt,firstInstance:UInt)"Os"
-Global vkCmdDrawIndexed(commandBuffer:Byte Ptr,indexCount:UInt,instanceCount:UInt,firstIndex:UInt,vertexOffset:Int,firstInstance:UInt)"Os"
-Global vkCmdDrawIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,drawCount:UInt,stride:UInt)"Os"
-Global vkCmdDrawIndexedIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,drawCount:UInt,stride:UInt)"Os"
-Global vkCmdDispatch(commandBuffer:Byte Ptr,x:UInt,y:UInt,z:UInt)"Os"
-Global vkCmdDispatchIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong)"Os"
-Global vkCmdCopyBuffer(commandBuffer:Byte Ptr,srcBuffer:Byte Ptr,dstBuffer:Byte Ptr,regionCount:UInt,pRegions:Byte Ptr)"Os"
-Global vkCmdCopyImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Os"
-Global vkCmdBlitImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr,filter:Int)"Os"
-Global vkCmdCopyBufferToImage(commandBuffer:Byte Ptr,srcBuffer:Byte Ptr,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Os"
-Global vkCmdCopyImageToBuffer(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstBuffer:Byte Ptr,regionCount:UInt,pRegions:Byte Ptr)"Os"
-Global vkCmdUpdateBuffer(commandBuffer:Byte Ptr,dstBuffer:Byte Ptr,dstOffset:ULong,dataSize:ULong,pData:Byte Ptr)"Os"
-Global vkCmdFillBuffer(commandBuffer:Byte Ptr,dstBuffer:Byte Ptr,dstOffset:ULong,size:ULong,data:UInt)"Os"
-Global vkCmdClearColorImage(commandBuffer:Byte Ptr,image:Byte Ptr,imageLayout:Int,pColor:Byte Ptr,rangeCount:UInt,pRanges:Byte Ptr)"Os"
-Global vkCmdClearDepthStencilImage(commandBuffer:Byte Ptr,image:Byte Ptr,imageLayout:Int,pDepthStencil:Byte Ptr,rangeCount:UInt,pRanges:Byte Ptr)"Os"
-Global vkCmdClearAttachments(commandBuffer:Byte Ptr,attachmentCount:UInt,pAttachments:Byte Ptr,rectCount:UInt,pRects:Byte Ptr)"Os"
-Global vkCmdResolveImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Os"
-Global vkCmdSetEvent(commandBuffer:Byte Ptr,event:Byte Ptr,stageMask:UInt)"Os"
-Global vkCmdResetEvent(commandBuffer:Byte Ptr,event:Byte Ptr,stageMask:UInt)"Os"
-Global vkCmdWaitEvents(commandBuffer:Byte Ptr,eventCount:UInt,pEvents:Byte Ptr,srcStageMask:UInt,dstStageMask:UInt,memoryBarrierCount:UInt,pMemoryBarriers:Byte Ptr,bufferMemoryBarrierCount:UInt,pBufferMemoryBarriers:Byte Ptr,imageMemoryBarrierCount:UInt,pImageMemoryBarriers:Byte Ptr)"Os"
-Global vkCmdPipelineBarrier(commandBuffer:Byte Ptr,srcStageMask:UInt,dstStageMask:UInt,dependencyFlags:UInt,memoryBarrierCount:UInt,pMemoryBarriers:Byte Ptr,bufferMemoryBarrierCount:UInt,pBufferMemoryBarriers:Byte Ptr,imageMemoryBarrierCount:UInt,pImageMemoryBarriers:Byte Ptr)"Os"
-Global vkCmdBeginQuery(commandBuffer:Byte Ptr,queryPool:Byte Ptr,query:UInt,flags:UInt)"Os"
-Global vkCmdEndQuery(commandBuffer:Byte Ptr,queryPool:Byte Ptr,query:UInt)"Os"
-Global vkCmdResetQueryPool(commandBuffer:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt)"Os"
-Global vkCmdWriteTimestamp(commandBuffer:Byte Ptr,pipelineStage:Int,queryPool:Byte Ptr,query:UInt)"Os"
-Global vkCmdCopyQueryPoolResults(commandBuffer:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt,dstBuffer:Byte Ptr,dstOffset:ULong,stride:ULong,flags:UInt)"Os"
-Global vkCmdPushConstants(commandBuffer:Byte Ptr,layout:Byte Ptr,stageFlags:UInt,offset:UInt,size:UInt,pValues:Byte Ptr)"Os"
-Global vkCmdBeginRenderPass(commandBuffer:Byte Ptr,pRenderPassBegin:Byte Ptr,contents:Int)"Os"
-Global vkCmdNextSubpass(commandBuffer:Byte Ptr,contents:Int)"Os"
-Global vkCmdEndRenderPass(commandBuffer:Byte Ptr)"Os"
-Global vkCmdExecuteCommands(commandBuffer:Byte Ptr,commandBufferCount:UInt,pCommandBuffers:Byte Ptr)"Os"
-Global vkCmdDebugMarkerBeginEXT(commandBuffer:Byte Ptr,pMarkerInfo:Byte Ptr)"Os"
-Global vkCmdDebugMarkerEndEXT(commandBuffer:Byte Ptr)"Os"
-Global vkCmdDebugMarkerInsertEXT(commandBuffer:Byte Ptr,pMarkerInfo:Byte Ptr)"Os"
+
+?Win32x86
+Include "vkFunctionsWin32x86.bmx"
+?Not Win32x86
+Include "vkFunctions.bmx"
+?
+
 Global VK_KHR_SURFACE_SPEC_VERSION:Int = 25
 Global VK_KHR_SURFACE_EXTENSION_NAME:String = "VK_KHR_surface"
 Global VK_COLORSPACE_SRGB_NONLINEAR_KHR:Int = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR

+ 182 - 0
vulkan.mod/vkFunctions.bmx

@@ -0,0 +1,182 @@
+
+' Global functions
+Global vkCreateInstance:Int(pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pInstance:Byte Ptr)"Os"
+Global vkEnumerateInstanceExtensionProperties:Int(pLayerName:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
+Global vkEnumerateInstanceLayerProperties:Int(pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
+' Instance functions
+Global vkDestroyInstance(instance:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkEnumeratePhysicalDevices:Int(instance:Byte Ptr,pPhysicalDeviceCount:UInt Ptr,pPhysicalDevices:Byte Ptr)"Os"
+Global vkGetInstanceProcAddr:Byte Ptr(instance:Byte Ptr,pName:Byte Ptr)"Os"
+Global vkDestroySurfaceKHR(instance:Byte Ptr,surface:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateDisplayPlaneSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
+Global vkCreateXlibSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
+Global vkCreateXcbSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
+Global vkCreateWaylandSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
+Global vkCreateMirSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
+Global vkCreateAndroidSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
+Global vkCreateWin32SurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Os"
+Global vkCreateDebugReportCallbackEXT:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pCallback:Byte Ptr)"Os"
+Global vkDestroyDebugReportCallbackEXT(instance:Byte Ptr,callback:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkDebugReportMessageEXT(instance:Byte Ptr,flags:UInt,objectType:Int,Object:ULong,location:Size_T,messageCode:Int,pLayerPrefix:Byte Ptr,pMessage:Byte Ptr)"Os"
+' PhysicalDevice functions
+Global vkGetPhysicalDeviceFeatures(physicalDevice:Byte Ptr,pFeatures:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceFormatProperties(physicalDevice:Byte Ptr,format:Int,pFormatProperties:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceImageFormatProperties:Int(physicalDevice:Byte Ptr,format:Int,type_:Int,tiling:Int,usage:UInt,flags:UInt,pImageFormatProperties:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceProperties(physicalDevice:Byte Ptr,pProperties:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceQueueFamilyProperties(physicalDevice:Byte Ptr,pQueueFamilyPropertyCount:UInt Ptr,pQueueFamilyProperties:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceMemoryProperties(physicalDevice:Byte Ptr,pMemoryProperties:Byte Ptr)"Os"
+Global vkCreateDevice:Int(physicalDevice:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pDevice:Byte Ptr)"Os"
+Global vkEnumerateDeviceExtensionProperties:Int(physicalDevice:Byte Ptr,pLayerName:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
+Global vkEnumerateDeviceLayerProperties:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceSparseImageFormatProperties(physicalDevice:Byte Ptr,format:Int,type_:Int,samples:Int,usage:UInt,tiling:Int,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceSurfaceSupportKHR:Int(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,surface:Byte Ptr,pSupported:UInt Ptr)"Os"
+Global vkGetPhysicalDeviceSurfaceCapabilitiesKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pSurfaceCapabilities:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceSurfaceFormatsKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pSurfaceFormatCount:UInt Ptr,pSurfaceFormats:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceSurfacePresentModesKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pPresentModeCount:UInt Ptr,pPresentModes:Int Ptr)"Os"
+Global vkGetPhysicalDeviceDisplayPropertiesKHR:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceDisplayPlanePropertiesKHR:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
+Global vkGetDisplayPlaneSupportedDisplaysKHR:Int(physicalDevice:Byte Ptr,planeIndex:UInt,pDisplayCount:UInt Ptr,pDisplays:Byte Ptr)"Os"
+Global vkGetDisplayModePropertiesKHR:Int(physicalDevice:Byte Ptr,display:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Os"
+Global vkCreateDisplayModeKHR:Int(physicalDevice:Byte Ptr,display:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pMode:Byte Ptr)"Os"
+Global vkGetDisplayPlaneCapabilitiesKHR:Int(physicalDevice:Byte Ptr,mode:Byte Ptr,planeIndex:UInt,pCapabilities:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceXlibPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,dpy:Byte Ptr,visualID:ULong)"Os"
+Global vkGetPhysicalDeviceXcbPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,connection:Byte Ptr,visual_id:ULong)"Os"
+Global vkGetPhysicalDeviceWaylandPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,display:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceMirPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,connection:Byte Ptr)"Os"
+Global vkGetPhysicalDeviceWin32PresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt)"Os"
+' Device functions
+Global vkGetDeviceProcAddr:Byte Ptr(device:Byte Ptr,pName:Byte Ptr)"Os"
+Global vkDestroyDevice(device:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkGetDeviceQueue(device:Byte Ptr,queueFamilyIndex:UInt,queueIndex:UInt,pQueue:Byte Ptr)"Os"
+Global vkDeviceWaitIdle:Int(device:Byte Ptr)"Os"
+Global vkAllocateMemory:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pAllocator:Byte Ptr,pMemory:Byte Ptr)"Os"
+Global vkFreeMemory(device:Byte Ptr,memory:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkMapMemory:Int(device:Byte Ptr,memory:Byte Ptr,offset:ULong,size:ULong,flags:UInt,ppData:Byte Ptr)"Os"
+Global vkUnmapMemory(device:Byte Ptr,memory:Byte Ptr)"Os"
+Global vkFlushMappedMemoryRanges:Int(device:Byte Ptr,memoryRangeCount:UInt,pMemoryRanges:Byte Ptr)"Os"
+Global vkInvalidateMappedMemoryRanges:Int(device:Byte Ptr,memoryRangeCount:UInt,pMemoryRanges:Byte Ptr)"Os"
+Global vkGetDeviceMemoryCommitment(device:Byte Ptr,memory:Byte Ptr,pCommittedMemoryInBytes:ULong Ptr)"Os"
+Global vkBindBufferMemory:Int(device:Byte Ptr,buffer:Byte Ptr,memory:Byte Ptr,memoryOffset:ULong)"Os"
+Global vkBindImageMemory:Int(device:Byte Ptr,image:Byte Ptr,memory:Byte Ptr,memoryOffset:ULong)"Os"
+Global vkGetBufferMemoryRequirements(device:Byte Ptr,buffer:Byte Ptr,pMemoryRequirements:Byte Ptr)"Os"
+Global vkGetImageMemoryRequirements(device:Byte Ptr,image:Byte Ptr,pMemoryRequirements:Byte Ptr)"Os"
+Global vkGetImageSparseMemoryRequirements(device:Byte Ptr,image:Byte Ptr,pSparseMemoryRequirementCount:UInt Ptr,pSparseMemoryRequirements:Byte Ptr)"Os"
+Global vkCreateFence:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pFence:Byte Ptr)"Os"
+Global vkDestroyFence(device:Byte Ptr,fence:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkResetFences:Int(device:Byte Ptr,fenceCount:UInt,pFences:Byte Ptr)"Os"
+Global vkGetFenceStatus:Int(device:Byte Ptr,fence:Byte Ptr)"Os"
+Global vkWaitForFences:Int(device:Byte Ptr,fenceCount:UInt,pFences:Byte Ptr,waitAll:UInt,timeout:ULong)"Os"
+Global vkCreateSemaphore:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSemaphore:Byte Ptr)"Os"
+Global vkDestroySemaphore(device:Byte Ptr,semaphore:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateEvent:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pEvent:Byte Ptr)"Os"
+Global vkDestroyEvent(device:Byte Ptr,event:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkGetEventStatus:Int(device:Byte Ptr,event:Byte Ptr)"Os"
+Global vkSetEvent:Int(device:Byte Ptr,event:Byte Ptr)"Os"
+Global vkResetEvent:Int(device:Byte Ptr,event:Byte Ptr)"Os"
+Global vkCreateQueryPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pQueryPool:Byte Ptr)"Os"
+Global vkDestroyQueryPool(device:Byte Ptr,queryPool:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkGetQueryPoolResults:Int(device:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt,dataSize:Size_T,pData:Byte Ptr,stride:ULong,flags:UInt)"Os"
+Global vkCreateBuffer:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pBuffer:Byte Ptr)"Os"
+Global vkDestroyBuffer(device:Byte Ptr,buffer:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateBufferView:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pView:Byte Ptr)"Os"
+Global vkDestroyBufferView(device:Byte Ptr,bufferView:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateImage:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pImage:Byte Ptr)"Os"
+Global vkDestroyImage(device:Byte Ptr,image:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkGetImageSubresourceLayout(device:Byte Ptr,image:Byte Ptr,pSubresource:Byte Ptr,pLayout:Byte Ptr)"Os"
+Global vkCreateImageView:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pView:Byte Ptr)"Os"
+Global vkDestroyImageView(device:Byte Ptr,imageView:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateShaderModule:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pShaderModule:Byte Ptr)"Os"
+Global vkDestroyShaderModule(device:Byte Ptr,shaderModule:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreatePipelineCache:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pPipelineCache:Byte Ptr)"Os"
+Global vkDestroyPipelineCache(device:Byte Ptr,pipelineCache:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkGetPipelineCacheData:Int(device:Byte Ptr,pipelineCache:Byte Ptr,pDataSize:Size_T Ptr,pData:Byte Ptr)"Os"
+Global vkMergePipelineCaches:Int(device:Byte Ptr,dstCache:Byte Ptr,srcCacheCount:UInt,pSrcCaches:Byte Ptr)"Os"
+Global vkCreateGraphicsPipelines:Int(device:Byte Ptr,pipelineCache:Byte Ptr,createInfoCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pPipelines:Byte Ptr)"Os"
+Global vkCreateComputePipelines:Int(device:Byte Ptr,pipelineCache:Byte Ptr,createInfoCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pPipelines:Byte Ptr)"Os"
+Global vkDestroyPipeline(device:Byte Ptr,pipeline:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreatePipelineLayout:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pPipelineLayout:Byte Ptr)"Os"
+Global vkDestroyPipelineLayout(device:Byte Ptr,pipelineLayout:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateSampler:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSampler:Byte Ptr)"Os"
+Global vkDestroySampler(device:Byte Ptr,sampler:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateDescriptorSetLayout:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSetLayout:Byte Ptr)"Os"
+Global vkDestroyDescriptorSetLayout(device:Byte Ptr,descriptorSetLayout:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateDescriptorPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pDescriptorPool:Byte Ptr)"Os"
+Global vkDestroyDescriptorPool(device:Byte Ptr,descriptorPool:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkResetDescriptorPool:Int(device:Byte Ptr,descriptorPool:Byte Ptr,flags:UInt)"Os"
+Global vkAllocateDescriptorSets:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pDescriptorSets:Byte Ptr)"Os"
+Global vkFreeDescriptorSets:Int(device:Byte Ptr,descriptorPool:Byte Ptr,descriptorSetCount:UInt,pDescriptorSets:Byte Ptr)"Os"
+Global vkUpdateDescriptorSets(device:Byte Ptr,descriptorWriteCount:UInt,pDescriptorWrites:Byte Ptr,descriptorCopyCount:UInt,pDescriptorCopies:Byte Ptr)"Os"
+Global vkCreateFramebuffer:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pFramebuffer:Byte Ptr)"Os"
+Global vkDestroyFramebuffer(device:Byte Ptr,framebuffer:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkCreateRenderPass:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pRenderPass:Byte Ptr)"Os"
+Global vkDestroyRenderPass(device:Byte Ptr,renderPass:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkGetRenderAreaGranularity(device:Byte Ptr,renderPass:Byte Ptr,pGranularity:Byte Ptr)"Os"
+Global vkCreateCommandPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pCommandPool:Byte Ptr)"Os"
+Global vkDestroyCommandPool(device:Byte Ptr,commandPool:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkResetCommandPool:Int(device:Byte Ptr,commandPool:Byte Ptr,flags:UInt)"Os"
+Global vkAllocateCommandBuffers:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pCommandBuffers:Byte Ptr)"Os"
+Global vkFreeCommandBuffers(device:Byte Ptr,commandPool:Byte Ptr,commandBufferCount:UInt,pCommandBuffers:Byte Ptr)"Os"
+Global vkCreateSwapchainKHR:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSwapchain:Byte Ptr)"Os"
+Global vkDestroySwapchainKHR(device:Byte Ptr,swapchain:Byte Ptr,pAllocator:Byte Ptr)"Os"
+Global vkGetSwapchainImagesKHR:Int(device:Byte Ptr,swapchain:Byte Ptr,pSwapchainImageCount:UInt Ptr,pSwapchainImages:Byte Ptr)"Os"
+Global vkAcquireNextImageKHR:Int(device:Byte Ptr,swapchain:Byte Ptr,timeout:ULong,semaphore:Byte Ptr,fence:Byte Ptr,pImageIndex:UInt Ptr)"Os"
+Global vkCreateSharedSwapchainsKHR:Int(device:Byte Ptr,swapchainCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pSwapchains:Byte Ptr)"Os"
+Global vkDebugMarkerSetObjectTagEXT:Int(device:Byte Ptr,pTagInfo:Byte Ptr)"Os"
+Global vkDebugMarkerSetObjectNameEXT:Int(device:Byte Ptr,pNameInfo:Byte Ptr)"Os"
+' Queue functions
+Global vkQueueSubmit:Int(queue:Byte Ptr,submitCount:UInt,pSubmits:Byte Ptr,fence:Byte Ptr)"Os"
+Global vkQueueWaitIdle:Int(queue:Byte Ptr)"Os"
+Global vkQueueBindSparse:Int(queue:Byte Ptr,bindInfoCount:UInt,pBindInfo:Byte Ptr,fence:Byte Ptr)"Os"
+Global vkQueuePresentKHR:Int(queue:Byte Ptr,pPresentInfo:Byte Ptr)"Os"
+' CommandBuffer functions
+Global vkBeginCommandBuffer:Int(commandBuffer:Byte Ptr,pBeginInfo:Byte Ptr)"Os"
+Global vkEndCommandBuffer:Int(commandBuffer:Byte Ptr)"Os"
+Global vkResetCommandBuffer:Int(commandBuffer:Byte Ptr,flags:UInt)"Os"
+Global vkCmdBindPipeline(commandBuffer:Byte Ptr,pipelineBindPoint:Int,pipeline:Byte Ptr)"Os"
+Global vkCmdSetViewport(commandBuffer:Byte Ptr,firstViewport:UInt,viewportCount:UInt,pViewports:Byte Ptr)"Os"
+Global vkCmdSetScissor(commandBuffer:Byte Ptr,firstScissor:UInt,scissorCount:UInt,pScissors:Byte Ptr)"Os"
+Global vkCmdSetLineWidth(commandBuffer:Byte Ptr,lineWidth:Float)"Os"
+Global vkCmdSetDepthBias(commandBuffer:Byte Ptr,depthBiasConstantFactor:Float,depthBiasClamp:Float,depthBiasSlopeFactor:Float)"Os"
+Global vkCmdSetBlendConstants(commandBuffer:Byte Ptr,blendConstants:Float Ptr)"Os"
+Global vkCmdSetDepthBounds(commandBuffer:Byte Ptr,minDepthBounds:Float,maxDepthBounds:Float)"Os"
+Global vkCmdSetStencilCompareMask(commandBuffer:Byte Ptr,faceMask:UInt,compareMask:UInt)"Os"
+Global vkCmdSetStencilWriteMask(commandBuffer:Byte Ptr,faceMask:UInt,writeMask:UInt)"Os"
+Global vkCmdSetStencilReference(commandBuffer:Byte Ptr,faceMask:UInt,reference:UInt)"Os"
+Global vkCmdBindDescriptorSets(commandBuffer:Byte Ptr,pipelineBindPoint:Int,layout:Byte Ptr,firstSet:UInt,descriptorSetCount:UInt,pDescriptorSets:Byte Ptr,dynamicOffsetCount:UInt,pDynamicOffsets:UInt Ptr)"Os"
+Global vkCmdBindIndexBuffer(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,indexType:Int)"Os"
+Global vkCmdBindVertexBuffers(commandBuffer:Byte Ptr,firstBinding:UInt,bindingCount:UInt,pBuffers:Byte Ptr,pOffsets:ULong Ptr)"Os"
+Global vkCmdDraw(commandBuffer:Byte Ptr,vertexCount:UInt,instanceCount:UInt,firstVertex:UInt,firstInstance:UInt)"Os"
+Global vkCmdDrawIndexed(commandBuffer:Byte Ptr,indexCount:UInt,instanceCount:UInt,firstIndex:UInt,vertexOffset:Int,firstInstance:UInt)"Os"
+Global vkCmdDrawIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,drawCount:UInt,stride:UInt)"Os"
+Global vkCmdDrawIndexedIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,drawCount:UInt,stride:UInt)"Os"
+Global vkCmdDispatch(commandBuffer:Byte Ptr,x:UInt,y:UInt,z:UInt)"Os"
+Global vkCmdDispatchIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong)"Os"
+Global vkCmdCopyBuffer(commandBuffer:Byte Ptr,srcBuffer:Byte Ptr,dstBuffer:Byte Ptr,regionCount:UInt,pRegions:Byte Ptr)"Os"
+Global vkCmdCopyImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Os"
+Global vkCmdBlitImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr,filter:Int)"Os"
+Global vkCmdCopyBufferToImage(commandBuffer:Byte Ptr,srcBuffer:Byte Ptr,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Os"
+Global vkCmdCopyImageToBuffer(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstBuffer:Byte Ptr,regionCount:UInt,pRegions:Byte Ptr)"Os"
+Global vkCmdUpdateBuffer(commandBuffer:Byte Ptr,dstBuffer:Byte Ptr,dstOffset:ULong,dataSize:ULong,pData:Byte Ptr)"Os"
+Global vkCmdFillBuffer(commandBuffer:Byte Ptr,dstBuffer:Byte Ptr,dstOffset:ULong,size:ULong,data:UInt)"Os"
+Global vkCmdClearColorImage(commandBuffer:Byte Ptr,image:Byte Ptr,imageLayout:Int,pColor:Byte Ptr,rangeCount:UInt,pRanges:Byte Ptr)"Os"
+Global vkCmdClearDepthStencilImage(commandBuffer:Byte Ptr,image:Byte Ptr,imageLayout:Int,pDepthStencil:Byte Ptr,rangeCount:UInt,pRanges:Byte Ptr)"Os"
+Global vkCmdClearAttachments(commandBuffer:Byte Ptr,attachmentCount:UInt,pAttachments:Byte Ptr,rectCount:UInt,pRects:Byte Ptr)"Os"
+Global vkCmdResolveImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Os"
+Global vkCmdSetEvent(commandBuffer:Byte Ptr,event:Byte Ptr,stageMask:UInt)"Os"
+Global vkCmdResetEvent(commandBuffer:Byte Ptr,event:Byte Ptr,stageMask:UInt)"Os"
+Global vkCmdWaitEvents(commandBuffer:Byte Ptr,eventCount:UInt,pEvents:Byte Ptr,srcStageMask:UInt,dstStageMask:UInt,memoryBarrierCount:UInt,pMemoryBarriers:Byte Ptr,bufferMemoryBarrierCount:UInt,pBufferMemoryBarriers:Byte Ptr,imageMemoryBarrierCount:UInt,pImageMemoryBarriers:Byte Ptr)"Os"
+Global vkCmdPipelineBarrier(commandBuffer:Byte Ptr,srcStageMask:UInt,dstStageMask:UInt,dependencyFlags:UInt,memoryBarrierCount:UInt,pMemoryBarriers:Byte Ptr,bufferMemoryBarrierCount:UInt,pBufferMemoryBarriers:Byte Ptr,imageMemoryBarrierCount:UInt,pImageMemoryBarriers:Byte Ptr)"Os"
+Global vkCmdBeginQuery(commandBuffer:Byte Ptr,queryPool:Byte Ptr,query:UInt,flags:UInt)"Os"
+Global vkCmdEndQuery(commandBuffer:Byte Ptr,queryPool:Byte Ptr,query:UInt)"Os"
+Global vkCmdResetQueryPool(commandBuffer:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt)"Os"
+Global vkCmdWriteTimestamp(commandBuffer:Byte Ptr,pipelineStage:Int,queryPool:Byte Ptr,query:UInt)"Os"
+Global vkCmdCopyQueryPoolResults(commandBuffer:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt,dstBuffer:Byte Ptr,dstOffset:ULong,stride:ULong,flags:UInt)"Os"
+Global vkCmdPushConstants(commandBuffer:Byte Ptr,layout:Byte Ptr,stageFlags:UInt,offset:UInt,size:UInt,pValues:Byte Ptr)"Os"
+Global vkCmdBeginRenderPass(commandBuffer:Byte Ptr,pRenderPassBegin:Byte Ptr,contents:Int)"Os"
+Global vkCmdNextSubpass(commandBuffer:Byte Ptr,contents:Int)"Os"
+Global vkCmdEndRenderPass(commandBuffer:Byte Ptr)"Os"
+Global vkCmdExecuteCommands(commandBuffer:Byte Ptr,commandBufferCount:UInt,pCommandBuffers:Byte Ptr)"Os"
+Global vkCmdDebugMarkerBeginEXT(commandBuffer:Byte Ptr,pMarkerInfo:Byte Ptr)"Os"
+Global vkCmdDebugMarkerEndEXT(commandBuffer:Byte Ptr)"Os"
+Global vkCmdDebugMarkerInsertEXT(commandBuffer:Byte Ptr,pMarkerInfo:Byte Ptr)"Os"
+

+ 182 - 0
vulkan.mod/vkFunctionsWin32x86.bmx

@@ -0,0 +1,182 @@
+
+' Global functions
+Global vkCreateInstance:Int(pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pInstance:Byte Ptr)"Win32"
+Global vkEnumerateInstanceExtensionProperties:Int(pLayerName:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Win32"
+Global vkEnumerateInstanceLayerProperties:Int(pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Win32"
+' Instance functions
+Global vkDestroyInstance(instance:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkEnumeratePhysicalDevices:Int(instance:Byte Ptr,pPhysicalDeviceCount:UInt Ptr,pPhysicalDevices:Byte Ptr)"Win32"
+Global vkGetInstanceProcAddr:Byte Ptr(instance:Byte Ptr,pName:Byte Ptr)"Win32"
+Global vkDestroySurfaceKHR(instance:Byte Ptr,surface:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateDisplayPlaneSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Win32"
+Global vkCreateXlibSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Win32"
+Global vkCreateXcbSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Win32"
+Global vkCreateWaylandSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Win32"
+Global vkCreateMirSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Win32"
+Global vkCreateAndroidSurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Win32"
+Global vkCreateWin32SurfaceKHR:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSurface:Byte Ptr)"Win32"
+Global vkCreateDebugReportCallbackEXT:Int(instance:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pCallback:Byte Ptr)"Win32"
+Global vkDestroyDebugReportCallbackEXT(instance:Byte Ptr,callback:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkDebugReportMessageEXT(instance:Byte Ptr,flags:UInt,objectType:Int,Object:ULong,location:Size_T,messageCode:Int,pLayerPrefix:Byte Ptr,pMessage:Byte Ptr)"Win32"
+' PhysicalDevice functions
+Global vkGetPhysicalDeviceFeatures(physicalDevice:Byte Ptr,pFeatures:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceFormatProperties(physicalDevice:Byte Ptr,format:Int,pFormatProperties:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceImageFormatProperties:Int(physicalDevice:Byte Ptr,format:Int,type_:Int,tiling:Int,usage:UInt,flags:UInt,pImageFormatProperties:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceProperties(physicalDevice:Byte Ptr,pProperties:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceQueueFamilyProperties(physicalDevice:Byte Ptr,pQueueFamilyPropertyCount:UInt Ptr,pQueueFamilyProperties:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceMemoryProperties(physicalDevice:Byte Ptr,pMemoryProperties:Byte Ptr)"Win32"
+Global vkCreateDevice:Int(physicalDevice:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pDevice:Byte Ptr)"Win32"
+Global vkEnumerateDeviceExtensionProperties:Int(physicalDevice:Byte Ptr,pLayerName:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Win32"
+Global vkEnumerateDeviceLayerProperties:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceSparseImageFormatProperties(physicalDevice:Byte Ptr,format:Int,type_:Int,samples:Int,usage:UInt,tiling:Int,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceSurfaceSupportKHR:Int(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,surface:Byte Ptr,pSupported:UInt Ptr)"Win32"
+Global vkGetPhysicalDeviceSurfaceCapabilitiesKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pSurfaceCapabilities:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceSurfaceFormatsKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pSurfaceFormatCount:UInt Ptr,pSurfaceFormats:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceSurfacePresentModesKHR:Int(physicalDevice:Byte Ptr,surface:Byte Ptr,pPresentModeCount:UInt Ptr,pPresentModes:Int Ptr)"Win32"
+Global vkGetPhysicalDeviceDisplayPropertiesKHR:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceDisplayPlanePropertiesKHR:Int(physicalDevice:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Win32"
+Global vkGetDisplayPlaneSupportedDisplaysKHR:Int(physicalDevice:Byte Ptr,planeIndex:UInt,pDisplayCount:UInt Ptr,pDisplays:Byte Ptr)"Win32"
+Global vkGetDisplayModePropertiesKHR:Int(physicalDevice:Byte Ptr,display:Byte Ptr,pPropertyCount:UInt Ptr,pProperties:Byte Ptr)"Win32"
+Global vkCreateDisplayModeKHR:Int(physicalDevice:Byte Ptr,display:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pMode:Byte Ptr)"Win32"
+Global vkGetDisplayPlaneCapabilitiesKHR:Int(physicalDevice:Byte Ptr,mode:Byte Ptr,planeIndex:UInt,pCapabilities:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceXlibPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,dpy:Byte Ptr,visualID:ULong)"Win32"
+Global vkGetPhysicalDeviceXcbPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,connection:Byte Ptr,visual_id:ULong)"Win32"
+Global vkGetPhysicalDeviceWaylandPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,display:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceMirPresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt,connection:Byte Ptr)"Win32"
+Global vkGetPhysicalDeviceWin32PresentationSupportKHR:UInt(physicalDevice:Byte Ptr,queueFamilyIndex:UInt)"Win32"
+' Device functions
+Global vkGetDeviceProcAddr:Byte Ptr(device:Byte Ptr,pName:Byte Ptr)"Win32"
+Global vkDestroyDevice(device:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkGetDeviceQueue(device:Byte Ptr,queueFamilyIndex:UInt,queueIndex:UInt,pQueue:Byte Ptr)"Win32"
+Global vkDeviceWaitIdle:Int(device:Byte Ptr)"Win32"
+Global vkAllocateMemory:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pAllocator:Byte Ptr,pMemory:Byte Ptr)"Win32"
+Global vkFreeMemory(device:Byte Ptr,memory:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkMapMemory:Int(device:Byte Ptr,memory:Byte Ptr,offset:ULong,size:ULong,flags:UInt,ppData:Byte Ptr)"Win32"
+Global vkUnmapMemory(device:Byte Ptr,memory:Byte Ptr)"Win32"
+Global vkFlushMappedMemoryRanges:Int(device:Byte Ptr,memoryRangeCount:UInt,pMemoryRanges:Byte Ptr)"Win32"
+Global vkInvalidateMappedMemoryRanges:Int(device:Byte Ptr,memoryRangeCount:UInt,pMemoryRanges:Byte Ptr)"Win32"
+Global vkGetDeviceMemoryCommitment(device:Byte Ptr,memory:Byte Ptr,pCommittedMemoryInBytes:ULong Ptr)"Win32"
+Global vkBindBufferMemory:Int(device:Byte Ptr,buffer:Byte Ptr,memory:Byte Ptr,memoryOffset:ULong)"Win32"
+Global vkBindImageMemory:Int(device:Byte Ptr,image:Byte Ptr,memory:Byte Ptr,memoryOffset:ULong)"Win32"
+Global vkGetBufferMemoryRequirements(device:Byte Ptr,buffer:Byte Ptr,pMemoryRequirements:Byte Ptr)"Win32"
+Global vkGetImageMemoryRequirements(device:Byte Ptr,image:Byte Ptr,pMemoryRequirements:Byte Ptr)"Win32"
+Global vkGetImageSparseMemoryRequirements(device:Byte Ptr,image:Byte Ptr,pSparseMemoryRequirementCount:UInt Ptr,pSparseMemoryRequirements:Byte Ptr)"Win32"
+Global vkCreateFence:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pFence:Byte Ptr)"Win32"
+Global vkDestroyFence(device:Byte Ptr,fence:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkResetFences:Int(device:Byte Ptr,fenceCount:UInt,pFences:Byte Ptr)"Win32"
+Global vkGetFenceStatus:Int(device:Byte Ptr,fence:Byte Ptr)"Win32"
+Global vkWaitForFences:Int(device:Byte Ptr,fenceCount:UInt,pFences:Byte Ptr,waitAll:UInt,timeout:ULong)"Win32"
+Global vkCreateSemaphore:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSemaphore:Byte Ptr)"Win32"
+Global vkDestroySemaphore(device:Byte Ptr,semaphore:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateEvent:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pEvent:Byte Ptr)"Win32"
+Global vkDestroyEvent(device:Byte Ptr,event:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkGetEventStatus:Int(device:Byte Ptr,event:Byte Ptr)"Win32"
+Global vkSetEvent:Int(device:Byte Ptr,event:Byte Ptr)"Win32"
+Global vkResetEvent:Int(device:Byte Ptr,event:Byte Ptr)"Win32"
+Global vkCreateQueryPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pQueryPool:Byte Ptr)"Win32"
+Global vkDestroyQueryPool(device:Byte Ptr,queryPool:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkGetQueryPoolResults:Int(device:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt,dataSize:Size_T,pData:Byte Ptr,stride:ULong,flags:UInt)"Win32"
+Global vkCreateBuffer:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pBuffer:Byte Ptr)"Win32"
+Global vkDestroyBuffer(device:Byte Ptr,buffer:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateBufferView:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pView:Byte Ptr)"Win32"
+Global vkDestroyBufferView(device:Byte Ptr,bufferView:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateImage:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pImage:Byte Ptr)"Win32"
+Global vkDestroyImage(device:Byte Ptr,image:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkGetImageSubresourceLayout(device:Byte Ptr,image:Byte Ptr,pSubresource:Byte Ptr,pLayout:Byte Ptr)"Win32"
+Global vkCreateImageView:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pView:Byte Ptr)"Win32"
+Global vkDestroyImageView(device:Byte Ptr,imageView:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateShaderModule:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pShaderModule:Byte Ptr)"Win32"
+Global vkDestroyShaderModule(device:Byte Ptr,shaderModule:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreatePipelineCache:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pPipelineCache:Byte Ptr)"Win32"
+Global vkDestroyPipelineCache(device:Byte Ptr,pipelineCache:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkGetPipelineCacheData:Int(device:Byte Ptr,pipelineCache:Byte Ptr,pDataSize:Size_T Ptr,pData:Byte Ptr)"Win32"
+Global vkMergePipelineCaches:Int(device:Byte Ptr,dstCache:Byte Ptr,srcCacheCount:UInt,pSrcCaches:Byte Ptr)"Win32"
+Global vkCreateGraphicsPipelines:Int(device:Byte Ptr,pipelineCache:Byte Ptr,createInfoCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pPipelines:Byte Ptr)"Win32"
+Global vkCreateComputePipelines:Int(device:Byte Ptr,pipelineCache:Byte Ptr,createInfoCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pPipelines:Byte Ptr)"Win32"
+Global vkDestroyPipeline(device:Byte Ptr,pipeline:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreatePipelineLayout:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pPipelineLayout:Byte Ptr)"Win32"
+Global vkDestroyPipelineLayout(device:Byte Ptr,pipelineLayout:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateSampler:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSampler:Byte Ptr)"Win32"
+Global vkDestroySampler(device:Byte Ptr,sampler:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateDescriptorSetLayout:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSetLayout:Byte Ptr)"Win32"
+Global vkDestroyDescriptorSetLayout(device:Byte Ptr,descriptorSetLayout:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateDescriptorPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pDescriptorPool:Byte Ptr)"Win32"
+Global vkDestroyDescriptorPool(device:Byte Ptr,descriptorPool:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkResetDescriptorPool:Int(device:Byte Ptr,descriptorPool:Byte Ptr,flags:UInt)"Win32"
+Global vkAllocateDescriptorSets:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pDescriptorSets:Byte Ptr)"Win32"
+Global vkFreeDescriptorSets:Int(device:Byte Ptr,descriptorPool:Byte Ptr,descriptorSetCount:UInt,pDescriptorSets:Byte Ptr)"Win32"
+Global vkUpdateDescriptorSets(device:Byte Ptr,descriptorWriteCount:UInt,pDescriptorWrites:Byte Ptr,descriptorCopyCount:UInt,pDescriptorCopies:Byte Ptr)"Win32"
+Global vkCreateFramebuffer:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pFramebuffer:Byte Ptr)"Win32"
+Global vkDestroyFramebuffer(device:Byte Ptr,framebuffer:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkCreateRenderPass:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pRenderPass:Byte Ptr)"Win32"
+Global vkDestroyRenderPass(device:Byte Ptr,renderPass:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkGetRenderAreaGranularity(device:Byte Ptr,renderPass:Byte Ptr,pGranularity:Byte Ptr)"Win32"
+Global vkCreateCommandPool:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pCommandPool:Byte Ptr)"Win32"
+Global vkDestroyCommandPool(device:Byte Ptr,commandPool:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkResetCommandPool:Int(device:Byte Ptr,commandPool:Byte Ptr,flags:UInt)"Win32"
+Global vkAllocateCommandBuffers:Int(device:Byte Ptr,pAllocateInfo:Byte Ptr,pCommandBuffers:Byte Ptr)"Win32"
+Global vkFreeCommandBuffers(device:Byte Ptr,commandPool:Byte Ptr,commandBufferCount:UInt,pCommandBuffers:Byte Ptr)"Win32"
+Global vkCreateSwapchainKHR:Int(device:Byte Ptr,pCreateInfo:Byte Ptr,pAllocator:Byte Ptr,pSwapchain:Byte Ptr)"Win32"
+Global vkDestroySwapchainKHR(device:Byte Ptr,swapchain:Byte Ptr,pAllocator:Byte Ptr)"Win32"
+Global vkGetSwapchainImagesKHR:Int(device:Byte Ptr,swapchain:Byte Ptr,pSwapchainImageCount:UInt Ptr,pSwapchainImages:Byte Ptr)"Win32"
+Global vkAcquireNextImageKHR:Int(device:Byte Ptr,swapchain:Byte Ptr,timeout:ULong,semaphore:Byte Ptr,fence:Byte Ptr,pImageIndex:UInt Ptr)"Win32"
+Global vkCreateSharedSwapchainsKHR:Int(device:Byte Ptr,swapchainCount:UInt,pCreateInfos:Byte Ptr,pAllocator:Byte Ptr,pSwapchains:Byte Ptr)"Win32"
+Global vkDebugMarkerSetObjectTagEXT:Int(device:Byte Ptr,pTagInfo:Byte Ptr)"Win32"
+Global vkDebugMarkerSetObjectNameEXT:Int(device:Byte Ptr,pNameInfo:Byte Ptr)"Win32"
+' Queue functions
+Global vkQueueSubmit:Int(queue:Byte Ptr,submitCount:UInt,pSubmits:Byte Ptr,fence:Byte Ptr)"Win32"
+Global vkQueueWaitIdle:Int(queue:Byte Ptr)"Win32"
+Global vkQueueBindSparse:Int(queue:Byte Ptr,bindInfoCount:UInt,pBindInfo:Byte Ptr,fence:Byte Ptr)"Win32"
+Global vkQueuePresentKHR:Int(queue:Byte Ptr,pPresentInfo:Byte Ptr)"Win32"
+' CommandBuffer functions
+Global vkBeginCommandBuffer:Int(commandBuffer:Byte Ptr,pBeginInfo:Byte Ptr)"Win32"
+Global vkEndCommandBuffer:Int(commandBuffer:Byte Ptr)"Win32"
+Global vkResetCommandBuffer:Int(commandBuffer:Byte Ptr,flags:UInt)"Win32"
+Global vkCmdBindPipeline(commandBuffer:Byte Ptr,pipelineBindPoint:Int,pipeline:Byte Ptr)"Win32"
+Global vkCmdSetViewport(commandBuffer:Byte Ptr,firstViewport:UInt,viewportCount:UInt,pViewports:Byte Ptr)"Win32"
+Global vkCmdSetScissor(commandBuffer:Byte Ptr,firstScissor:UInt,scissorCount:UInt,pScissors:Byte Ptr)"Win32"
+Global vkCmdSetLineWidth(commandBuffer:Byte Ptr,lineWidth:Float)"Win32"
+Global vkCmdSetDepthBias(commandBuffer:Byte Ptr,depthBiasConstantFactor:Float,depthBiasClamp:Float,depthBiasSlopeFactor:Float)"Win32"
+Global vkCmdSetBlendConstants(commandBuffer:Byte Ptr,blendConstants:Float Ptr)"Win32"
+Global vkCmdSetDepthBounds(commandBuffer:Byte Ptr,minDepthBounds:Float,maxDepthBounds:Float)"Win32"
+Global vkCmdSetStencilCompareMask(commandBuffer:Byte Ptr,faceMask:UInt,compareMask:UInt)"Win32"
+Global vkCmdSetStencilWriteMask(commandBuffer:Byte Ptr,faceMask:UInt,writeMask:UInt)"Win32"
+Global vkCmdSetStencilReference(commandBuffer:Byte Ptr,faceMask:UInt,reference:UInt)"Win32"
+Global vkCmdBindDescriptorSets(commandBuffer:Byte Ptr,pipelineBindPoint:Int,layout:Byte Ptr,firstSet:UInt,descriptorSetCount:UInt,pDescriptorSets:Byte Ptr,dynamicOffsetCount:UInt,pDynamicOffsets:UInt Ptr)"Win32"
+Global vkCmdBindIndexBuffer(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,indexType:Int)"Win32"
+Global vkCmdBindVertexBuffers(commandBuffer:Byte Ptr,firstBinding:UInt,bindingCount:UInt,pBuffers:Byte Ptr,pOffsets:ULong Ptr)"Win32"
+Global vkCmdDraw(commandBuffer:Byte Ptr,vertexCount:UInt,instanceCount:UInt,firstVertex:UInt,firstInstance:UInt)"Win32"
+Global vkCmdDrawIndexed(commandBuffer:Byte Ptr,indexCount:UInt,instanceCount:UInt,firstIndex:UInt,vertexOffset:Int,firstInstance:UInt)"Win32"
+Global vkCmdDrawIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,drawCount:UInt,stride:UInt)"Win32"
+Global vkCmdDrawIndexedIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong,drawCount:UInt,stride:UInt)"Win32"
+Global vkCmdDispatch(commandBuffer:Byte Ptr,x:UInt,y:UInt,z:UInt)"Win32"
+Global vkCmdDispatchIndirect(commandBuffer:Byte Ptr,buffer:Byte Ptr,offset:ULong)"Win32"
+Global vkCmdCopyBuffer(commandBuffer:Byte Ptr,srcBuffer:Byte Ptr,dstBuffer:Byte Ptr,regionCount:UInt,pRegions:Byte Ptr)"Win32"
+Global vkCmdCopyImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Win32"
+Global vkCmdBlitImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr,filter:Int)"Win32"
+Global vkCmdCopyBufferToImage(commandBuffer:Byte Ptr,srcBuffer:Byte Ptr,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Win32"
+Global vkCmdCopyImageToBuffer(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstBuffer:Byte Ptr,regionCount:UInt,pRegions:Byte Ptr)"Win32"
+Global vkCmdUpdateBuffer(commandBuffer:Byte Ptr,dstBuffer:Byte Ptr,dstOffset:ULong,dataSize:ULong,pData:Byte Ptr)"Win32"
+Global vkCmdFillBuffer(commandBuffer:Byte Ptr,dstBuffer:Byte Ptr,dstOffset:ULong,size:ULong,data:UInt)"Win32"
+Global vkCmdClearColorImage(commandBuffer:Byte Ptr,image:Byte Ptr,imageLayout:Int,pColor:Byte Ptr,rangeCount:UInt,pRanges:Byte Ptr)"Win32"
+Global vkCmdClearDepthStencilImage(commandBuffer:Byte Ptr,image:Byte Ptr,imageLayout:Int,pDepthStencil:Byte Ptr,rangeCount:UInt,pRanges:Byte Ptr)"Win32"
+Global vkCmdClearAttachments(commandBuffer:Byte Ptr,attachmentCount:UInt,pAttachments:Byte Ptr,rectCount:UInt,pRects:Byte Ptr)"Win32"
+Global vkCmdResolveImage(commandBuffer:Byte Ptr,srcImage:Byte Ptr,srcImageLayout:Int,dstImage:Byte Ptr,dstImageLayout:Int,regionCount:UInt,pRegions:Byte Ptr)"Win32"
+Global vkCmdSetEvent(commandBuffer:Byte Ptr,event:Byte Ptr,stageMask:UInt)"Win32"
+Global vkCmdResetEvent(commandBuffer:Byte Ptr,event:Byte Ptr,stageMask:UInt)"Win32"
+Global vkCmdWaitEvents(commandBuffer:Byte Ptr,eventCount:UInt,pEvents:Byte Ptr,srcStageMask:UInt,dstStageMask:UInt,memoryBarrierCount:UInt,pMemoryBarriers:Byte Ptr,bufferMemoryBarrierCount:UInt,pBufferMemoryBarriers:Byte Ptr,imageMemoryBarrierCount:UInt,pImageMemoryBarriers:Byte Ptr)"Win32"
+Global vkCmdPipelineBarrier(commandBuffer:Byte Ptr,srcStageMask:UInt,dstStageMask:UInt,dependencyFlags:UInt,memoryBarrierCount:UInt,pMemoryBarriers:Byte Ptr,bufferMemoryBarrierCount:UInt,pBufferMemoryBarriers:Byte Ptr,imageMemoryBarrierCount:UInt,pImageMemoryBarriers:Byte Ptr)"Win32"
+Global vkCmdBeginQuery(commandBuffer:Byte Ptr,queryPool:Byte Ptr,query:UInt,flags:UInt)"Win32"
+Global vkCmdEndQuery(commandBuffer:Byte Ptr,queryPool:Byte Ptr,query:UInt)"Win32"
+Global vkCmdResetQueryPool(commandBuffer:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt)"Win32"
+Global vkCmdWriteTimestamp(commandBuffer:Byte Ptr,pipelineStage:Int,queryPool:Byte Ptr,query:UInt)"Win32"
+Global vkCmdCopyQueryPoolResults(commandBuffer:Byte Ptr,queryPool:Byte Ptr,firstQuery:UInt,queryCount:UInt,dstBuffer:Byte Ptr,dstOffset:ULong,stride:ULong,flags:UInt)"Win32"
+Global vkCmdPushConstants(commandBuffer:Byte Ptr,layout:Byte Ptr,stageFlags:UInt,offset:UInt,size:UInt,pValues:Byte Ptr)"Win32"
+Global vkCmdBeginRenderPass(commandBuffer:Byte Ptr,pRenderPassBegin:Byte Ptr,contents:Int)"Win32"
+Global vkCmdNextSubpass(commandBuffer:Byte Ptr,contents:Int)"Win32"
+Global vkCmdEndRenderPass(commandBuffer:Byte Ptr)"Win32"
+Global vkCmdExecuteCommands(commandBuffer:Byte Ptr,commandBufferCount:UInt,pCommandBuffers:Byte Ptr)"Win32"
+Global vkCmdDebugMarkerBeginEXT(commandBuffer:Byte Ptr,pMarkerInfo:Byte Ptr)"Win32"
+Global vkCmdDebugMarkerEndEXT(commandBuffer:Byte Ptr)"Win32"
+Global vkCmdDebugMarkerInsertEXT(commandBuffer:Byte Ptr,pMarkerInfo:Byte Ptr)"Win32"
+