1 /** 2 * Dlang vulkan function pointer prototypes, declarations and loader from vkGetInstanceProcAddr 3 * 4 * Copyright: Copyright 2015-2016 The Khronos Group Inc.; Copyright 2016 Alex Parrill, Peter Particle. 5 * License: $(https://opensource.org/licenses/MIT, MIT License). 6 * Authors: Copyright 2016 Alex Parrill, Peter Particle 7 */ 8 module erupted.functions; 9 10 public import erupted.types; 11 12 nothrow @nogc: 13 14 15 /// function type aliases 16 extern( System ) { 17 18 // VK_VERSION_1_0 19 alias PFN_vkCreateInstance = VkResult function( const( VkInstanceCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkInstance* pInstance ); 20 alias PFN_vkDestroyInstance = void function( VkInstance instance, const( VkAllocationCallbacks )* pAllocator ); 21 alias PFN_vkEnumeratePhysicalDevices = VkResult function( VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices ); 22 alias PFN_vkGetPhysicalDeviceFeatures = void function( VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures ); 23 alias PFN_vkGetPhysicalDeviceFormatProperties = void function( VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties ); 24 alias PFN_vkGetPhysicalDeviceImageFormatProperties = VkResult function( VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties ); 25 alias PFN_vkGetPhysicalDeviceProperties = void function( VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties ); 26 alias PFN_vkGetPhysicalDeviceQueueFamilyProperties = void function( VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties ); 27 alias PFN_vkGetPhysicalDeviceMemoryProperties = void function( VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties ); 28 alias PFN_vkGetInstanceProcAddr = PFN_vkVoidFunction function( VkInstance instance, const( char )* pName ); 29 alias PFN_vkGetDeviceProcAddr = PFN_vkVoidFunction function( VkDevice device, const( char )* pName ); 30 alias PFN_vkCreateDevice = VkResult function( VkPhysicalDevice physicalDevice, const( VkDeviceCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDevice* pDevice ); 31 alias PFN_vkDestroyDevice = void function( VkDevice device, const( VkAllocationCallbacks )* pAllocator ); 32 alias PFN_vkEnumerateInstanceExtensionProperties = VkResult function( const( char )* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties ); 33 alias PFN_vkEnumerateDeviceExtensionProperties = VkResult function( VkPhysicalDevice physicalDevice, const( char )* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties ); 34 alias PFN_vkEnumerateInstanceLayerProperties = VkResult function( uint32_t* pPropertyCount, VkLayerProperties* pProperties ); 35 alias PFN_vkEnumerateDeviceLayerProperties = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties ); 36 alias PFN_vkGetDeviceQueue = void function( VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue ); 37 alias PFN_vkQueueSubmit = VkResult function( VkQueue queue, uint32_t submitCount, const( VkSubmitInfo )* pSubmits, VkFence fence ); 38 alias PFN_vkQueueWaitIdle = VkResult function( VkQueue queue ); 39 alias PFN_vkDeviceWaitIdle = VkResult function( VkDevice device ); 40 alias PFN_vkAllocateMemory = VkResult function( VkDevice device, const( VkMemoryAllocateInfo )* pAllocateInfo, const( VkAllocationCallbacks )* pAllocator, VkDeviceMemory* pMemory ); 41 alias PFN_vkFreeMemory = void function( VkDevice device, VkDeviceMemory memory, const( VkAllocationCallbacks )* pAllocator ); 42 alias PFN_vkMapMemory = VkResult function( VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData ); 43 alias PFN_vkUnmapMemory = void function( VkDevice device, VkDeviceMemory memory ); 44 alias PFN_vkFlushMappedMemoryRanges = VkResult function( VkDevice device, uint32_t memoryRangeCount, const( VkMappedMemoryRange )* pMemoryRanges ); 45 alias PFN_vkInvalidateMappedMemoryRanges = VkResult function( VkDevice device, uint32_t memoryRangeCount, const( VkMappedMemoryRange )* pMemoryRanges ); 46 alias PFN_vkGetDeviceMemoryCommitment = void function( VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes ); 47 alias PFN_vkBindBufferMemory = VkResult function( VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset ); 48 alias PFN_vkBindImageMemory = VkResult function( VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset ); 49 alias PFN_vkGetBufferMemoryRequirements = void function( VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements ); 50 alias PFN_vkGetImageMemoryRequirements = void function( VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements ); 51 alias PFN_vkGetImageSparseMemoryRequirements = void function( VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements ); 52 alias PFN_vkGetPhysicalDeviceSparseImageFormatProperties = void function( VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties ); 53 alias PFN_vkQueueBindSparse = VkResult function( VkQueue queue, uint32_t bindInfoCount, const( VkBindSparseInfo )* pBindInfo, VkFence fence ); 54 alias PFN_vkCreateFence = VkResult function( VkDevice device, const( VkFenceCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkFence* pFence ); 55 alias PFN_vkDestroyFence = void function( VkDevice device, VkFence fence, const( VkAllocationCallbacks )* pAllocator ); 56 alias PFN_vkResetFences = VkResult function( VkDevice device, uint32_t fenceCount, const( VkFence )* pFences ); 57 alias PFN_vkGetFenceStatus = VkResult function( VkDevice device, VkFence fence ); 58 alias PFN_vkWaitForFences = VkResult function( VkDevice device, uint32_t fenceCount, const( VkFence )* pFences, VkBool32 waitAll, uint64_t timeout ); 59 alias PFN_vkCreateSemaphore = VkResult function( VkDevice device, const( VkSemaphoreCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSemaphore* pSemaphore ); 60 alias PFN_vkDestroySemaphore = void function( VkDevice device, VkSemaphore semaphore, const( VkAllocationCallbacks )* pAllocator ); 61 alias PFN_vkCreateEvent = VkResult function( VkDevice device, const( VkEventCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkEvent* pEvent ); 62 alias PFN_vkDestroyEvent = void function( VkDevice device, VkEvent event, const( VkAllocationCallbacks )* pAllocator ); 63 alias PFN_vkGetEventStatus = VkResult function( VkDevice device, VkEvent event ); 64 alias PFN_vkSetEvent = VkResult function( VkDevice device, VkEvent event ); 65 alias PFN_vkResetEvent = VkResult function( VkDevice device, VkEvent event ); 66 alias PFN_vkCreateQueryPool = VkResult function( VkDevice device, const( VkQueryPoolCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkQueryPool* pQueryPool ); 67 alias PFN_vkDestroyQueryPool = void function( VkDevice device, VkQueryPool queryPool, const( VkAllocationCallbacks )* pAllocator ); 68 alias PFN_vkGetQueryPoolResults = VkResult function( VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags ); 69 alias PFN_vkCreateBuffer = VkResult function( VkDevice device, const( VkBufferCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkBuffer* pBuffer ); 70 alias PFN_vkDestroyBuffer = void function( VkDevice device, VkBuffer buffer, const( VkAllocationCallbacks )* pAllocator ); 71 alias PFN_vkCreateBufferView = VkResult function( VkDevice device, const( VkBufferViewCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkBufferView* pView ); 72 alias PFN_vkDestroyBufferView = void function( VkDevice device, VkBufferView bufferView, const( VkAllocationCallbacks )* pAllocator ); 73 alias PFN_vkCreateImage = VkResult function( VkDevice device, const( VkImageCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkImage* pImage ); 74 alias PFN_vkDestroyImage = void function( VkDevice device, VkImage image, const( VkAllocationCallbacks )* pAllocator ); 75 alias PFN_vkGetImageSubresourceLayout = void function( VkDevice device, VkImage image, const( VkImageSubresource )* pSubresource, VkSubresourceLayout* pLayout ); 76 alias PFN_vkCreateImageView = VkResult function( VkDevice device, const( VkImageViewCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkImageView* pView ); 77 alias PFN_vkDestroyImageView = void function( VkDevice device, VkImageView imageView, const( VkAllocationCallbacks )* pAllocator ); 78 alias PFN_vkCreateShaderModule = VkResult function( VkDevice device, const( VkShaderModuleCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkShaderModule* pShaderModule ); 79 alias PFN_vkDestroyShaderModule = void function( VkDevice device, VkShaderModule shaderModule, const( VkAllocationCallbacks )* pAllocator ); 80 alias PFN_vkCreatePipelineCache = VkResult function( VkDevice device, const( VkPipelineCacheCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkPipelineCache* pPipelineCache ); 81 alias PFN_vkDestroyPipelineCache = void function( VkDevice device, VkPipelineCache pipelineCache, const( VkAllocationCallbacks )* pAllocator ); 82 alias PFN_vkGetPipelineCacheData = VkResult function( VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData ); 83 alias PFN_vkMergePipelineCaches = VkResult function( VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const( VkPipelineCache )* pSrcCaches ); 84 alias PFN_vkCreateGraphicsPipelines = VkResult function( VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const( VkGraphicsPipelineCreateInfo )* pCreateInfos, const( VkAllocationCallbacks )* pAllocator, VkPipeline* pPipelines ); 85 alias PFN_vkCreateComputePipelines = VkResult function( VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const( VkComputePipelineCreateInfo )* pCreateInfos, const( VkAllocationCallbacks )* pAllocator, VkPipeline* pPipelines ); 86 alias PFN_vkDestroyPipeline = void function( VkDevice device, VkPipeline pipeline, const( VkAllocationCallbacks )* pAllocator ); 87 alias PFN_vkCreatePipelineLayout = VkResult function( VkDevice device, const( VkPipelineLayoutCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkPipelineLayout* pPipelineLayout ); 88 alias PFN_vkDestroyPipelineLayout = void function( VkDevice device, VkPipelineLayout pipelineLayout, const( VkAllocationCallbacks )* pAllocator ); 89 alias PFN_vkCreateSampler = VkResult function( VkDevice device, const( VkSamplerCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSampler* pSampler ); 90 alias PFN_vkDestroySampler = void function( VkDevice device, VkSampler sampler, const( VkAllocationCallbacks )* pAllocator ); 91 alias PFN_vkCreateDescriptorSetLayout = VkResult function( VkDevice device, const( VkDescriptorSetLayoutCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDescriptorSetLayout* pSetLayout ); 92 alias PFN_vkDestroyDescriptorSetLayout = void function( VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const( VkAllocationCallbacks )* pAllocator ); 93 alias PFN_vkCreateDescriptorPool = VkResult function( VkDevice device, const( VkDescriptorPoolCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDescriptorPool* pDescriptorPool ); 94 alias PFN_vkDestroyDescriptorPool = void function( VkDevice device, VkDescriptorPool descriptorPool, const( VkAllocationCallbacks )* pAllocator ); 95 alias PFN_vkResetDescriptorPool = VkResult function( VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags ); 96 alias PFN_vkAllocateDescriptorSets = VkResult function( VkDevice device, const( VkDescriptorSetAllocateInfo )* pAllocateInfo, VkDescriptorSet* pDescriptorSets ); 97 alias PFN_vkFreeDescriptorSets = VkResult function( VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const( VkDescriptorSet )* pDescriptorSets ); 98 alias PFN_vkUpdateDescriptorSets = void function( VkDevice device, uint32_t descriptorWriteCount, const( VkWriteDescriptorSet )* pDescriptorWrites, uint32_t descriptorCopyCount, const( VkCopyDescriptorSet )* pDescriptorCopies ); 99 alias PFN_vkCreateFramebuffer = VkResult function( VkDevice device, const( VkFramebufferCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkFramebuffer* pFramebuffer ); 100 alias PFN_vkDestroyFramebuffer = void function( VkDevice device, VkFramebuffer framebuffer, const( VkAllocationCallbacks )* pAllocator ); 101 alias PFN_vkCreateRenderPass = VkResult function( VkDevice device, const( VkRenderPassCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkRenderPass* pRenderPass ); 102 alias PFN_vkDestroyRenderPass = void function( VkDevice device, VkRenderPass renderPass, const( VkAllocationCallbacks )* pAllocator ); 103 alias PFN_vkGetRenderAreaGranularity = void function( VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity ); 104 alias PFN_vkCreateCommandPool = VkResult function( VkDevice device, const( VkCommandPoolCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkCommandPool* pCommandPool ); 105 alias PFN_vkDestroyCommandPool = void function( VkDevice device, VkCommandPool commandPool, const( VkAllocationCallbacks )* pAllocator ); 106 alias PFN_vkResetCommandPool = VkResult function( VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags ); 107 alias PFN_vkAllocateCommandBuffers = VkResult function( VkDevice device, const( VkCommandBufferAllocateInfo )* pAllocateInfo, VkCommandBuffer* pCommandBuffers ); 108 alias PFN_vkFreeCommandBuffers = void function( VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const( VkCommandBuffer )* pCommandBuffers ); 109 alias PFN_vkBeginCommandBuffer = VkResult function( VkCommandBuffer commandBuffer, const( VkCommandBufferBeginInfo )* pBeginInfo ); 110 alias PFN_vkEndCommandBuffer = VkResult function( VkCommandBuffer commandBuffer ); 111 alias PFN_vkResetCommandBuffer = VkResult function( VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags ); 112 alias PFN_vkCmdBindPipeline = void function( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline ); 113 alias PFN_vkCmdSetViewport = void function( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const( VkViewport )* pViewports ); 114 alias PFN_vkCmdSetScissor = void function( VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const( VkRect2D )* pScissors ); 115 alias PFN_vkCmdSetLineWidth = void function( VkCommandBuffer commandBuffer, float lineWidth ); 116 alias PFN_vkCmdSetDepthBias = void function( VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor ); 117 alias PFN_vkCmdSetBlendConstants = void function( VkCommandBuffer commandBuffer, const float[4] blendConstants ); 118 alias PFN_vkCmdSetDepthBounds = void function( VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds ); 119 alias PFN_vkCmdSetStencilCompareMask = void function( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask ); 120 alias PFN_vkCmdSetStencilWriteMask = void function( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask ); 121 alias PFN_vkCmdSetStencilReference = void function( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference ); 122 alias PFN_vkCmdBindDescriptorSets = void function( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const( VkDescriptorSet )* pDescriptorSets, uint32_t dynamicOffsetCount, const( uint32_t )* pDynamicOffsets ); 123 alias PFN_vkCmdBindIndexBuffer = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType ); 124 alias PFN_vkCmdBindVertexBuffers = void function( VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const( VkBuffer )* pBuffers, const( VkDeviceSize )* pOffsets ); 125 alias PFN_vkCmdDraw = void function( VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance ); 126 alias PFN_vkCmdDrawIndexed = void function( VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance ); 127 alias PFN_vkCmdDrawIndirect = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride ); 128 alias PFN_vkCmdDrawIndexedIndirect = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride ); 129 alias PFN_vkCmdDispatch = void function( VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ ); 130 alias PFN_vkCmdDispatchIndirect = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset ); 131 alias PFN_vkCmdCopyBuffer = void function( VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const( VkBufferCopy )* pRegions ); 132 alias PFN_vkCmdCopyImage = void function( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const( VkImageCopy )* pRegions ); 133 alias PFN_vkCmdBlitImage = void function( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const( VkImageBlit )* pRegions, VkFilter filter ); 134 alias PFN_vkCmdCopyBufferToImage = void function( VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const( VkBufferImageCopy )* pRegions ); 135 alias PFN_vkCmdCopyImageToBuffer = void function( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const( VkBufferImageCopy )* pRegions ); 136 alias PFN_vkCmdUpdateBuffer = void function( VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const( void )* pData ); 137 alias PFN_vkCmdFillBuffer = void function( VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data ); 138 alias PFN_vkCmdClearColorImage = void function( VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const( VkClearColorValue )* pColor, uint32_t rangeCount, const( VkImageSubresourceRange )* pRanges ); 139 alias PFN_vkCmdClearDepthStencilImage = void function( VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const( VkClearDepthStencilValue )* pDepthStencil, uint32_t rangeCount, const( VkImageSubresourceRange )* pRanges ); 140 alias PFN_vkCmdClearAttachments = void function( VkCommandBuffer commandBuffer, uint32_t attachmentCount, const( VkClearAttachment )* pAttachments, uint32_t rectCount, const( VkClearRect )* pRects ); 141 alias PFN_vkCmdResolveImage = void function( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const( VkImageResolve )* pRegions ); 142 alias PFN_vkCmdSetEvent = void function( VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask ); 143 alias PFN_vkCmdResetEvent = void function( VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask ); 144 alias PFN_vkCmdWaitEvents = void function( VkCommandBuffer commandBuffer, uint32_t eventCount, const( VkEvent )* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const( VkMemoryBarrier )* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const( VkBufferMemoryBarrier )* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const( VkImageMemoryBarrier )* pImageMemoryBarriers ); 145 alias PFN_vkCmdPipelineBarrier = void function( VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const( VkMemoryBarrier )* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const( VkBufferMemoryBarrier )* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const( VkImageMemoryBarrier )* pImageMemoryBarriers ); 146 alias PFN_vkCmdBeginQuery = void function( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags ); 147 alias PFN_vkCmdEndQuery = void function( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query ); 148 alias PFN_vkCmdResetQueryPool = void function( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount ); 149 alias PFN_vkCmdWriteTimestamp = void function( VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query ); 150 alias PFN_vkCmdCopyQueryPoolResults = void function( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags ); 151 alias PFN_vkCmdPushConstants = void function( VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const( void )* pValues ); 152 alias PFN_vkCmdBeginRenderPass = void function( VkCommandBuffer commandBuffer, const( VkRenderPassBeginInfo )* pRenderPassBegin, VkSubpassContents contents ); 153 alias PFN_vkCmdNextSubpass = void function( VkCommandBuffer commandBuffer, VkSubpassContents contents ); 154 alias PFN_vkCmdEndRenderPass = void function( VkCommandBuffer commandBuffer ); 155 alias PFN_vkCmdExecuteCommands = void function( VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const( VkCommandBuffer )* pCommandBuffers ); 156 157 // VK_VERSION_1_1 158 alias PFN_vkEnumerateInstanceVersion = VkResult function( uint32_t* pApiVersion ); 159 alias PFN_vkBindBufferMemory2 = VkResult function( VkDevice device, uint32_t bindInfoCount, const( VkBindBufferMemoryInfo )* pBindInfos ); 160 alias PFN_vkBindImageMemory2 = VkResult function( VkDevice device, uint32_t bindInfoCount, const( VkBindImageMemoryInfo )* pBindInfos ); 161 alias PFN_vkGetDeviceGroupPeerMemoryFeatures = void function( VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures ); 162 alias PFN_vkCmdSetDeviceMask = void function( VkCommandBuffer commandBuffer, uint32_t deviceMask ); 163 alias PFN_vkCmdDispatchBase = void function( VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ ); 164 alias PFN_vkEnumeratePhysicalDeviceGroups = VkResult function( VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties ); 165 alias PFN_vkGetImageMemoryRequirements2 = void function( VkDevice device, const( VkImageMemoryRequirementsInfo2 )* pInfo, VkMemoryRequirements2* pMemoryRequirements ); 166 alias PFN_vkGetBufferMemoryRequirements2 = void function( VkDevice device, const( VkBufferMemoryRequirementsInfo2 )* pInfo, VkMemoryRequirements2* pMemoryRequirements ); 167 alias PFN_vkGetImageSparseMemoryRequirements2 = void function( VkDevice device, const( VkImageSparseMemoryRequirementsInfo2 )* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements ); 168 alias PFN_vkGetPhysicalDeviceFeatures2 = void function( VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures ); 169 alias PFN_vkGetPhysicalDeviceProperties2 = void function( VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties ); 170 alias PFN_vkGetPhysicalDeviceFormatProperties2 = void function( VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties ); 171 alias PFN_vkGetPhysicalDeviceImageFormatProperties2 = VkResult function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceImageFormatInfo2 )* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties ); 172 alias PFN_vkGetPhysicalDeviceQueueFamilyProperties2 = void function( VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties ); 173 alias PFN_vkGetPhysicalDeviceMemoryProperties2 = void function( VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties ); 174 alias PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 = void function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceSparseImageFormatInfo2 )* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties ); 175 alias PFN_vkTrimCommandPool = void function( VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags ); 176 alias PFN_vkGetDeviceQueue2 = void function( VkDevice device, const( VkDeviceQueueInfo2 )* pQueueInfo, VkQueue* pQueue ); 177 alias PFN_vkCreateSamplerYcbcrConversion = VkResult function( VkDevice device, const( VkSamplerYcbcrConversionCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion ); 178 alias PFN_vkDestroySamplerYcbcrConversion = void function( VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const( VkAllocationCallbacks )* pAllocator ); 179 alias PFN_vkCreateDescriptorUpdateTemplate = VkResult function( VkDevice device, const( VkDescriptorUpdateTemplateCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate ); 180 alias PFN_vkDestroyDescriptorUpdateTemplate = void function( VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const( VkAllocationCallbacks )* pAllocator ); 181 alias PFN_vkUpdateDescriptorSetWithTemplate = void function( VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const( void )* pData ); 182 alias PFN_vkGetPhysicalDeviceExternalBufferProperties = void function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceExternalBufferInfo )* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties ); 183 alias PFN_vkGetPhysicalDeviceExternalFenceProperties = void function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceExternalFenceInfo )* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties ); 184 alias PFN_vkGetPhysicalDeviceExternalSemaphoreProperties = void function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceExternalSemaphoreInfo )* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties ); 185 alias PFN_vkGetDescriptorSetLayoutSupport = void function( VkDevice device, const( VkDescriptorSetLayoutCreateInfo )* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport ); 186 187 // VK_VERSION_1_2 188 alias PFN_vkCmdDrawIndirectCount = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ); 189 alias PFN_vkCmdDrawIndexedIndirectCount = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ); 190 alias PFN_vkCreateRenderPass2 = VkResult function( VkDevice device, const( VkRenderPassCreateInfo2 )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkRenderPass* pRenderPass ); 191 alias PFN_vkCmdBeginRenderPass2 = void function( VkCommandBuffer commandBuffer, const( VkRenderPassBeginInfo )* pRenderPassBegin, const( VkSubpassBeginInfo )* pSubpassBeginInfo ); 192 alias PFN_vkCmdNextSubpass2 = void function( VkCommandBuffer commandBuffer, const( VkSubpassBeginInfo )* pSubpassBeginInfo, const( VkSubpassEndInfo )* pSubpassEndInfo ); 193 alias PFN_vkCmdEndRenderPass2 = void function( VkCommandBuffer commandBuffer, const( VkSubpassEndInfo )* pSubpassEndInfo ); 194 alias PFN_vkResetQueryPool = void function( VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount ); 195 alias PFN_vkGetSemaphoreCounterValue = VkResult function( VkDevice device, VkSemaphore semaphore, uint64_t* pValue ); 196 alias PFN_vkWaitSemaphores = VkResult function( VkDevice device, const( VkSemaphoreWaitInfo )* pWaitInfo, uint64_t timeout ); 197 alias PFN_vkSignalSemaphore = VkResult function( VkDevice device, const( VkSemaphoreSignalInfo )* pSignalInfo ); 198 alias PFN_vkGetBufferDeviceAddress = VkDeviceAddress function( VkDevice device, const( VkBufferDeviceAddressInfo )* pInfo ); 199 alias PFN_vkGetBufferOpaqueCaptureAddress = uint64_t function( VkDevice device, const( VkBufferDeviceAddressInfo )* pInfo ); 200 alias PFN_vkGetDeviceMemoryOpaqueCaptureAddress = uint64_t function( VkDevice device, const( VkDeviceMemoryOpaqueCaptureAddressInfo )* pInfo ); 201 202 // VK_KHR_surface 203 alias PFN_vkDestroySurfaceKHR = void function( VkInstance instance, VkSurfaceKHR surface, const( VkAllocationCallbacks )* pAllocator ); 204 alias PFN_vkGetPhysicalDeviceSurfaceSupportKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported ); 205 alias PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities ); 206 alias PFN_vkGetPhysicalDeviceSurfaceFormatsKHR = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats ); 207 alias PFN_vkGetPhysicalDeviceSurfacePresentModesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes ); 208 209 // VK_KHR_swapchain 210 alias PFN_vkCreateSwapchainKHR = VkResult function( VkDevice device, const( VkSwapchainCreateInfoKHR )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSwapchainKHR* pSwapchain ); 211 alias PFN_vkDestroySwapchainKHR = void function( VkDevice device, VkSwapchainKHR swapchain, const( VkAllocationCallbacks )* pAllocator ); 212 alias PFN_vkGetSwapchainImagesKHR = VkResult function( VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages ); 213 alias PFN_vkAcquireNextImageKHR = VkResult function( VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex ); 214 alias PFN_vkQueuePresentKHR = VkResult function( VkQueue queue, const( VkPresentInfoKHR )* pPresentInfo ); 215 alias PFN_vkGetDeviceGroupPresentCapabilitiesKHR = VkResult function( VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities ); 216 alias PFN_vkGetDeviceGroupSurfacePresentModesKHR = VkResult function( VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR* pModes ); 217 alias PFN_vkGetPhysicalDevicePresentRectanglesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects ); 218 alias PFN_vkAcquireNextImage2KHR = VkResult function( VkDevice device, const( VkAcquireNextImageInfoKHR )* pAcquireInfo, uint32_t* pImageIndex ); 219 220 // VK_KHR_display 221 alias PFN_vkGetPhysicalDeviceDisplayPropertiesKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties ); 222 alias PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties ); 223 alias PFN_vkGetDisplayPlaneSupportedDisplaysKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays ); 224 alias PFN_vkGetDisplayModePropertiesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties ); 225 alias PFN_vkCreateDisplayModeKHR = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayKHR display, const( VkDisplayModeCreateInfoKHR )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDisplayModeKHR* pMode ); 226 alias PFN_vkGetDisplayPlaneCapabilitiesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities ); 227 alias PFN_vkCreateDisplayPlaneSurfaceKHR = VkResult function( VkInstance instance, const( VkDisplaySurfaceCreateInfoKHR )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSurfaceKHR* pSurface ); 228 229 // VK_KHR_display_swapchain 230 alias PFN_vkCreateSharedSwapchainsKHR = VkResult function( VkDevice device, uint32_t swapchainCount, const( VkSwapchainCreateInfoKHR )* pCreateInfos, const( VkAllocationCallbacks )* pAllocator, VkSwapchainKHR* pSwapchains ); 231 232 // VK_KHR_external_memory_fd 233 alias PFN_vkGetMemoryFdKHR = VkResult function( VkDevice device, const( VkMemoryGetFdInfoKHR )* pGetFdInfo, int* pFd ); 234 alias PFN_vkGetMemoryFdPropertiesKHR = VkResult function( VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties ); 235 236 // VK_KHR_external_semaphore_fd 237 alias PFN_vkImportSemaphoreFdKHR = VkResult function( VkDevice device, const( VkImportSemaphoreFdInfoKHR )* pImportSemaphoreFdInfo ); 238 alias PFN_vkGetSemaphoreFdKHR = VkResult function( VkDevice device, const( VkSemaphoreGetFdInfoKHR )* pGetFdInfo, int* pFd ); 239 240 // VK_KHR_push_descriptor 241 alias PFN_vkCmdPushDescriptorSetKHR = void function( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const( VkWriteDescriptorSet )* pDescriptorWrites ); 242 alias PFN_vkCmdPushDescriptorSetWithTemplateKHR = void function( VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplate descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const( void )* pData ); 243 244 // VK_KHR_shared_presentable_image 245 alias PFN_vkGetSwapchainStatusKHR = VkResult function( VkDevice device, VkSwapchainKHR swapchain ); 246 247 // VK_KHR_external_fence_fd 248 alias PFN_vkImportFenceFdKHR = VkResult function( VkDevice device, const( VkImportFenceFdInfoKHR )* pImportFenceFdInfo ); 249 alias PFN_vkGetFenceFdKHR = VkResult function( VkDevice device, const( VkFenceGetFdInfoKHR )* pGetFdInfo, int* pFd ); 250 251 // VK_KHR_performance_query 252 alias PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, uint32_t* pCounterCount, VkPerformanceCounterKHR* pCounters, VkPerformanceCounterDescriptionKHR* pCounterDescriptions ); 253 alias PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = void function( VkPhysicalDevice physicalDevice, const( VkQueryPoolPerformanceCreateInfoKHR )* pPerformanceQueryCreateInfo, uint32_t* pNumPasses ); 254 alias PFN_vkAcquireProfilingLockKHR = VkResult function( VkDevice device, const( VkAcquireProfilingLockInfoKHR )* pInfo ); 255 alias PFN_vkReleaseProfilingLockKHR = void function( VkDevice device ); 256 257 // VK_KHR_get_surface_capabilities2 258 alias PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR = VkResult function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceSurfaceInfo2KHR )* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities ); 259 alias PFN_vkGetPhysicalDeviceSurfaceFormats2KHR = VkResult function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceSurfaceInfo2KHR )* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats ); 260 261 // VK_KHR_get_display_properties2 262 alias PFN_vkGetPhysicalDeviceDisplayProperties2KHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayProperties2KHR* pProperties ); 263 alias PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlaneProperties2KHR* pProperties ); 264 alias PFN_vkGetDisplayModeProperties2KHR = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModeProperties2KHR* pProperties ); 265 alias PFN_vkGetDisplayPlaneCapabilities2KHR = VkResult function( VkPhysicalDevice physicalDevice, const( VkDisplayPlaneInfo2KHR )* pDisplayPlaneInfo, VkDisplayPlaneCapabilities2KHR* pCapabilities ); 266 267 // VK_KHR_fragment_shading_rate 268 alias PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pFragmentShadingRateCount, VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates ); 269 alias PFN_vkCmdSetFragmentShadingRateKHR = void function( VkCommandBuffer commandBuffer, const( VkExtent2D )* pFragmentSize, const VkFragmentShadingRateCombinerOpKHR[2] combinerOps ); 270 271 // VK_KHR_deferred_host_operations 272 alias PFN_vkCreateDeferredOperationKHR = VkResult function( VkDevice device, const( VkAllocationCallbacks )* pAllocator, VkDeferredOperationKHR* pDeferredOperation ); 273 alias PFN_vkDestroyDeferredOperationKHR = void function( VkDevice device, VkDeferredOperationKHR operation, const( VkAllocationCallbacks )* pAllocator ); 274 alias PFN_vkGetDeferredOperationMaxConcurrencyKHR = uint32_t function( VkDevice device, VkDeferredOperationKHR operation ); 275 alias PFN_vkGetDeferredOperationResultKHR = VkResult function( VkDevice device, VkDeferredOperationKHR operation ); 276 alias PFN_vkDeferredOperationJoinKHR = VkResult function( VkDevice device, VkDeferredOperationKHR operation ); 277 278 // VK_KHR_pipeline_executable_properties 279 alias PFN_vkGetPipelineExecutablePropertiesKHR = VkResult function( VkDevice device, const( VkPipelineInfoKHR )* pPipelineInfo, uint32_t* pExecutableCount, VkPipelineExecutablePropertiesKHR* pProperties ); 280 alias PFN_vkGetPipelineExecutableStatisticsKHR = VkResult function( VkDevice device, const( VkPipelineExecutableInfoKHR )* pExecutableInfo, uint32_t* pStatisticCount, VkPipelineExecutableStatisticKHR* pStatistics ); 281 alias PFN_vkGetPipelineExecutableInternalRepresentationsKHR = VkResult function( VkDevice device, const( VkPipelineExecutableInfoKHR )* pExecutableInfo, uint32_t* pInternalRepresentationCount, VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations ); 282 283 // VK_KHR_copy_commands2 284 alias PFN_vkCmdCopyBuffer2KHR = void function( VkCommandBuffer commandBuffer, const( VkCopyBufferInfo2KHR )* pCopyBufferInfo ); 285 alias PFN_vkCmdCopyImage2KHR = void function( VkCommandBuffer commandBuffer, const( VkCopyImageInfo2KHR )* pCopyImageInfo ); 286 alias PFN_vkCmdCopyBufferToImage2KHR = void function( VkCommandBuffer commandBuffer, const( VkCopyBufferToImageInfo2KHR )* pCopyBufferToImageInfo ); 287 alias PFN_vkCmdCopyImageToBuffer2KHR = void function( VkCommandBuffer commandBuffer, const( VkCopyImageToBufferInfo2KHR )* pCopyImageToBufferInfo ); 288 alias PFN_vkCmdBlitImage2KHR = void function( VkCommandBuffer commandBuffer, const( VkBlitImageInfo2KHR )* pBlitImageInfo ); 289 alias PFN_vkCmdResolveImage2KHR = void function( VkCommandBuffer commandBuffer, const( VkResolveImageInfo2KHR )* pResolveImageInfo ); 290 291 // VK_EXT_debug_report 292 alias PFN_vkCreateDebugReportCallbackEXT = VkResult function( VkInstance instance, const( VkDebugReportCallbackCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDebugReportCallbackEXT* pCallback ); 293 alias PFN_vkDestroyDebugReportCallbackEXT = void function( VkInstance instance, VkDebugReportCallbackEXT callback, const( VkAllocationCallbacks )* pAllocator ); 294 alias PFN_vkDebugReportMessageEXT = void function( VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const( char )* pLayerPrefix, const( char )* pMessage ); 295 296 // VK_EXT_debug_marker 297 alias PFN_vkDebugMarkerSetObjectTagEXT = VkResult function( VkDevice device, const( VkDebugMarkerObjectTagInfoEXT )* pTagInfo ); 298 alias PFN_vkDebugMarkerSetObjectNameEXT = VkResult function( VkDevice device, const( VkDebugMarkerObjectNameInfoEXT )* pNameInfo ); 299 alias PFN_vkCmdDebugMarkerBeginEXT = void function( VkCommandBuffer commandBuffer, const( VkDebugMarkerMarkerInfoEXT )* pMarkerInfo ); 300 alias PFN_vkCmdDebugMarkerEndEXT = void function( VkCommandBuffer commandBuffer ); 301 alias PFN_vkCmdDebugMarkerInsertEXT = void function( VkCommandBuffer commandBuffer, const( VkDebugMarkerMarkerInfoEXT )* pMarkerInfo ); 302 303 // VK_EXT_transform_feedback 304 alias PFN_vkCmdBindTransformFeedbackBuffersEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const( VkBuffer )* pBuffers, const( VkDeviceSize )* pOffsets, const( VkDeviceSize )* pSizes ); 305 alias PFN_vkCmdBeginTransformFeedbackEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const( VkBuffer )* pCounterBuffers, const( VkDeviceSize )* pCounterBufferOffsets ); 306 alias PFN_vkCmdEndTransformFeedbackEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const( VkBuffer )* pCounterBuffers, const( VkDeviceSize )* pCounterBufferOffsets ); 307 alias PFN_vkCmdBeginQueryIndexedEXT = void function( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags, uint32_t index ); 308 alias PFN_vkCmdEndQueryIndexedEXT = void function( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, uint32_t index ); 309 alias PFN_vkCmdDrawIndirectByteCountEXT = void function( VkCommandBuffer commandBuffer, uint32_t instanceCount, uint32_t firstInstance, VkBuffer counterBuffer, VkDeviceSize counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride ); 310 311 // VK_NVX_image_view_handle 312 alias PFN_vkGetImageViewHandleNVX = uint32_t function( VkDevice device, const( VkImageViewHandleInfoNVX )* pInfo ); 313 alias PFN_vkGetImageViewAddressNVX = VkResult function( VkDevice device, VkImageView imageView, VkImageViewAddressPropertiesNVX* pProperties ); 314 315 // VK_AMD_shader_info 316 alias PFN_vkGetShaderInfoAMD = VkResult function( VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo ); 317 318 // VK_NV_external_memory_capabilities 319 alias PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV = VkResult function( VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties ); 320 321 // VK_EXT_conditional_rendering 322 alias PFN_vkCmdBeginConditionalRenderingEXT = void function( VkCommandBuffer commandBuffer, const( VkConditionalRenderingBeginInfoEXT )* pConditionalRenderingBegin ); 323 alias PFN_vkCmdEndConditionalRenderingEXT = void function( VkCommandBuffer commandBuffer ); 324 325 // VK_NV_clip_space_w_scaling 326 alias PFN_vkCmdSetViewportWScalingNV = void function( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const( VkViewportWScalingNV )* pViewportWScalings ); 327 328 // VK_EXT_direct_mode_display 329 alias PFN_vkReleaseDisplayEXT = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayKHR display ); 330 331 // VK_EXT_display_surface_counter 332 alias PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities ); 333 334 // VK_EXT_display_control 335 alias PFN_vkDisplayPowerControlEXT = VkResult function( VkDevice device, VkDisplayKHR display, const( VkDisplayPowerInfoEXT )* pDisplayPowerInfo ); 336 alias PFN_vkRegisterDeviceEventEXT = VkResult function( VkDevice device, const( VkDeviceEventInfoEXT )* pDeviceEventInfo, const( VkAllocationCallbacks )* pAllocator, VkFence* pFence ); 337 alias PFN_vkRegisterDisplayEventEXT = VkResult function( VkDevice device, VkDisplayKHR display, const( VkDisplayEventInfoEXT )* pDisplayEventInfo, const( VkAllocationCallbacks )* pAllocator, VkFence* pFence ); 338 alias PFN_vkGetSwapchainCounterEXT = VkResult function( VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue ); 339 340 // VK_GOOGLE_display_timing 341 alias PFN_vkGetRefreshCycleDurationGOOGLE = VkResult function( VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties ); 342 alias PFN_vkGetPastPresentationTimingGOOGLE = VkResult function( VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings ); 343 344 // VK_EXT_discard_rectangles 345 alias PFN_vkCmdSetDiscardRectangleEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const( VkRect2D )* pDiscardRectangles ); 346 347 // VK_EXT_hdr_metadata 348 alias PFN_vkSetHdrMetadataEXT = void function( VkDevice device, uint32_t swapchainCount, const( VkSwapchainKHR )* pSwapchains, const( VkHdrMetadataEXT )* pMetadata ); 349 350 // VK_EXT_debug_utils 351 alias PFN_vkSetDebugUtilsObjectNameEXT = VkResult function( VkDevice device, const( VkDebugUtilsObjectNameInfoEXT )* pNameInfo ); 352 alias PFN_vkSetDebugUtilsObjectTagEXT = VkResult function( VkDevice device, const( VkDebugUtilsObjectTagInfoEXT )* pTagInfo ); 353 alias PFN_vkQueueBeginDebugUtilsLabelEXT = void function( VkQueue queue, const( VkDebugUtilsLabelEXT )* pLabelInfo ); 354 alias PFN_vkQueueEndDebugUtilsLabelEXT = void function( VkQueue queue ); 355 alias PFN_vkQueueInsertDebugUtilsLabelEXT = void function( VkQueue queue, const( VkDebugUtilsLabelEXT )* pLabelInfo ); 356 alias PFN_vkCmdBeginDebugUtilsLabelEXT = void function( VkCommandBuffer commandBuffer, const( VkDebugUtilsLabelEXT )* pLabelInfo ); 357 alias PFN_vkCmdEndDebugUtilsLabelEXT = void function( VkCommandBuffer commandBuffer ); 358 alias PFN_vkCmdInsertDebugUtilsLabelEXT = void function( VkCommandBuffer commandBuffer, const( VkDebugUtilsLabelEXT )* pLabelInfo ); 359 alias PFN_vkCreateDebugUtilsMessengerEXT = VkResult function( VkInstance instance, const( VkDebugUtilsMessengerCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDebugUtilsMessengerEXT* pMessenger ); 360 alias PFN_vkDestroyDebugUtilsMessengerEXT = void function( VkInstance instance, VkDebugUtilsMessengerEXT messenger, const( VkAllocationCallbacks )* pAllocator ); 361 alias PFN_vkSubmitDebugUtilsMessageEXT = void function( VkInstance instance, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageTypes, const( VkDebugUtilsMessengerCallbackDataEXT )* pCallbackData ); 362 363 // VK_EXT_sample_locations 364 alias PFN_vkCmdSetSampleLocationsEXT = void function( VkCommandBuffer commandBuffer, const( VkSampleLocationsInfoEXT )* pSampleLocationsInfo ); 365 alias PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT = void function( VkPhysicalDevice physicalDevice, VkSampleCountFlagBits samples, VkMultisamplePropertiesEXT* pMultisampleProperties ); 366 367 // VK_EXT_image_drm_format_modifier 368 alias PFN_vkGetImageDrmFormatModifierPropertiesEXT = VkResult function( VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT* pProperties ); 369 370 // VK_EXT_validation_cache 371 alias PFN_vkCreateValidationCacheEXT = VkResult function( VkDevice device, const( VkValidationCacheCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkValidationCacheEXT* pValidationCache ); 372 alias PFN_vkDestroyValidationCacheEXT = void function( VkDevice device, VkValidationCacheEXT validationCache, const( VkAllocationCallbacks )* pAllocator ); 373 alias PFN_vkMergeValidationCachesEXT = VkResult function( VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const( VkValidationCacheEXT )* pSrcCaches ); 374 alias PFN_vkGetValidationCacheDataEXT = VkResult function( VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData ); 375 376 // VK_NV_shading_rate_image 377 alias PFN_vkCmdBindShadingRateImageNV = void function( VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout ); 378 alias PFN_vkCmdSetViewportShadingRatePaletteNV = void function( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const( VkShadingRatePaletteNV )* pShadingRatePalettes ); 379 alias PFN_vkCmdSetCoarseSampleOrderNV = void function( VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const( VkCoarseSampleOrderCustomNV )* pCustomSampleOrders ); 380 381 // VK_NV_ray_tracing 382 alias PFN_vkCreateAccelerationStructureNV = VkResult function( VkDevice device, const( VkAccelerationStructureCreateInfoNV )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkAccelerationStructureNV* pAccelerationStructure ); 383 alias PFN_vkDestroyAccelerationStructureNV = void function( VkDevice device, VkAccelerationStructureNV accelerationStructure, const( VkAllocationCallbacks )* pAllocator ); 384 alias PFN_vkGetAccelerationStructureMemoryRequirementsNV = void function( VkDevice device, const( VkAccelerationStructureMemoryRequirementsInfoNV )* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements ); 385 alias PFN_vkBindAccelerationStructureMemoryNV = VkResult function( VkDevice device, uint32_t bindInfoCount, const( VkBindAccelerationStructureMemoryInfoNV )* pBindInfos ); 386 alias PFN_vkCmdBuildAccelerationStructureNV = void function( VkCommandBuffer commandBuffer, const( VkAccelerationStructureInfoNV )* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset ); 387 alias PFN_vkCmdCopyAccelerationStructureNV = void function( VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode ); 388 alias PFN_vkCmdTraceRaysNV = void function( VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth ); 389 alias PFN_vkCreateRayTracingPipelinesNV = VkResult function( VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const( VkRayTracingPipelineCreateInfoNV )* pCreateInfos, const( VkAllocationCallbacks )* pAllocator, VkPipeline* pPipelines ); 390 alias PFN_vkGetRayTracingShaderGroupHandlesKHR = VkResult function( VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData ); 391 alias PFN_vkGetAccelerationStructureHandleNV = VkResult function( VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData ); 392 alias PFN_vkCmdWriteAccelerationStructuresPropertiesNV = void function( VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const( VkAccelerationStructureNV )* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery ); 393 alias PFN_vkCompileDeferredNV = VkResult function( VkDevice device, VkPipeline pipeline, uint32_t shader ); 394 395 // VK_EXT_external_memory_host 396 alias PFN_vkGetMemoryHostPointerPropertiesEXT = VkResult function( VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const( void )* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties ); 397 398 // VK_AMD_buffer_marker 399 alias PFN_vkCmdWriteBufferMarkerAMD = void function( VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker ); 400 401 // VK_EXT_calibrated_timestamps 402 alias PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pTimeDomainCount, VkTimeDomainEXT* pTimeDomains ); 403 alias PFN_vkGetCalibratedTimestampsEXT = VkResult function( VkDevice device, uint32_t timestampCount, const( VkCalibratedTimestampInfoEXT )* pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation ); 404 405 // VK_NV_mesh_shader 406 alias PFN_vkCmdDrawMeshTasksNV = void function( VkCommandBuffer commandBuffer, uint32_t taskCount, uint32_t firstTask ); 407 alias PFN_vkCmdDrawMeshTasksIndirectNV = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride ); 408 alias PFN_vkCmdDrawMeshTasksIndirectCountNV = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ); 409 410 // VK_NV_scissor_exclusive 411 alias PFN_vkCmdSetExclusiveScissorNV = void function( VkCommandBuffer commandBuffer, uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const( VkRect2D )* pExclusiveScissors ); 412 413 // VK_NV_device_diagnostic_checkpoints 414 alias PFN_vkCmdSetCheckpointNV = void function( VkCommandBuffer commandBuffer, const( void )* pCheckpointMarker ); 415 alias PFN_vkGetQueueCheckpointDataNV = void function( VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointDataNV* pCheckpointData ); 416 417 // VK_INTEL_performance_query 418 alias PFN_vkInitializePerformanceApiINTEL = VkResult function( VkDevice device, const( VkInitializePerformanceApiInfoINTEL )* pInitializeInfo ); 419 alias PFN_vkUninitializePerformanceApiINTEL = void function( VkDevice device ); 420 alias PFN_vkCmdSetPerformanceMarkerINTEL = VkResult function( VkCommandBuffer commandBuffer, const( VkPerformanceMarkerInfoINTEL )* pMarkerInfo ); 421 alias PFN_vkCmdSetPerformanceStreamMarkerINTEL = VkResult function( VkCommandBuffer commandBuffer, const( VkPerformanceStreamMarkerInfoINTEL )* pMarkerInfo ); 422 alias PFN_vkCmdSetPerformanceOverrideINTEL = VkResult function( VkCommandBuffer commandBuffer, const( VkPerformanceOverrideInfoINTEL )* pOverrideInfo ); 423 alias PFN_vkAcquirePerformanceConfigurationINTEL = VkResult function( VkDevice device, const( VkPerformanceConfigurationAcquireInfoINTEL )* pAcquireInfo, VkPerformanceConfigurationINTEL* pConfiguration ); 424 alias PFN_vkReleasePerformanceConfigurationINTEL = VkResult function( VkDevice device, VkPerformanceConfigurationINTEL configuration ); 425 alias PFN_vkQueueSetPerformanceConfigurationINTEL = VkResult function( VkQueue queue, VkPerformanceConfigurationINTEL configuration ); 426 alias PFN_vkGetPerformanceParameterINTEL = VkResult function( VkDevice device, VkPerformanceParameterTypeINTEL parameter, VkPerformanceValueINTEL* pValue ); 427 428 // VK_AMD_display_native_hdr 429 alias PFN_vkSetLocalDimmingAMD = void function( VkDevice device, VkSwapchainKHR swapChain, VkBool32 localDimmingEnable ); 430 431 // VK_EXT_tooling_info 432 alias PFN_vkGetPhysicalDeviceToolPropertiesEXT = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pToolCount, VkPhysicalDeviceToolPropertiesEXT* pToolProperties ); 433 434 // VK_NV_cooperative_matrix 435 alias PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkCooperativeMatrixPropertiesNV* pProperties ); 436 437 // VK_NV_coverage_reduction_mode 438 alias PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pCombinationCount, VkFramebufferMixedSamplesCombinationNV* pCombinations ); 439 440 // VK_EXT_headless_surface 441 alias PFN_vkCreateHeadlessSurfaceEXT = VkResult function( VkInstance instance, const( VkHeadlessSurfaceCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSurfaceKHR* pSurface ); 442 443 // VK_EXT_line_rasterization 444 alias PFN_vkCmdSetLineStippleEXT = void function( VkCommandBuffer commandBuffer, uint32_t lineStippleFactor, uint16_t lineStipplePattern ); 445 446 // VK_EXT_extended_dynamic_state 447 alias PFN_vkCmdSetCullModeEXT = void function( VkCommandBuffer commandBuffer, VkCullModeFlags cullMode ); 448 alias PFN_vkCmdSetFrontFaceEXT = void function( VkCommandBuffer commandBuffer, VkFrontFace frontFace ); 449 alias PFN_vkCmdSetPrimitiveTopologyEXT = void function( VkCommandBuffer commandBuffer, VkPrimitiveTopology primitiveTopology ); 450 alias PFN_vkCmdSetViewportWithCountEXT = void function( VkCommandBuffer commandBuffer, uint32_t viewportCount, const( VkViewport )* pViewports ); 451 alias PFN_vkCmdSetScissorWithCountEXT = void function( VkCommandBuffer commandBuffer, uint32_t scissorCount, const( VkRect2D )* pScissors ); 452 alias PFN_vkCmdBindVertexBuffers2EXT = void function( VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const( VkBuffer )* pBuffers, const( VkDeviceSize )* pOffsets, const( VkDeviceSize )* pSizes, const( VkDeviceSize )* pStrides ); 453 alias PFN_vkCmdSetDepthTestEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 depthTestEnable ); 454 alias PFN_vkCmdSetDepthWriteEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable ); 455 alias PFN_vkCmdSetDepthCompareOpEXT = void function( VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp ); 456 alias PFN_vkCmdSetDepthBoundsTestEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 depthBoundsTestEnable ); 457 alias PFN_vkCmdSetStencilTestEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable ); 458 alias PFN_vkCmdSetStencilOpEXT = void function( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp, VkCompareOp compareOp ); 459 460 // VK_NV_device_generated_commands 461 alias PFN_vkGetGeneratedCommandsMemoryRequirementsNV = void function( VkDevice device, const( VkGeneratedCommandsMemoryRequirementsInfoNV )* pInfo, VkMemoryRequirements2* pMemoryRequirements ); 462 alias PFN_vkCmdPreprocessGeneratedCommandsNV = void function( VkCommandBuffer commandBuffer, const( VkGeneratedCommandsInfoNV )* pGeneratedCommandsInfo ); 463 alias PFN_vkCmdExecuteGeneratedCommandsNV = void function( VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const( VkGeneratedCommandsInfoNV )* pGeneratedCommandsInfo ); 464 alias PFN_vkCmdBindPipelineShaderGroupNV = void function( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex ); 465 alias PFN_vkCreateIndirectCommandsLayoutNV = VkResult function( VkDevice device, const( VkIndirectCommandsLayoutCreateInfoNV )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout ); 466 alias PFN_vkDestroyIndirectCommandsLayoutNV = void function( VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const( VkAllocationCallbacks )* pAllocator ); 467 468 // VK_EXT_private_data 469 alias PFN_vkCreatePrivateDataSlotEXT = VkResult function( VkDevice device, const( VkPrivateDataSlotCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkPrivateDataSlotEXT* pPrivateDataSlot ); 470 alias PFN_vkDestroyPrivateDataSlotEXT = void function( VkDevice device, VkPrivateDataSlotEXT privateDataSlot, const( VkAllocationCallbacks )* pAllocator ); 471 alias PFN_vkSetPrivateDataEXT = VkResult function( VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlotEXT privateDataSlot, uint64_t data ); 472 alias PFN_vkGetPrivateDataEXT = void function( VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlotEXT privateDataSlot, uint64_t* pData ); 473 474 // VK_NV_fragment_shading_rate_enums 475 alias PFN_vkCmdSetFragmentShadingRateEnumNV = void function( VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR[2] combinerOps ); 476 477 // VK_KHR_acceleration_structure 478 alias PFN_vkCreateAccelerationStructureKHR = VkResult function( VkDevice device, const( VkAccelerationStructureCreateInfoKHR )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure ); 479 alias PFN_vkDestroyAccelerationStructureKHR = void function( VkDevice device, VkAccelerationStructureKHR accelerationStructure, const( VkAllocationCallbacks )* pAllocator ); 480 alias PFN_vkCmdBuildAccelerationStructuresKHR = void function( VkCommandBuffer commandBuffer, uint32_t infoCount, const( VkAccelerationStructureBuildGeometryInfoKHR )* pInfos, const( VkAccelerationStructureBuildRangeInfoKHR* )* ppBuildRangeInfos ); 481 alias PFN_vkCmdBuildAccelerationStructuresIndirectKHR = void function( VkCommandBuffer commandBuffer, uint32_t infoCount, const( VkAccelerationStructureBuildGeometryInfoKHR )* pInfos, const( VkDeviceAddress )* pIndirectDeviceAddresses, const( uint32_t )* pIndirectStrides, const( uint32_t* )* ppMaxPrimitiveCounts ); 482 alias PFN_vkBuildAccelerationStructuresKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const( VkAccelerationStructureBuildGeometryInfoKHR )* pInfos, const( VkAccelerationStructureBuildRangeInfoKHR* )* ppBuildRangeInfos ); 483 alias PFN_vkCopyAccelerationStructureKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyAccelerationStructureInfoKHR )* pInfo ); 484 alias PFN_vkCopyAccelerationStructureToMemoryKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyAccelerationStructureToMemoryInfoKHR )* pInfo ); 485 alias PFN_vkCopyMemoryToAccelerationStructureKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyMemoryToAccelerationStructureInfoKHR )* pInfo ); 486 alias PFN_vkWriteAccelerationStructuresPropertiesKHR = VkResult function( VkDevice device, uint32_t accelerationStructureCount, const( VkAccelerationStructureKHR )* pAccelerationStructures, VkQueryType queryType, size_t dataSize, void* pData, size_t stride ); 487 alias PFN_vkCmdCopyAccelerationStructureKHR = void function( VkCommandBuffer commandBuffer, const( VkCopyAccelerationStructureInfoKHR )* pInfo ); 488 alias PFN_vkCmdCopyAccelerationStructureToMemoryKHR = void function( VkCommandBuffer commandBuffer, const( VkCopyAccelerationStructureToMemoryInfoKHR )* pInfo ); 489 alias PFN_vkCmdCopyMemoryToAccelerationStructureKHR = void function( VkCommandBuffer commandBuffer, const( VkCopyMemoryToAccelerationStructureInfoKHR )* pInfo ); 490 alias PFN_vkGetAccelerationStructureDeviceAddressKHR = VkDeviceAddress function( VkDevice device, const( VkAccelerationStructureDeviceAddressInfoKHR )* pInfo ); 491 alias PFN_vkCmdWriteAccelerationStructuresPropertiesKHR = void function( VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const( VkAccelerationStructureKHR )* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery ); 492 alias PFN_vkGetDeviceAccelerationStructureCompatibilityKHR = void function( VkDevice device, const( VkAccelerationStructureVersionInfoKHR )* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility ); 493 alias PFN_vkGetAccelerationStructureBuildSizesKHR = void function( VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const( VkAccelerationStructureBuildGeometryInfoKHR )* pBuildInfo, const( uint32_t )* pMaxPrimitiveCounts, VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo ); 494 495 // VK_KHR_ray_tracing_pipeline 496 alias PFN_vkCmdTraceRaysKHR = void function( VkCommandBuffer commandBuffer, const( VkStridedDeviceAddressRegionKHR )* pRaygenShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pMissShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pHitShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth ); 497 alias PFN_vkCreateRayTracingPipelinesKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache, uint32_t createInfoCount, const( VkRayTracingPipelineCreateInfoKHR )* pCreateInfos, const( VkAllocationCallbacks )* pAllocator, VkPipeline* pPipelines ); 498 alias PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = VkResult function( VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData ); 499 alias PFN_vkCmdTraceRaysIndirectKHR = void function( VkCommandBuffer commandBuffer, const( VkStridedDeviceAddressRegionKHR )* pRaygenShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pMissShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pHitShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pCallableShaderBindingTable, VkDeviceAddress indirectDeviceAddress ); 500 alias PFN_vkGetRayTracingShaderGroupStackSizeKHR = VkDeviceSize function( VkDevice device, VkPipeline pipeline, uint32_t group, VkShaderGroupShaderKHR groupShader ); 501 alias PFN_vkCmdSetRayTracingPipelineStackSizeKHR = void function( VkCommandBuffer commandBuffer, uint32_t pipelineStackSize ); 502 } 503 504 505 /// function declarations 506 __gshared { 507 508 // VK_VERSION_1_0 509 PFN_vkCreateInstance vkCreateInstance; 510 PFN_vkDestroyInstance vkDestroyInstance; 511 PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices; 512 PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures; 513 PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties; 514 PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties; 515 PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties; 516 PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties; 517 PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties; 518 PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr; 519 PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr; 520 PFN_vkCreateDevice vkCreateDevice; 521 PFN_vkDestroyDevice vkDestroyDevice; 522 PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties; 523 PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties; 524 PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties; 525 PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties; 526 PFN_vkGetDeviceQueue vkGetDeviceQueue; 527 PFN_vkQueueSubmit vkQueueSubmit; 528 PFN_vkQueueWaitIdle vkQueueWaitIdle; 529 PFN_vkDeviceWaitIdle vkDeviceWaitIdle; 530 PFN_vkAllocateMemory vkAllocateMemory; 531 PFN_vkFreeMemory vkFreeMemory; 532 PFN_vkMapMemory vkMapMemory; 533 PFN_vkUnmapMemory vkUnmapMemory; 534 PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges; 535 PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges; 536 PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment; 537 PFN_vkBindBufferMemory vkBindBufferMemory; 538 PFN_vkBindImageMemory vkBindImageMemory; 539 PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements; 540 PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements; 541 PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements; 542 PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties; 543 PFN_vkQueueBindSparse vkQueueBindSparse; 544 PFN_vkCreateFence vkCreateFence; 545 PFN_vkDestroyFence vkDestroyFence; 546 PFN_vkResetFences vkResetFences; 547 PFN_vkGetFenceStatus vkGetFenceStatus; 548 PFN_vkWaitForFences vkWaitForFences; 549 PFN_vkCreateSemaphore vkCreateSemaphore; 550 PFN_vkDestroySemaphore vkDestroySemaphore; 551 PFN_vkCreateEvent vkCreateEvent; 552 PFN_vkDestroyEvent vkDestroyEvent; 553 PFN_vkGetEventStatus vkGetEventStatus; 554 PFN_vkSetEvent vkSetEvent; 555 PFN_vkResetEvent vkResetEvent; 556 PFN_vkCreateQueryPool vkCreateQueryPool; 557 PFN_vkDestroyQueryPool vkDestroyQueryPool; 558 PFN_vkGetQueryPoolResults vkGetQueryPoolResults; 559 PFN_vkCreateBuffer vkCreateBuffer; 560 PFN_vkDestroyBuffer vkDestroyBuffer; 561 PFN_vkCreateBufferView vkCreateBufferView; 562 PFN_vkDestroyBufferView vkDestroyBufferView; 563 PFN_vkCreateImage vkCreateImage; 564 PFN_vkDestroyImage vkDestroyImage; 565 PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout; 566 PFN_vkCreateImageView vkCreateImageView; 567 PFN_vkDestroyImageView vkDestroyImageView; 568 PFN_vkCreateShaderModule vkCreateShaderModule; 569 PFN_vkDestroyShaderModule vkDestroyShaderModule; 570 PFN_vkCreatePipelineCache vkCreatePipelineCache; 571 PFN_vkDestroyPipelineCache vkDestroyPipelineCache; 572 PFN_vkGetPipelineCacheData vkGetPipelineCacheData; 573 PFN_vkMergePipelineCaches vkMergePipelineCaches; 574 PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines; 575 PFN_vkCreateComputePipelines vkCreateComputePipelines; 576 PFN_vkDestroyPipeline vkDestroyPipeline; 577 PFN_vkCreatePipelineLayout vkCreatePipelineLayout; 578 PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout; 579 PFN_vkCreateSampler vkCreateSampler; 580 PFN_vkDestroySampler vkDestroySampler; 581 PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout; 582 PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout; 583 PFN_vkCreateDescriptorPool vkCreateDescriptorPool; 584 PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool; 585 PFN_vkResetDescriptorPool vkResetDescriptorPool; 586 PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets; 587 PFN_vkFreeDescriptorSets vkFreeDescriptorSets; 588 PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets; 589 PFN_vkCreateFramebuffer vkCreateFramebuffer; 590 PFN_vkDestroyFramebuffer vkDestroyFramebuffer; 591 PFN_vkCreateRenderPass vkCreateRenderPass; 592 PFN_vkDestroyRenderPass vkDestroyRenderPass; 593 PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity; 594 PFN_vkCreateCommandPool vkCreateCommandPool; 595 PFN_vkDestroyCommandPool vkDestroyCommandPool; 596 PFN_vkResetCommandPool vkResetCommandPool; 597 PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers; 598 PFN_vkFreeCommandBuffers vkFreeCommandBuffers; 599 PFN_vkBeginCommandBuffer vkBeginCommandBuffer; 600 PFN_vkEndCommandBuffer vkEndCommandBuffer; 601 PFN_vkResetCommandBuffer vkResetCommandBuffer; 602 PFN_vkCmdBindPipeline vkCmdBindPipeline; 603 PFN_vkCmdSetViewport vkCmdSetViewport; 604 PFN_vkCmdSetScissor vkCmdSetScissor; 605 PFN_vkCmdSetLineWidth vkCmdSetLineWidth; 606 PFN_vkCmdSetDepthBias vkCmdSetDepthBias; 607 PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants; 608 PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds; 609 PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask; 610 PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask; 611 PFN_vkCmdSetStencilReference vkCmdSetStencilReference; 612 PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets; 613 PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer; 614 PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers; 615 PFN_vkCmdDraw vkCmdDraw; 616 PFN_vkCmdDrawIndexed vkCmdDrawIndexed; 617 PFN_vkCmdDrawIndirect vkCmdDrawIndirect; 618 PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect; 619 PFN_vkCmdDispatch vkCmdDispatch; 620 PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect; 621 PFN_vkCmdCopyBuffer vkCmdCopyBuffer; 622 PFN_vkCmdCopyImage vkCmdCopyImage; 623 PFN_vkCmdBlitImage vkCmdBlitImage; 624 PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage; 625 PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer; 626 PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer; 627 PFN_vkCmdFillBuffer vkCmdFillBuffer; 628 PFN_vkCmdClearColorImage vkCmdClearColorImage; 629 PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage; 630 PFN_vkCmdClearAttachments vkCmdClearAttachments; 631 PFN_vkCmdResolveImage vkCmdResolveImage; 632 PFN_vkCmdSetEvent vkCmdSetEvent; 633 PFN_vkCmdResetEvent vkCmdResetEvent; 634 PFN_vkCmdWaitEvents vkCmdWaitEvents; 635 PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier; 636 PFN_vkCmdBeginQuery vkCmdBeginQuery; 637 PFN_vkCmdEndQuery vkCmdEndQuery; 638 PFN_vkCmdResetQueryPool vkCmdResetQueryPool; 639 PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp; 640 PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults; 641 PFN_vkCmdPushConstants vkCmdPushConstants; 642 PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass; 643 PFN_vkCmdNextSubpass vkCmdNextSubpass; 644 PFN_vkCmdEndRenderPass vkCmdEndRenderPass; 645 PFN_vkCmdExecuteCommands vkCmdExecuteCommands; 646 647 // VK_VERSION_1_1 648 PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion; 649 PFN_vkBindBufferMemory2 vkBindBufferMemory2; 650 PFN_vkBindImageMemory2 vkBindImageMemory2; 651 PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures; 652 PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask; 653 PFN_vkCmdDispatchBase vkCmdDispatchBase; 654 PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups; 655 PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2; 656 PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2; 657 PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2; 658 PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2; 659 PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2; 660 PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2; 661 PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2; 662 PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2; 663 PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2; 664 PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2; 665 PFN_vkTrimCommandPool vkTrimCommandPool; 666 PFN_vkGetDeviceQueue2 vkGetDeviceQueue2; 667 PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion; 668 PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion; 669 PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate; 670 PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate; 671 PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate; 672 PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties; 673 PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties; 674 PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties; 675 PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport; 676 677 // VK_VERSION_1_2 678 PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount; 679 PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount; 680 PFN_vkCreateRenderPass2 vkCreateRenderPass2; 681 PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2; 682 PFN_vkCmdNextSubpass2 vkCmdNextSubpass2; 683 PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2; 684 PFN_vkResetQueryPool vkResetQueryPool; 685 PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue; 686 PFN_vkWaitSemaphores vkWaitSemaphores; 687 PFN_vkSignalSemaphore vkSignalSemaphore; 688 PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress; 689 PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress; 690 PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress; 691 692 // VK_KHR_surface 693 PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR; 694 PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR; 695 PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR; 696 PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR; 697 PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR; 698 699 // VK_KHR_swapchain 700 PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR; 701 PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR; 702 PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR; 703 PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR; 704 PFN_vkQueuePresentKHR vkQueuePresentKHR; 705 PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR; 706 PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR; 707 PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR; 708 PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR; 709 710 // VK_KHR_display 711 PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR; 712 PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR; 713 PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR; 714 PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR; 715 PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR; 716 PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR; 717 PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR; 718 719 // VK_KHR_display_swapchain 720 PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR; 721 722 // VK_KHR_external_memory_fd 723 PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR; 724 PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR; 725 726 // VK_KHR_external_semaphore_fd 727 PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR; 728 PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR; 729 730 // VK_KHR_push_descriptor 731 PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR; 732 PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR; 733 734 // VK_KHR_shared_presentable_image 735 PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR; 736 737 // VK_KHR_external_fence_fd 738 PFN_vkImportFenceFdKHR vkImportFenceFdKHR; 739 PFN_vkGetFenceFdKHR vkGetFenceFdKHR; 740 741 // VK_KHR_performance_query 742 PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR; 743 PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR; 744 PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR; 745 PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR; 746 747 // VK_KHR_get_surface_capabilities2 748 PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR; 749 PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR; 750 751 // VK_KHR_get_display_properties2 752 PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR; 753 PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR; 754 PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR; 755 PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR; 756 757 // VK_KHR_fragment_shading_rate 758 PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR; 759 PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR; 760 761 // VK_KHR_deferred_host_operations 762 PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR; 763 PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR; 764 PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR; 765 PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR; 766 PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR; 767 768 // VK_KHR_pipeline_executable_properties 769 PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR; 770 PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR; 771 PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR; 772 773 // VK_KHR_copy_commands2 774 PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR; 775 PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR; 776 PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR; 777 PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR; 778 PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR; 779 PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR; 780 781 // VK_EXT_debug_report 782 PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT; 783 PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT; 784 PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT; 785 786 // VK_EXT_debug_marker 787 PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT; 788 PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT; 789 PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT; 790 PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT; 791 PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT; 792 793 // VK_EXT_transform_feedback 794 PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT; 795 PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT; 796 PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT; 797 PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT; 798 PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT; 799 PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT; 800 801 // VK_NVX_image_view_handle 802 PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX; 803 PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX; 804 805 // VK_AMD_shader_info 806 PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD; 807 808 // VK_NV_external_memory_capabilities 809 PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV; 810 811 // VK_EXT_conditional_rendering 812 PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT; 813 PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT; 814 815 // VK_NV_clip_space_w_scaling 816 PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV; 817 818 // VK_EXT_direct_mode_display 819 PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT; 820 821 // VK_EXT_display_surface_counter 822 PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT; 823 824 // VK_EXT_display_control 825 PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT; 826 PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT; 827 PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT; 828 PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT; 829 830 // VK_GOOGLE_display_timing 831 PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE; 832 PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE; 833 834 // VK_EXT_discard_rectangles 835 PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT; 836 837 // VK_EXT_hdr_metadata 838 PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT; 839 840 // VK_EXT_debug_utils 841 PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT; 842 PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT; 843 PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT; 844 PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT; 845 PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT; 846 PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT; 847 PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT; 848 PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT; 849 PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT; 850 PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT; 851 PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT; 852 853 // VK_EXT_sample_locations 854 PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT; 855 PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT; 856 857 // VK_EXT_image_drm_format_modifier 858 PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT; 859 860 // VK_EXT_validation_cache 861 PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT; 862 PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT; 863 PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT; 864 PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT; 865 866 // VK_NV_shading_rate_image 867 PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV; 868 PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV; 869 PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV; 870 871 // VK_NV_ray_tracing 872 PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV; 873 PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV; 874 PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV; 875 PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV; 876 PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV; 877 PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV; 878 PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV; 879 PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV; 880 PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR; 881 PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV; 882 PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV; 883 PFN_vkCompileDeferredNV vkCompileDeferredNV; 884 885 // VK_EXT_external_memory_host 886 PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT; 887 888 // VK_AMD_buffer_marker 889 PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD; 890 891 // VK_EXT_calibrated_timestamps 892 PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT; 893 PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT; 894 895 // VK_NV_mesh_shader 896 PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV; 897 PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV; 898 PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV; 899 900 // VK_NV_scissor_exclusive 901 PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV; 902 903 // VK_NV_device_diagnostic_checkpoints 904 PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV; 905 PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV; 906 907 // VK_INTEL_performance_query 908 PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL; 909 PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL; 910 PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL; 911 PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL; 912 PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL; 913 PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL; 914 PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL; 915 PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL; 916 PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL; 917 918 // VK_AMD_display_native_hdr 919 PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD; 920 921 // VK_EXT_tooling_info 922 PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT; 923 924 // VK_NV_cooperative_matrix 925 PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV; 926 927 // VK_NV_coverage_reduction_mode 928 PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV; 929 930 // VK_EXT_headless_surface 931 PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT; 932 933 // VK_EXT_line_rasterization 934 PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT; 935 936 // VK_EXT_extended_dynamic_state 937 PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT; 938 PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT; 939 PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT; 940 PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT; 941 PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT; 942 PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT; 943 PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT; 944 PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT; 945 PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT; 946 PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT; 947 PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT; 948 PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT; 949 950 // VK_NV_device_generated_commands 951 PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV; 952 PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV; 953 PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV; 954 PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV; 955 PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV; 956 PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV; 957 958 // VK_EXT_private_data 959 PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT; 960 PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT; 961 PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT; 962 PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT; 963 964 // VK_NV_fragment_shading_rate_enums 965 PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV; 966 967 // VK_KHR_acceleration_structure 968 PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR; 969 PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR; 970 PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR; 971 PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR; 972 PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR; 973 PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR; 974 PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR; 975 PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR; 976 PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR; 977 PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR; 978 PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR; 979 PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR; 980 PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR; 981 PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR; 982 PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR; 983 PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR; 984 985 // VK_KHR_ray_tracing_pipeline 986 PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR; 987 PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR; 988 PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR; 989 PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR; 990 PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR; 991 PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR; 992 993 // VK_KHR_get_physical_device_properties2 994 alias vkGetPhysicalDeviceFeatures2KHR = vkGetPhysicalDeviceFeatures2; 995 alias vkGetPhysicalDeviceProperties2KHR = vkGetPhysicalDeviceProperties2; 996 alias vkGetPhysicalDeviceFormatProperties2KHR = vkGetPhysicalDeviceFormatProperties2; 997 alias vkGetPhysicalDeviceImageFormatProperties2KHR = vkGetPhysicalDeviceImageFormatProperties2; 998 alias vkGetPhysicalDeviceQueueFamilyProperties2KHR = vkGetPhysicalDeviceQueueFamilyProperties2; 999 alias vkGetPhysicalDeviceMemoryProperties2KHR = vkGetPhysicalDeviceMemoryProperties2; 1000 alias vkGetPhysicalDeviceSparseImageFormatProperties2KHR = vkGetPhysicalDeviceSparseImageFormatProperties2; 1001 1002 // VK_KHR_device_group 1003 alias vkGetDeviceGroupPeerMemoryFeaturesKHR = vkGetDeviceGroupPeerMemoryFeatures; 1004 alias vkCmdSetDeviceMaskKHR = vkCmdSetDeviceMask; 1005 alias vkCmdDispatchBaseKHR = vkCmdDispatchBase; 1006 1007 // VK_KHR_maintenance1 1008 alias vkTrimCommandPoolKHR = vkTrimCommandPool; 1009 1010 // VK_KHR_device_group_creation 1011 alias vkEnumeratePhysicalDeviceGroupsKHR = vkEnumeratePhysicalDeviceGroups; 1012 1013 // VK_KHR_external_memory_capabilities 1014 alias vkGetPhysicalDeviceExternalBufferPropertiesKHR = vkGetPhysicalDeviceExternalBufferProperties; 1015 1016 // VK_KHR_external_semaphore_capabilities 1017 alias vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = vkGetPhysicalDeviceExternalSemaphoreProperties; 1018 1019 // VK_KHR_descriptor_update_template 1020 alias vkCreateDescriptorUpdateTemplateKHR = vkCreateDescriptorUpdateTemplate; 1021 alias vkDestroyDescriptorUpdateTemplateKHR = vkDestroyDescriptorUpdateTemplate; 1022 alias vkUpdateDescriptorSetWithTemplateKHR = vkUpdateDescriptorSetWithTemplate; 1023 1024 // VK_KHR_create_renderpass2 1025 alias vkCreateRenderPass2KHR = vkCreateRenderPass2; 1026 alias vkCmdBeginRenderPass2KHR = vkCmdBeginRenderPass2; 1027 alias vkCmdNextSubpass2KHR = vkCmdNextSubpass2; 1028 alias vkCmdEndRenderPass2KHR = vkCmdEndRenderPass2; 1029 1030 // VK_KHR_external_fence_capabilities 1031 alias vkGetPhysicalDeviceExternalFencePropertiesKHR = vkGetPhysicalDeviceExternalFenceProperties; 1032 1033 // VK_KHR_get_memory_requirements2 1034 alias vkGetImageMemoryRequirements2KHR = vkGetImageMemoryRequirements2; 1035 alias vkGetBufferMemoryRequirements2KHR = vkGetBufferMemoryRequirements2; 1036 alias vkGetImageSparseMemoryRequirements2KHR = vkGetImageSparseMemoryRequirements2; 1037 1038 // VK_KHR_sampler_ycbcr_conversion 1039 alias vkCreateSamplerYcbcrConversionKHR = vkCreateSamplerYcbcrConversion; 1040 alias vkDestroySamplerYcbcrConversionKHR = vkDestroySamplerYcbcrConversion; 1041 1042 // VK_KHR_bind_memory2 1043 alias vkBindBufferMemory2KHR = vkBindBufferMemory2; 1044 alias vkBindImageMemory2KHR = vkBindImageMemory2; 1045 1046 // VK_KHR_maintenance3 1047 alias vkGetDescriptorSetLayoutSupportKHR = vkGetDescriptorSetLayoutSupport; 1048 1049 // VK_KHR_draw_indirect_count 1050 alias vkCmdDrawIndirectCountKHR = vkCmdDrawIndirectCount; 1051 alias vkCmdDrawIndexedIndirectCountKHR = vkCmdDrawIndexedIndirectCount; 1052 1053 // VK_KHR_timeline_semaphore 1054 alias vkGetSemaphoreCounterValueKHR = vkGetSemaphoreCounterValue; 1055 alias vkWaitSemaphoresKHR = vkWaitSemaphores; 1056 alias vkSignalSemaphoreKHR = vkSignalSemaphore; 1057 1058 // VK_KHR_buffer_device_address 1059 alias vkGetBufferDeviceAddressKHR = vkGetBufferDeviceAddress; 1060 alias vkGetBufferOpaqueCaptureAddressKHR = vkGetBufferOpaqueCaptureAddress; 1061 alias vkGetDeviceMemoryOpaqueCaptureAddressKHR = vkGetDeviceMemoryOpaqueCaptureAddress; 1062 1063 // VK_AMD_draw_indirect_count 1064 alias vkCmdDrawIndirectCountAMD = vkCmdDrawIndirectCount; 1065 alias vkCmdDrawIndexedIndirectCountAMD = vkCmdDrawIndexedIndirectCount; 1066 1067 // VK_NV_ray_tracing 1068 alias vkGetRayTracingShaderGroupHandlesNV = vkGetRayTracingShaderGroupHandlesKHR; 1069 1070 // VK_EXT_buffer_device_address 1071 alias vkGetBufferDeviceAddressEXT = vkGetBufferDeviceAddress; 1072 1073 // VK_EXT_host_query_reset 1074 alias vkResetQueryPoolEXT = vkResetQueryPool; 1075 } 1076 1077 1078 /// sets vkCreateInstance function pointer and acquires basic functions to retrieve information about the implementation 1079 /// and create an instance: vkEnumerateInstanceExtensionProperties, vkEnumerateInstanceLayerProperties, vkCreateInstance 1080 void loadGlobalLevelFunctions( PFN_vkGetInstanceProcAddr getInstanceProcAddr ) { 1081 vkGetInstanceProcAddr = getInstanceProcAddr; 1082 1083 // VK_VERSION_1_0 1084 vkCreateInstance = cast( PFN_vkCreateInstance ) vkGetInstanceProcAddr( null, "vkCreateInstance" ); 1085 vkEnumerateInstanceExtensionProperties = cast( PFN_vkEnumerateInstanceExtensionProperties ) vkGetInstanceProcAddr( null, "vkEnumerateInstanceExtensionProperties" ); 1086 vkEnumerateInstanceLayerProperties = cast( PFN_vkEnumerateInstanceLayerProperties ) vkGetInstanceProcAddr( null, "vkEnumerateInstanceLayerProperties" ); 1087 1088 // VK_VERSION_1_1 1089 vkEnumerateInstanceVersion = cast( PFN_vkEnumerateInstanceVersion ) vkGetInstanceProcAddr( null, "vkEnumerateInstanceVersion" ); 1090 } 1091 1092 1093 /// with a valid VkInstance call this function to retrieve additional VkInstance, VkPhysicalDevice, ... related functions 1094 void loadInstanceLevelFunctions( VkInstance instance ) { 1095 assert( vkGetInstanceProcAddr !is null, "Function pointer vkGetInstanceProcAddr is null!\nCall loadGlobalLevelFunctions -> loadInstanceLevelFunctions" ); 1096 1097 // VK_VERSION_1_0 1098 vkDestroyInstance = cast( PFN_vkDestroyInstance ) vkGetInstanceProcAddr( instance, "vkDestroyInstance" ); 1099 vkEnumeratePhysicalDevices = cast( PFN_vkEnumeratePhysicalDevices ) vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDevices" ); 1100 vkGetPhysicalDeviceFeatures = cast( PFN_vkGetPhysicalDeviceFeatures ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures" ); 1101 vkGetPhysicalDeviceFormatProperties = cast( PFN_vkGetPhysicalDeviceFormatProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties" ); 1102 vkGetPhysicalDeviceImageFormatProperties = cast( PFN_vkGetPhysicalDeviceImageFormatProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties" ); 1103 vkGetPhysicalDeviceProperties = cast( PFN_vkGetPhysicalDeviceProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties" ); 1104 vkGetPhysicalDeviceQueueFamilyProperties = cast( PFN_vkGetPhysicalDeviceQueueFamilyProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties" ); 1105 vkGetPhysicalDeviceMemoryProperties = cast( PFN_vkGetPhysicalDeviceMemoryProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties" ); 1106 vkGetDeviceProcAddr = cast( PFN_vkGetDeviceProcAddr ) vkGetInstanceProcAddr( instance, "vkGetDeviceProcAddr" ); 1107 vkCreateDevice = cast( PFN_vkCreateDevice ) vkGetInstanceProcAddr( instance, "vkCreateDevice" ); 1108 vkEnumerateDeviceExtensionProperties = cast( PFN_vkEnumerateDeviceExtensionProperties ) vkGetInstanceProcAddr( instance, "vkEnumerateDeviceExtensionProperties" ); 1109 vkEnumerateDeviceLayerProperties = cast( PFN_vkEnumerateDeviceLayerProperties ) vkGetInstanceProcAddr( instance, "vkEnumerateDeviceLayerProperties" ); 1110 vkGetPhysicalDeviceSparseImageFormatProperties = cast( PFN_vkGetPhysicalDeviceSparseImageFormatProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties" ); 1111 1112 // VK_VERSION_1_1 1113 vkEnumeratePhysicalDeviceGroups = cast( PFN_vkEnumeratePhysicalDeviceGroups ) vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroups" ); 1114 vkGetPhysicalDeviceFeatures2 = cast( PFN_vkGetPhysicalDeviceFeatures2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2" ); 1115 vkGetPhysicalDeviceProperties2 = cast( PFN_vkGetPhysicalDeviceProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2" ); 1116 vkGetPhysicalDeviceFormatProperties2 = cast( PFN_vkGetPhysicalDeviceFormatProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2" ); 1117 vkGetPhysicalDeviceImageFormatProperties2 = cast( PFN_vkGetPhysicalDeviceImageFormatProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2" ); 1118 vkGetPhysicalDeviceQueueFamilyProperties2 = cast( PFN_vkGetPhysicalDeviceQueueFamilyProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2" ); 1119 vkGetPhysicalDeviceMemoryProperties2 = cast( PFN_vkGetPhysicalDeviceMemoryProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2" ); 1120 vkGetPhysicalDeviceSparseImageFormatProperties2 = cast( PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2" ); 1121 vkGetPhysicalDeviceExternalBufferProperties = cast( PFN_vkGetPhysicalDeviceExternalBufferProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferProperties" ); 1122 vkGetPhysicalDeviceExternalFenceProperties = cast( PFN_vkGetPhysicalDeviceExternalFenceProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFenceProperties" ); 1123 vkGetPhysicalDeviceExternalSemaphoreProperties = cast( PFN_vkGetPhysicalDeviceExternalSemaphoreProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphoreProperties" ); 1124 1125 // VK_KHR_surface 1126 vkDestroySurfaceKHR = cast( PFN_vkDestroySurfaceKHR ) vkGetInstanceProcAddr( instance, "vkDestroySurfaceKHR" ); 1127 vkGetPhysicalDeviceSurfaceSupportKHR = cast( PFN_vkGetPhysicalDeviceSurfaceSupportKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceSupportKHR" ); 1128 vkGetPhysicalDeviceSurfaceCapabilitiesKHR = cast( PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR" ); 1129 vkGetPhysicalDeviceSurfaceFormatsKHR = cast( PFN_vkGetPhysicalDeviceSurfaceFormatsKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormatsKHR" ); 1130 vkGetPhysicalDeviceSurfacePresentModesKHR = cast( PFN_vkGetPhysicalDeviceSurfacePresentModesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModesKHR" ); 1131 1132 // VK_KHR_swapchain 1133 vkGetPhysicalDevicePresentRectanglesKHR = cast( PFN_vkGetPhysicalDevicePresentRectanglesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDevicePresentRectanglesKHR" ); 1134 1135 // VK_KHR_display 1136 vkGetPhysicalDeviceDisplayPropertiesKHR = cast( PFN_vkGetPhysicalDeviceDisplayPropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPropertiesKHR" ); 1137 vkGetPhysicalDeviceDisplayPlanePropertiesKHR = cast( PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR" ); 1138 vkGetDisplayPlaneSupportedDisplaysKHR = cast( PFN_vkGetDisplayPlaneSupportedDisplaysKHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneSupportedDisplaysKHR" ); 1139 vkGetDisplayModePropertiesKHR = cast( PFN_vkGetDisplayModePropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayModePropertiesKHR" ); 1140 vkCreateDisplayModeKHR = cast( PFN_vkCreateDisplayModeKHR ) vkGetInstanceProcAddr( instance, "vkCreateDisplayModeKHR" ); 1141 vkGetDisplayPlaneCapabilitiesKHR = cast( PFN_vkGetDisplayPlaneCapabilitiesKHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilitiesKHR" ); 1142 vkCreateDisplayPlaneSurfaceKHR = cast( PFN_vkCreateDisplayPlaneSurfaceKHR ) vkGetInstanceProcAddr( instance, "vkCreateDisplayPlaneSurfaceKHR" ); 1143 1144 // VK_KHR_performance_query 1145 vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = cast( PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR ) vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" ); 1146 vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = cast( PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" ); 1147 1148 // VK_KHR_get_surface_capabilities2 1149 vkGetPhysicalDeviceSurfaceCapabilities2KHR = cast( PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2KHR" ); 1150 vkGetPhysicalDeviceSurfaceFormats2KHR = cast( PFN_vkGetPhysicalDeviceSurfaceFormats2KHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormats2KHR" ); 1151 1152 // VK_KHR_get_display_properties2 1153 vkGetPhysicalDeviceDisplayProperties2KHR = cast( PFN_vkGetPhysicalDeviceDisplayProperties2KHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayProperties2KHR" ); 1154 vkGetPhysicalDeviceDisplayPlaneProperties2KHR = cast( PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR" ); 1155 vkGetDisplayModeProperties2KHR = cast( PFN_vkGetDisplayModeProperties2KHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayModeProperties2KHR" ); 1156 vkGetDisplayPlaneCapabilities2KHR = cast( PFN_vkGetDisplayPlaneCapabilities2KHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilities2KHR" ); 1157 1158 // VK_KHR_fragment_shading_rate 1159 vkGetPhysicalDeviceFragmentShadingRatesKHR = cast( PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFragmentShadingRatesKHR" ); 1160 1161 // VK_EXT_debug_report 1162 vkCreateDebugReportCallbackEXT = cast( PFN_vkCreateDebugReportCallbackEXT ) vkGetInstanceProcAddr( instance, "vkCreateDebugReportCallbackEXT" ); 1163 vkDestroyDebugReportCallbackEXT = cast( PFN_vkDestroyDebugReportCallbackEXT ) vkGetInstanceProcAddr( instance, "vkDestroyDebugReportCallbackEXT" ); 1164 vkDebugReportMessageEXT = cast( PFN_vkDebugReportMessageEXT ) vkGetInstanceProcAddr( instance, "vkDebugReportMessageEXT" ); 1165 1166 // VK_NV_external_memory_capabilities 1167 vkGetPhysicalDeviceExternalImageFormatPropertiesNV = cast( PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV" ); 1168 1169 // VK_EXT_direct_mode_display 1170 vkReleaseDisplayEXT = cast( PFN_vkReleaseDisplayEXT ) vkGetInstanceProcAddr( instance, "vkReleaseDisplayEXT" ); 1171 1172 // VK_EXT_display_surface_counter 1173 vkGetPhysicalDeviceSurfaceCapabilities2EXT = cast( PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2EXT" ); 1174 1175 // VK_EXT_debug_utils 1176 vkCreateDebugUtilsMessengerEXT = cast( PFN_vkCreateDebugUtilsMessengerEXT ) vkGetInstanceProcAddr( instance, "vkCreateDebugUtilsMessengerEXT" ); 1177 vkDestroyDebugUtilsMessengerEXT = cast( PFN_vkDestroyDebugUtilsMessengerEXT ) vkGetInstanceProcAddr( instance, "vkDestroyDebugUtilsMessengerEXT" ); 1178 vkSubmitDebugUtilsMessageEXT = cast( PFN_vkSubmitDebugUtilsMessageEXT ) vkGetInstanceProcAddr( instance, "vkSubmitDebugUtilsMessageEXT" ); 1179 1180 // VK_EXT_sample_locations 1181 vkGetPhysicalDeviceMultisamplePropertiesEXT = cast( PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMultisamplePropertiesEXT" ); 1182 1183 // VK_EXT_calibrated_timestamps 1184 vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = cast( PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT" ); 1185 1186 // VK_EXT_tooling_info 1187 vkGetPhysicalDeviceToolPropertiesEXT = cast( PFN_vkGetPhysicalDeviceToolPropertiesEXT ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceToolPropertiesEXT" ); 1188 1189 // VK_NV_cooperative_matrix 1190 vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = cast( PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV" ); 1191 1192 // VK_NV_coverage_reduction_mode 1193 vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = cast( PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV" ); 1194 1195 // VK_EXT_headless_surface 1196 vkCreateHeadlessSurfaceEXT = cast( PFN_vkCreateHeadlessSurfaceEXT ) vkGetInstanceProcAddr( instance, "vkCreateHeadlessSurfaceEXT" ); 1197 } 1198 1199 1200 /// with a valid VkInstance call this function to retrieve VkDevice, VkQueue and VkCommandBuffer related functions 1201 /// the functions call indirectly through the VkInstance and will be internally dispatched by the implementation 1202 /// use loadDeviceLevelFunctions( VkDevice device ) bellow to avoid this indirection and get the pointers directly form a VkDevice 1203 void loadDeviceLevelFunctions( VkInstance instance ) { 1204 assert( vkGetInstanceProcAddr !is null, "Function pointer vkGetInstanceProcAddr is null!\nCall loadGlobalLevelFunctions -> loadDeviceLevelFunctions( instance )" ); 1205 1206 // VK_VERSION_1_0 1207 vkDestroyDevice = cast( PFN_vkDestroyDevice ) vkGetInstanceProcAddr( instance, "vkDestroyDevice" ); 1208 vkGetDeviceQueue = cast( PFN_vkGetDeviceQueue ) vkGetInstanceProcAddr( instance, "vkGetDeviceQueue" ); 1209 vkQueueSubmit = cast( PFN_vkQueueSubmit ) vkGetInstanceProcAddr( instance, "vkQueueSubmit" ); 1210 vkQueueWaitIdle = cast( PFN_vkQueueWaitIdle ) vkGetInstanceProcAddr( instance, "vkQueueWaitIdle" ); 1211 vkDeviceWaitIdle = cast( PFN_vkDeviceWaitIdle ) vkGetInstanceProcAddr( instance, "vkDeviceWaitIdle" ); 1212 vkAllocateMemory = cast( PFN_vkAllocateMemory ) vkGetInstanceProcAddr( instance, "vkAllocateMemory" ); 1213 vkFreeMemory = cast( PFN_vkFreeMemory ) vkGetInstanceProcAddr( instance, "vkFreeMemory" ); 1214 vkMapMemory = cast( PFN_vkMapMemory ) vkGetInstanceProcAddr( instance, "vkMapMemory" ); 1215 vkUnmapMemory = cast( PFN_vkUnmapMemory ) vkGetInstanceProcAddr( instance, "vkUnmapMemory" ); 1216 vkFlushMappedMemoryRanges = cast( PFN_vkFlushMappedMemoryRanges ) vkGetInstanceProcAddr( instance, "vkFlushMappedMemoryRanges" ); 1217 vkInvalidateMappedMemoryRanges = cast( PFN_vkInvalidateMappedMemoryRanges ) vkGetInstanceProcAddr( instance, "vkInvalidateMappedMemoryRanges" ); 1218 vkGetDeviceMemoryCommitment = cast( PFN_vkGetDeviceMemoryCommitment ) vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryCommitment" ); 1219 vkBindBufferMemory = cast( PFN_vkBindBufferMemory ) vkGetInstanceProcAddr( instance, "vkBindBufferMemory" ); 1220 vkBindImageMemory = cast( PFN_vkBindImageMemory ) vkGetInstanceProcAddr( instance, "vkBindImageMemory" ); 1221 vkGetBufferMemoryRequirements = cast( PFN_vkGetBufferMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements" ); 1222 vkGetImageMemoryRequirements = cast( PFN_vkGetImageMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements" ); 1223 vkGetImageSparseMemoryRequirements = cast( PFN_vkGetImageSparseMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements" ); 1224 vkQueueBindSparse = cast( PFN_vkQueueBindSparse ) vkGetInstanceProcAddr( instance, "vkQueueBindSparse" ); 1225 vkCreateFence = cast( PFN_vkCreateFence ) vkGetInstanceProcAddr( instance, "vkCreateFence" ); 1226 vkDestroyFence = cast( PFN_vkDestroyFence ) vkGetInstanceProcAddr( instance, "vkDestroyFence" ); 1227 vkResetFences = cast( PFN_vkResetFences ) vkGetInstanceProcAddr( instance, "vkResetFences" ); 1228 vkGetFenceStatus = cast( PFN_vkGetFenceStatus ) vkGetInstanceProcAddr( instance, "vkGetFenceStatus" ); 1229 vkWaitForFences = cast( PFN_vkWaitForFences ) vkGetInstanceProcAddr( instance, "vkWaitForFences" ); 1230 vkCreateSemaphore = cast( PFN_vkCreateSemaphore ) vkGetInstanceProcAddr( instance, "vkCreateSemaphore" ); 1231 vkDestroySemaphore = cast( PFN_vkDestroySemaphore ) vkGetInstanceProcAddr( instance, "vkDestroySemaphore" ); 1232 vkCreateEvent = cast( PFN_vkCreateEvent ) vkGetInstanceProcAddr( instance, "vkCreateEvent" ); 1233 vkDestroyEvent = cast( PFN_vkDestroyEvent ) vkGetInstanceProcAddr( instance, "vkDestroyEvent" ); 1234 vkGetEventStatus = cast( PFN_vkGetEventStatus ) vkGetInstanceProcAddr( instance, "vkGetEventStatus" ); 1235 vkSetEvent = cast( PFN_vkSetEvent ) vkGetInstanceProcAddr( instance, "vkSetEvent" ); 1236 vkResetEvent = cast( PFN_vkResetEvent ) vkGetInstanceProcAddr( instance, "vkResetEvent" ); 1237 vkCreateQueryPool = cast( PFN_vkCreateQueryPool ) vkGetInstanceProcAddr( instance, "vkCreateQueryPool" ); 1238 vkDestroyQueryPool = cast( PFN_vkDestroyQueryPool ) vkGetInstanceProcAddr( instance, "vkDestroyQueryPool" ); 1239 vkGetQueryPoolResults = cast( PFN_vkGetQueryPoolResults ) vkGetInstanceProcAddr( instance, "vkGetQueryPoolResults" ); 1240 vkCreateBuffer = cast( PFN_vkCreateBuffer ) vkGetInstanceProcAddr( instance, "vkCreateBuffer" ); 1241 vkDestroyBuffer = cast( PFN_vkDestroyBuffer ) vkGetInstanceProcAddr( instance, "vkDestroyBuffer" ); 1242 vkCreateBufferView = cast( PFN_vkCreateBufferView ) vkGetInstanceProcAddr( instance, "vkCreateBufferView" ); 1243 vkDestroyBufferView = cast( PFN_vkDestroyBufferView ) vkGetInstanceProcAddr( instance, "vkDestroyBufferView" ); 1244 vkCreateImage = cast( PFN_vkCreateImage ) vkGetInstanceProcAddr( instance, "vkCreateImage" ); 1245 vkDestroyImage = cast( PFN_vkDestroyImage ) vkGetInstanceProcAddr( instance, "vkDestroyImage" ); 1246 vkGetImageSubresourceLayout = cast( PFN_vkGetImageSubresourceLayout ) vkGetInstanceProcAddr( instance, "vkGetImageSubresourceLayout" ); 1247 vkCreateImageView = cast( PFN_vkCreateImageView ) vkGetInstanceProcAddr( instance, "vkCreateImageView" ); 1248 vkDestroyImageView = cast( PFN_vkDestroyImageView ) vkGetInstanceProcAddr( instance, "vkDestroyImageView" ); 1249 vkCreateShaderModule = cast( PFN_vkCreateShaderModule ) vkGetInstanceProcAddr( instance, "vkCreateShaderModule" ); 1250 vkDestroyShaderModule = cast( PFN_vkDestroyShaderModule ) vkGetInstanceProcAddr( instance, "vkDestroyShaderModule" ); 1251 vkCreatePipelineCache = cast( PFN_vkCreatePipelineCache ) vkGetInstanceProcAddr( instance, "vkCreatePipelineCache" ); 1252 vkDestroyPipelineCache = cast( PFN_vkDestroyPipelineCache ) vkGetInstanceProcAddr( instance, "vkDestroyPipelineCache" ); 1253 vkGetPipelineCacheData = cast( PFN_vkGetPipelineCacheData ) vkGetInstanceProcAddr( instance, "vkGetPipelineCacheData" ); 1254 vkMergePipelineCaches = cast( PFN_vkMergePipelineCaches ) vkGetInstanceProcAddr( instance, "vkMergePipelineCaches" ); 1255 vkCreateGraphicsPipelines = cast( PFN_vkCreateGraphicsPipelines ) vkGetInstanceProcAddr( instance, "vkCreateGraphicsPipelines" ); 1256 vkCreateComputePipelines = cast( PFN_vkCreateComputePipelines ) vkGetInstanceProcAddr( instance, "vkCreateComputePipelines" ); 1257 vkDestroyPipeline = cast( PFN_vkDestroyPipeline ) vkGetInstanceProcAddr( instance, "vkDestroyPipeline" ); 1258 vkCreatePipelineLayout = cast( PFN_vkCreatePipelineLayout ) vkGetInstanceProcAddr( instance, "vkCreatePipelineLayout" ); 1259 vkDestroyPipelineLayout = cast( PFN_vkDestroyPipelineLayout ) vkGetInstanceProcAddr( instance, "vkDestroyPipelineLayout" ); 1260 vkCreateSampler = cast( PFN_vkCreateSampler ) vkGetInstanceProcAddr( instance, "vkCreateSampler" ); 1261 vkDestroySampler = cast( PFN_vkDestroySampler ) vkGetInstanceProcAddr( instance, "vkDestroySampler" ); 1262 vkCreateDescriptorSetLayout = cast( PFN_vkCreateDescriptorSetLayout ) vkGetInstanceProcAddr( instance, "vkCreateDescriptorSetLayout" ); 1263 vkDestroyDescriptorSetLayout = cast( PFN_vkDestroyDescriptorSetLayout ) vkGetInstanceProcAddr( instance, "vkDestroyDescriptorSetLayout" ); 1264 vkCreateDescriptorPool = cast( PFN_vkCreateDescriptorPool ) vkGetInstanceProcAddr( instance, "vkCreateDescriptorPool" ); 1265 vkDestroyDescriptorPool = cast( PFN_vkDestroyDescriptorPool ) vkGetInstanceProcAddr( instance, "vkDestroyDescriptorPool" ); 1266 vkResetDescriptorPool = cast( PFN_vkResetDescriptorPool ) vkGetInstanceProcAddr( instance, "vkResetDescriptorPool" ); 1267 vkAllocateDescriptorSets = cast( PFN_vkAllocateDescriptorSets ) vkGetInstanceProcAddr( instance, "vkAllocateDescriptorSets" ); 1268 vkFreeDescriptorSets = cast( PFN_vkFreeDescriptorSets ) vkGetInstanceProcAddr( instance, "vkFreeDescriptorSets" ); 1269 vkUpdateDescriptorSets = cast( PFN_vkUpdateDescriptorSets ) vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSets" ); 1270 vkCreateFramebuffer = cast( PFN_vkCreateFramebuffer ) vkGetInstanceProcAddr( instance, "vkCreateFramebuffer" ); 1271 vkDestroyFramebuffer = cast( PFN_vkDestroyFramebuffer ) vkGetInstanceProcAddr( instance, "vkDestroyFramebuffer" ); 1272 vkCreateRenderPass = cast( PFN_vkCreateRenderPass ) vkGetInstanceProcAddr( instance, "vkCreateRenderPass" ); 1273 vkDestroyRenderPass = cast( PFN_vkDestroyRenderPass ) vkGetInstanceProcAddr( instance, "vkDestroyRenderPass" ); 1274 vkGetRenderAreaGranularity = cast( PFN_vkGetRenderAreaGranularity ) vkGetInstanceProcAddr( instance, "vkGetRenderAreaGranularity" ); 1275 vkCreateCommandPool = cast( PFN_vkCreateCommandPool ) vkGetInstanceProcAddr( instance, "vkCreateCommandPool" ); 1276 vkDestroyCommandPool = cast( PFN_vkDestroyCommandPool ) vkGetInstanceProcAddr( instance, "vkDestroyCommandPool" ); 1277 vkResetCommandPool = cast( PFN_vkResetCommandPool ) vkGetInstanceProcAddr( instance, "vkResetCommandPool" ); 1278 vkAllocateCommandBuffers = cast( PFN_vkAllocateCommandBuffers ) vkGetInstanceProcAddr( instance, "vkAllocateCommandBuffers" ); 1279 vkFreeCommandBuffers = cast( PFN_vkFreeCommandBuffers ) vkGetInstanceProcAddr( instance, "vkFreeCommandBuffers" ); 1280 vkBeginCommandBuffer = cast( PFN_vkBeginCommandBuffer ) vkGetInstanceProcAddr( instance, "vkBeginCommandBuffer" ); 1281 vkEndCommandBuffer = cast( PFN_vkEndCommandBuffer ) vkGetInstanceProcAddr( instance, "vkEndCommandBuffer" ); 1282 vkResetCommandBuffer = cast( PFN_vkResetCommandBuffer ) vkGetInstanceProcAddr( instance, "vkResetCommandBuffer" ); 1283 vkCmdBindPipeline = cast( PFN_vkCmdBindPipeline ) vkGetInstanceProcAddr( instance, "vkCmdBindPipeline" ); 1284 vkCmdSetViewport = cast( PFN_vkCmdSetViewport ) vkGetInstanceProcAddr( instance, "vkCmdSetViewport" ); 1285 vkCmdSetScissor = cast( PFN_vkCmdSetScissor ) vkGetInstanceProcAddr( instance, "vkCmdSetScissor" ); 1286 vkCmdSetLineWidth = cast( PFN_vkCmdSetLineWidth ) vkGetInstanceProcAddr( instance, "vkCmdSetLineWidth" ); 1287 vkCmdSetDepthBias = cast( PFN_vkCmdSetDepthBias ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthBias" ); 1288 vkCmdSetBlendConstants = cast( PFN_vkCmdSetBlendConstants ) vkGetInstanceProcAddr( instance, "vkCmdSetBlendConstants" ); 1289 vkCmdSetDepthBounds = cast( PFN_vkCmdSetDepthBounds ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthBounds" ); 1290 vkCmdSetStencilCompareMask = cast( PFN_vkCmdSetStencilCompareMask ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilCompareMask" ); 1291 vkCmdSetStencilWriteMask = cast( PFN_vkCmdSetStencilWriteMask ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilWriteMask" ); 1292 vkCmdSetStencilReference = cast( PFN_vkCmdSetStencilReference ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilReference" ); 1293 vkCmdBindDescriptorSets = cast( PFN_vkCmdBindDescriptorSets ) vkGetInstanceProcAddr( instance, "vkCmdBindDescriptorSets" ); 1294 vkCmdBindIndexBuffer = cast( PFN_vkCmdBindIndexBuffer ) vkGetInstanceProcAddr( instance, "vkCmdBindIndexBuffer" ); 1295 vkCmdBindVertexBuffers = cast( PFN_vkCmdBindVertexBuffers ) vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers" ); 1296 vkCmdDraw = cast( PFN_vkCmdDraw ) vkGetInstanceProcAddr( instance, "vkCmdDraw" ); 1297 vkCmdDrawIndexed = cast( PFN_vkCmdDrawIndexed ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndexed" ); 1298 vkCmdDrawIndirect = cast( PFN_vkCmdDrawIndirect ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndirect" ); 1299 vkCmdDrawIndexedIndirect = cast( PFN_vkCmdDrawIndexedIndirect ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirect" ); 1300 vkCmdDispatch = cast( PFN_vkCmdDispatch ) vkGetInstanceProcAddr( instance, "vkCmdDispatch" ); 1301 vkCmdDispatchIndirect = cast( PFN_vkCmdDispatchIndirect ) vkGetInstanceProcAddr( instance, "vkCmdDispatchIndirect" ); 1302 vkCmdCopyBuffer = cast( PFN_vkCmdCopyBuffer ) vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer" ); 1303 vkCmdCopyImage = cast( PFN_vkCmdCopyImage ) vkGetInstanceProcAddr( instance, "vkCmdCopyImage" ); 1304 vkCmdBlitImage = cast( PFN_vkCmdBlitImage ) vkGetInstanceProcAddr( instance, "vkCmdBlitImage" ); 1305 vkCmdCopyBufferToImage = cast( PFN_vkCmdCopyBufferToImage ) vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage" ); 1306 vkCmdCopyImageToBuffer = cast( PFN_vkCmdCopyImageToBuffer ) vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer" ); 1307 vkCmdUpdateBuffer = cast( PFN_vkCmdUpdateBuffer ) vkGetInstanceProcAddr( instance, "vkCmdUpdateBuffer" ); 1308 vkCmdFillBuffer = cast( PFN_vkCmdFillBuffer ) vkGetInstanceProcAddr( instance, "vkCmdFillBuffer" ); 1309 vkCmdClearColorImage = cast( PFN_vkCmdClearColorImage ) vkGetInstanceProcAddr( instance, "vkCmdClearColorImage" ); 1310 vkCmdClearDepthStencilImage = cast( PFN_vkCmdClearDepthStencilImage ) vkGetInstanceProcAddr( instance, "vkCmdClearDepthStencilImage" ); 1311 vkCmdClearAttachments = cast( PFN_vkCmdClearAttachments ) vkGetInstanceProcAddr( instance, "vkCmdClearAttachments" ); 1312 vkCmdResolveImage = cast( PFN_vkCmdResolveImage ) vkGetInstanceProcAddr( instance, "vkCmdResolveImage" ); 1313 vkCmdSetEvent = cast( PFN_vkCmdSetEvent ) vkGetInstanceProcAddr( instance, "vkCmdSetEvent" ); 1314 vkCmdResetEvent = cast( PFN_vkCmdResetEvent ) vkGetInstanceProcAddr( instance, "vkCmdResetEvent" ); 1315 vkCmdWaitEvents = cast( PFN_vkCmdWaitEvents ) vkGetInstanceProcAddr( instance, "vkCmdWaitEvents" ); 1316 vkCmdPipelineBarrier = cast( PFN_vkCmdPipelineBarrier ) vkGetInstanceProcAddr( instance, "vkCmdPipelineBarrier" ); 1317 vkCmdBeginQuery = cast( PFN_vkCmdBeginQuery ) vkGetInstanceProcAddr( instance, "vkCmdBeginQuery" ); 1318 vkCmdEndQuery = cast( PFN_vkCmdEndQuery ) vkGetInstanceProcAddr( instance, "vkCmdEndQuery" ); 1319 vkCmdResetQueryPool = cast( PFN_vkCmdResetQueryPool ) vkGetInstanceProcAddr( instance, "vkCmdResetQueryPool" ); 1320 vkCmdWriteTimestamp = cast( PFN_vkCmdWriteTimestamp ) vkGetInstanceProcAddr( instance, "vkCmdWriteTimestamp" ); 1321 vkCmdCopyQueryPoolResults = cast( PFN_vkCmdCopyQueryPoolResults ) vkGetInstanceProcAddr( instance, "vkCmdCopyQueryPoolResults" ); 1322 vkCmdPushConstants = cast( PFN_vkCmdPushConstants ) vkGetInstanceProcAddr( instance, "vkCmdPushConstants" ); 1323 vkCmdBeginRenderPass = cast( PFN_vkCmdBeginRenderPass ) vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass" ); 1324 vkCmdNextSubpass = cast( PFN_vkCmdNextSubpass ) vkGetInstanceProcAddr( instance, "vkCmdNextSubpass" ); 1325 vkCmdEndRenderPass = cast( PFN_vkCmdEndRenderPass ) vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass" ); 1326 vkCmdExecuteCommands = cast( PFN_vkCmdExecuteCommands ) vkGetInstanceProcAddr( instance, "vkCmdExecuteCommands" ); 1327 1328 // VK_VERSION_1_1 1329 vkBindBufferMemory2 = cast( PFN_vkBindBufferMemory2 ) vkGetInstanceProcAddr( instance, "vkBindBufferMemory2" ); 1330 vkBindImageMemory2 = cast( PFN_vkBindImageMemory2 ) vkGetInstanceProcAddr( instance, "vkBindImageMemory2" ); 1331 vkGetDeviceGroupPeerMemoryFeatures = cast( PFN_vkGetDeviceGroupPeerMemoryFeatures ) vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPeerMemoryFeatures" ); 1332 vkCmdSetDeviceMask = cast( PFN_vkCmdSetDeviceMask ) vkGetInstanceProcAddr( instance, "vkCmdSetDeviceMask" ); 1333 vkCmdDispatchBase = cast( PFN_vkCmdDispatchBase ) vkGetInstanceProcAddr( instance, "vkCmdDispatchBase" ); 1334 vkGetImageMemoryRequirements2 = cast( PFN_vkGetImageMemoryRequirements2 ) vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements2" ); 1335 vkGetBufferMemoryRequirements2 = cast( PFN_vkGetBufferMemoryRequirements2 ) vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements2" ); 1336 vkGetImageSparseMemoryRequirements2 = cast( PFN_vkGetImageSparseMemoryRequirements2 ) vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements2" ); 1337 vkTrimCommandPool = cast( PFN_vkTrimCommandPool ) vkGetInstanceProcAddr( instance, "vkTrimCommandPool" ); 1338 vkGetDeviceQueue2 = cast( PFN_vkGetDeviceQueue2 ) vkGetInstanceProcAddr( instance, "vkGetDeviceQueue2" ); 1339 vkCreateSamplerYcbcrConversion = cast( PFN_vkCreateSamplerYcbcrConversion ) vkGetInstanceProcAddr( instance, "vkCreateSamplerYcbcrConversion" ); 1340 vkDestroySamplerYcbcrConversion = cast( PFN_vkDestroySamplerYcbcrConversion ) vkGetInstanceProcAddr( instance, "vkDestroySamplerYcbcrConversion" ); 1341 vkCreateDescriptorUpdateTemplate = cast( PFN_vkCreateDescriptorUpdateTemplate ) vkGetInstanceProcAddr( instance, "vkCreateDescriptorUpdateTemplate" ); 1342 vkDestroyDescriptorUpdateTemplate = cast( PFN_vkDestroyDescriptorUpdateTemplate ) vkGetInstanceProcAddr( instance, "vkDestroyDescriptorUpdateTemplate" ); 1343 vkUpdateDescriptorSetWithTemplate = cast( PFN_vkUpdateDescriptorSetWithTemplate ) vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSetWithTemplate" ); 1344 vkGetDescriptorSetLayoutSupport = cast( PFN_vkGetDescriptorSetLayoutSupport ) vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSupport" ); 1345 1346 // VK_VERSION_1_2 1347 vkCmdDrawIndirectCount = cast( PFN_vkCmdDrawIndirectCount ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCount" ); 1348 vkCmdDrawIndexedIndirectCount = cast( PFN_vkCmdDrawIndexedIndirectCount ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCount" ); 1349 vkCreateRenderPass2 = cast( PFN_vkCreateRenderPass2 ) vkGetInstanceProcAddr( instance, "vkCreateRenderPass2" ); 1350 vkCmdBeginRenderPass2 = cast( PFN_vkCmdBeginRenderPass2 ) vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass2" ); 1351 vkCmdNextSubpass2 = cast( PFN_vkCmdNextSubpass2 ) vkGetInstanceProcAddr( instance, "vkCmdNextSubpass2" ); 1352 vkCmdEndRenderPass2 = cast( PFN_vkCmdEndRenderPass2 ) vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass2" ); 1353 vkResetQueryPool = cast( PFN_vkResetQueryPool ) vkGetInstanceProcAddr( instance, "vkResetQueryPool" ); 1354 vkGetSemaphoreCounterValue = cast( PFN_vkGetSemaphoreCounterValue ) vkGetInstanceProcAddr( instance, "vkGetSemaphoreCounterValue" ); 1355 vkWaitSemaphores = cast( PFN_vkWaitSemaphores ) vkGetInstanceProcAddr( instance, "vkWaitSemaphores" ); 1356 vkSignalSemaphore = cast( PFN_vkSignalSemaphore ) vkGetInstanceProcAddr( instance, "vkSignalSemaphore" ); 1357 vkGetBufferDeviceAddress = cast( PFN_vkGetBufferDeviceAddress ) vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddress" ); 1358 vkGetBufferOpaqueCaptureAddress = cast( PFN_vkGetBufferOpaqueCaptureAddress ) vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureAddress" ); 1359 vkGetDeviceMemoryOpaqueCaptureAddress = cast( PFN_vkGetDeviceMemoryOpaqueCaptureAddress ) vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryOpaqueCaptureAddress" ); 1360 1361 // VK_KHR_swapchain 1362 vkCreateSwapchainKHR = cast( PFN_vkCreateSwapchainKHR ) vkGetInstanceProcAddr( instance, "vkCreateSwapchainKHR" ); 1363 vkDestroySwapchainKHR = cast( PFN_vkDestroySwapchainKHR ) vkGetInstanceProcAddr( instance, "vkDestroySwapchainKHR" ); 1364 vkGetSwapchainImagesKHR = cast( PFN_vkGetSwapchainImagesKHR ) vkGetInstanceProcAddr( instance, "vkGetSwapchainImagesKHR" ); 1365 vkAcquireNextImageKHR = cast( PFN_vkAcquireNextImageKHR ) vkGetInstanceProcAddr( instance, "vkAcquireNextImageKHR" ); 1366 vkQueuePresentKHR = cast( PFN_vkQueuePresentKHR ) vkGetInstanceProcAddr( instance, "vkQueuePresentKHR" ); 1367 vkGetDeviceGroupPresentCapabilitiesKHR = cast( PFN_vkGetDeviceGroupPresentCapabilitiesKHR ) vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPresentCapabilitiesKHR" ); 1368 vkGetDeviceGroupSurfacePresentModesKHR = cast( PFN_vkGetDeviceGroupSurfacePresentModesKHR ) vkGetInstanceProcAddr( instance, "vkGetDeviceGroupSurfacePresentModesKHR" ); 1369 vkAcquireNextImage2KHR = cast( PFN_vkAcquireNextImage2KHR ) vkGetInstanceProcAddr( instance, "vkAcquireNextImage2KHR" ); 1370 1371 // VK_KHR_display_swapchain 1372 vkCreateSharedSwapchainsKHR = cast( PFN_vkCreateSharedSwapchainsKHR ) vkGetInstanceProcAddr( instance, "vkCreateSharedSwapchainsKHR" ); 1373 1374 // VK_KHR_external_memory_fd 1375 vkGetMemoryFdKHR = cast( PFN_vkGetMemoryFdKHR ) vkGetInstanceProcAddr( instance, "vkGetMemoryFdKHR" ); 1376 vkGetMemoryFdPropertiesKHR = cast( PFN_vkGetMemoryFdPropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetMemoryFdPropertiesKHR" ); 1377 1378 // VK_KHR_external_semaphore_fd 1379 vkImportSemaphoreFdKHR = cast( PFN_vkImportSemaphoreFdKHR ) vkGetInstanceProcAddr( instance, "vkImportSemaphoreFdKHR" ); 1380 vkGetSemaphoreFdKHR = cast( PFN_vkGetSemaphoreFdKHR ) vkGetInstanceProcAddr( instance, "vkGetSemaphoreFdKHR" ); 1381 1382 // VK_KHR_push_descriptor 1383 vkCmdPushDescriptorSetKHR = cast( PFN_vkCmdPushDescriptorSetKHR ) vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetKHR" ); 1384 vkCmdPushDescriptorSetWithTemplateKHR = cast( PFN_vkCmdPushDescriptorSetWithTemplateKHR ) vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetWithTemplateKHR" ); 1385 1386 // VK_KHR_shared_presentable_image 1387 vkGetSwapchainStatusKHR = cast( PFN_vkGetSwapchainStatusKHR ) vkGetInstanceProcAddr( instance, "vkGetSwapchainStatusKHR" ); 1388 1389 // VK_KHR_external_fence_fd 1390 vkImportFenceFdKHR = cast( PFN_vkImportFenceFdKHR ) vkGetInstanceProcAddr( instance, "vkImportFenceFdKHR" ); 1391 vkGetFenceFdKHR = cast( PFN_vkGetFenceFdKHR ) vkGetInstanceProcAddr( instance, "vkGetFenceFdKHR" ); 1392 1393 // VK_KHR_performance_query 1394 vkAcquireProfilingLockKHR = cast( PFN_vkAcquireProfilingLockKHR ) vkGetInstanceProcAddr( instance, "vkAcquireProfilingLockKHR" ); 1395 vkReleaseProfilingLockKHR = cast( PFN_vkReleaseProfilingLockKHR ) vkGetInstanceProcAddr( instance, "vkReleaseProfilingLockKHR" ); 1396 1397 // VK_KHR_fragment_shading_rate 1398 vkCmdSetFragmentShadingRateKHR = cast( PFN_vkCmdSetFragmentShadingRateKHR ) vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateKHR" ); 1399 1400 // VK_KHR_deferred_host_operations 1401 vkCreateDeferredOperationKHR = cast( PFN_vkCreateDeferredOperationKHR ) vkGetInstanceProcAddr( instance, "vkCreateDeferredOperationKHR" ); 1402 vkDestroyDeferredOperationKHR = cast( PFN_vkDestroyDeferredOperationKHR ) vkGetInstanceProcAddr( instance, "vkDestroyDeferredOperationKHR" ); 1403 vkGetDeferredOperationMaxConcurrencyKHR = cast( PFN_vkGetDeferredOperationMaxConcurrencyKHR ) vkGetInstanceProcAddr( instance, "vkGetDeferredOperationMaxConcurrencyKHR" ); 1404 vkGetDeferredOperationResultKHR = cast( PFN_vkGetDeferredOperationResultKHR ) vkGetInstanceProcAddr( instance, "vkGetDeferredOperationResultKHR" ); 1405 vkDeferredOperationJoinKHR = cast( PFN_vkDeferredOperationJoinKHR ) vkGetInstanceProcAddr( instance, "vkDeferredOperationJoinKHR" ); 1406 1407 // VK_KHR_pipeline_executable_properties 1408 vkGetPipelineExecutablePropertiesKHR = cast( PFN_vkGetPipelineExecutablePropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetPipelineExecutablePropertiesKHR" ); 1409 vkGetPipelineExecutableStatisticsKHR = cast( PFN_vkGetPipelineExecutableStatisticsKHR ) vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableStatisticsKHR" ); 1410 vkGetPipelineExecutableInternalRepresentationsKHR = cast( PFN_vkGetPipelineExecutableInternalRepresentationsKHR ) vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableInternalRepresentationsKHR" ); 1411 1412 // VK_KHR_copy_commands2 1413 vkCmdCopyBuffer2KHR = cast( PFN_vkCmdCopyBuffer2KHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer2KHR" ); 1414 vkCmdCopyImage2KHR = cast( PFN_vkCmdCopyImage2KHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyImage2KHR" ); 1415 vkCmdCopyBufferToImage2KHR = cast( PFN_vkCmdCopyBufferToImage2KHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage2KHR" ); 1416 vkCmdCopyImageToBuffer2KHR = cast( PFN_vkCmdCopyImageToBuffer2KHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer2KHR" ); 1417 vkCmdBlitImage2KHR = cast( PFN_vkCmdBlitImage2KHR ) vkGetInstanceProcAddr( instance, "vkCmdBlitImage2KHR" ); 1418 vkCmdResolveImage2KHR = cast( PFN_vkCmdResolveImage2KHR ) vkGetInstanceProcAddr( instance, "vkCmdResolveImage2KHR" ); 1419 1420 // VK_EXT_debug_marker 1421 vkDebugMarkerSetObjectTagEXT = cast( PFN_vkDebugMarkerSetObjectTagEXT ) vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectTagEXT" ); 1422 vkDebugMarkerSetObjectNameEXT = cast( PFN_vkDebugMarkerSetObjectNameEXT ) vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectNameEXT" ); 1423 vkCmdDebugMarkerBeginEXT = cast( PFN_vkCmdDebugMarkerBeginEXT ) vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerBeginEXT" ); 1424 vkCmdDebugMarkerEndEXT = cast( PFN_vkCmdDebugMarkerEndEXT ) vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerEndEXT" ); 1425 vkCmdDebugMarkerInsertEXT = cast( PFN_vkCmdDebugMarkerInsertEXT ) vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerInsertEXT" ); 1426 1427 // VK_EXT_transform_feedback 1428 vkCmdBindTransformFeedbackBuffersEXT = cast( PFN_vkCmdBindTransformFeedbackBuffersEXT ) vkGetInstanceProcAddr( instance, "vkCmdBindTransformFeedbackBuffersEXT" ); 1429 vkCmdBeginTransformFeedbackEXT = cast( PFN_vkCmdBeginTransformFeedbackEXT ) vkGetInstanceProcAddr( instance, "vkCmdBeginTransformFeedbackEXT" ); 1430 vkCmdEndTransformFeedbackEXT = cast( PFN_vkCmdEndTransformFeedbackEXT ) vkGetInstanceProcAddr( instance, "vkCmdEndTransformFeedbackEXT" ); 1431 vkCmdBeginQueryIndexedEXT = cast( PFN_vkCmdBeginQueryIndexedEXT ) vkGetInstanceProcAddr( instance, "vkCmdBeginQueryIndexedEXT" ); 1432 vkCmdEndQueryIndexedEXT = cast( PFN_vkCmdEndQueryIndexedEXT ) vkGetInstanceProcAddr( instance, "vkCmdEndQueryIndexedEXT" ); 1433 vkCmdDrawIndirectByteCountEXT = cast( PFN_vkCmdDrawIndirectByteCountEXT ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectByteCountEXT" ); 1434 1435 // VK_NVX_image_view_handle 1436 vkGetImageViewHandleNVX = cast( PFN_vkGetImageViewHandleNVX ) vkGetInstanceProcAddr( instance, "vkGetImageViewHandleNVX" ); 1437 vkGetImageViewAddressNVX = cast( PFN_vkGetImageViewAddressNVX ) vkGetInstanceProcAddr( instance, "vkGetImageViewAddressNVX" ); 1438 1439 // VK_AMD_shader_info 1440 vkGetShaderInfoAMD = cast( PFN_vkGetShaderInfoAMD ) vkGetInstanceProcAddr( instance, "vkGetShaderInfoAMD" ); 1441 1442 // VK_EXT_conditional_rendering 1443 vkCmdBeginConditionalRenderingEXT = cast( PFN_vkCmdBeginConditionalRenderingEXT ) vkGetInstanceProcAddr( instance, "vkCmdBeginConditionalRenderingEXT" ); 1444 vkCmdEndConditionalRenderingEXT = cast( PFN_vkCmdEndConditionalRenderingEXT ) vkGetInstanceProcAddr( instance, "vkCmdEndConditionalRenderingEXT" ); 1445 1446 // VK_NV_clip_space_w_scaling 1447 vkCmdSetViewportWScalingNV = cast( PFN_vkCmdSetViewportWScalingNV ) vkGetInstanceProcAddr( instance, "vkCmdSetViewportWScalingNV" ); 1448 1449 // VK_EXT_display_control 1450 vkDisplayPowerControlEXT = cast( PFN_vkDisplayPowerControlEXT ) vkGetInstanceProcAddr( instance, "vkDisplayPowerControlEXT" ); 1451 vkRegisterDeviceEventEXT = cast( PFN_vkRegisterDeviceEventEXT ) vkGetInstanceProcAddr( instance, "vkRegisterDeviceEventEXT" ); 1452 vkRegisterDisplayEventEXT = cast( PFN_vkRegisterDisplayEventEXT ) vkGetInstanceProcAddr( instance, "vkRegisterDisplayEventEXT" ); 1453 vkGetSwapchainCounterEXT = cast( PFN_vkGetSwapchainCounterEXT ) vkGetInstanceProcAddr( instance, "vkGetSwapchainCounterEXT" ); 1454 1455 // VK_GOOGLE_display_timing 1456 vkGetRefreshCycleDurationGOOGLE = cast( PFN_vkGetRefreshCycleDurationGOOGLE ) vkGetInstanceProcAddr( instance, "vkGetRefreshCycleDurationGOOGLE" ); 1457 vkGetPastPresentationTimingGOOGLE = cast( PFN_vkGetPastPresentationTimingGOOGLE ) vkGetInstanceProcAddr( instance, "vkGetPastPresentationTimingGOOGLE" ); 1458 1459 // VK_EXT_discard_rectangles 1460 vkCmdSetDiscardRectangleEXT = cast( PFN_vkCmdSetDiscardRectangleEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDiscardRectangleEXT" ); 1461 1462 // VK_EXT_hdr_metadata 1463 vkSetHdrMetadataEXT = cast( PFN_vkSetHdrMetadataEXT ) vkGetInstanceProcAddr( instance, "vkSetHdrMetadataEXT" ); 1464 1465 // VK_EXT_debug_utils 1466 vkSetDebugUtilsObjectNameEXT = cast( PFN_vkSetDebugUtilsObjectNameEXT ) vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectNameEXT" ); 1467 vkSetDebugUtilsObjectTagEXT = cast( PFN_vkSetDebugUtilsObjectTagEXT ) vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectTagEXT" ); 1468 vkQueueBeginDebugUtilsLabelEXT = cast( PFN_vkQueueBeginDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkQueueBeginDebugUtilsLabelEXT" ); 1469 vkQueueEndDebugUtilsLabelEXT = cast( PFN_vkQueueEndDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkQueueEndDebugUtilsLabelEXT" ); 1470 vkQueueInsertDebugUtilsLabelEXT = cast( PFN_vkQueueInsertDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkQueueInsertDebugUtilsLabelEXT" ); 1471 vkCmdBeginDebugUtilsLabelEXT = cast( PFN_vkCmdBeginDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkCmdBeginDebugUtilsLabelEXT" ); 1472 vkCmdEndDebugUtilsLabelEXT = cast( PFN_vkCmdEndDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkCmdEndDebugUtilsLabelEXT" ); 1473 vkCmdInsertDebugUtilsLabelEXT = cast( PFN_vkCmdInsertDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkCmdInsertDebugUtilsLabelEXT" ); 1474 1475 // VK_EXT_sample_locations 1476 vkCmdSetSampleLocationsEXT = cast( PFN_vkCmdSetSampleLocationsEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetSampleLocationsEXT" ); 1477 1478 // VK_EXT_image_drm_format_modifier 1479 vkGetImageDrmFormatModifierPropertiesEXT = cast( PFN_vkGetImageDrmFormatModifierPropertiesEXT ) vkGetInstanceProcAddr( instance, "vkGetImageDrmFormatModifierPropertiesEXT" ); 1480 1481 // VK_EXT_validation_cache 1482 vkCreateValidationCacheEXT = cast( PFN_vkCreateValidationCacheEXT ) vkGetInstanceProcAddr( instance, "vkCreateValidationCacheEXT" ); 1483 vkDestroyValidationCacheEXT = cast( PFN_vkDestroyValidationCacheEXT ) vkGetInstanceProcAddr( instance, "vkDestroyValidationCacheEXT" ); 1484 vkMergeValidationCachesEXT = cast( PFN_vkMergeValidationCachesEXT ) vkGetInstanceProcAddr( instance, "vkMergeValidationCachesEXT" ); 1485 vkGetValidationCacheDataEXT = cast( PFN_vkGetValidationCacheDataEXT ) vkGetInstanceProcAddr( instance, "vkGetValidationCacheDataEXT" ); 1486 1487 // VK_NV_shading_rate_image 1488 vkCmdBindShadingRateImageNV = cast( PFN_vkCmdBindShadingRateImageNV ) vkGetInstanceProcAddr( instance, "vkCmdBindShadingRateImageNV" ); 1489 vkCmdSetViewportShadingRatePaletteNV = cast( PFN_vkCmdSetViewportShadingRatePaletteNV ) vkGetInstanceProcAddr( instance, "vkCmdSetViewportShadingRatePaletteNV" ); 1490 vkCmdSetCoarseSampleOrderNV = cast( PFN_vkCmdSetCoarseSampleOrderNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCoarseSampleOrderNV" ); 1491 1492 // VK_NV_ray_tracing 1493 vkCreateAccelerationStructureNV = cast( PFN_vkCreateAccelerationStructureNV ) vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureNV" ); 1494 vkDestroyAccelerationStructureNV = cast( PFN_vkDestroyAccelerationStructureNV ) vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureNV" ); 1495 vkGetAccelerationStructureMemoryRequirementsNV = cast( PFN_vkGetAccelerationStructureMemoryRequirementsNV ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureMemoryRequirementsNV" ); 1496 vkBindAccelerationStructureMemoryNV = cast( PFN_vkBindAccelerationStructureMemoryNV ) vkGetInstanceProcAddr( instance, "vkBindAccelerationStructureMemoryNV" ); 1497 vkCmdBuildAccelerationStructureNV = cast( PFN_vkCmdBuildAccelerationStructureNV ) vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructureNV" ); 1498 vkCmdCopyAccelerationStructureNV = cast( PFN_vkCmdCopyAccelerationStructureNV ) vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureNV" ); 1499 vkCmdTraceRaysNV = cast( PFN_vkCmdTraceRaysNV ) vkGetInstanceProcAddr( instance, "vkCmdTraceRaysNV" ); 1500 vkCreateRayTracingPipelinesNV = cast( PFN_vkCreateRayTracingPipelinesNV ) vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesNV" ); 1501 vkGetRayTracingShaderGroupHandlesKHR = cast( PFN_vkGetRayTracingShaderGroupHandlesKHR ) vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupHandlesKHR" ); 1502 vkGetAccelerationStructureHandleNV = cast( PFN_vkGetAccelerationStructureHandleNV ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureHandleNV" ); 1503 vkCmdWriteAccelerationStructuresPropertiesNV = cast( PFN_vkCmdWriteAccelerationStructuresPropertiesNV ) vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesNV" ); 1504 vkCompileDeferredNV = cast( PFN_vkCompileDeferredNV ) vkGetInstanceProcAddr( instance, "vkCompileDeferredNV" ); 1505 1506 // VK_EXT_external_memory_host 1507 vkGetMemoryHostPointerPropertiesEXT = cast( PFN_vkGetMemoryHostPointerPropertiesEXT ) vkGetInstanceProcAddr( instance, "vkGetMemoryHostPointerPropertiesEXT" ); 1508 1509 // VK_AMD_buffer_marker 1510 vkCmdWriteBufferMarkerAMD = cast( PFN_vkCmdWriteBufferMarkerAMD ) vkGetInstanceProcAddr( instance, "vkCmdWriteBufferMarkerAMD" ); 1511 1512 // VK_EXT_calibrated_timestamps 1513 vkGetCalibratedTimestampsEXT = cast( PFN_vkGetCalibratedTimestampsEXT ) vkGetInstanceProcAddr( instance, "vkGetCalibratedTimestampsEXT" ); 1514 1515 // VK_NV_mesh_shader 1516 vkCmdDrawMeshTasksNV = cast( PFN_vkCmdDrawMeshTasksNV ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksNV" ); 1517 vkCmdDrawMeshTasksIndirectNV = cast( PFN_vkCmdDrawMeshTasksIndirectNV ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectNV" ); 1518 vkCmdDrawMeshTasksIndirectCountNV = cast( PFN_vkCmdDrawMeshTasksIndirectCountNV ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectCountNV" ); 1519 1520 // VK_NV_scissor_exclusive 1521 vkCmdSetExclusiveScissorNV = cast( PFN_vkCmdSetExclusiveScissorNV ) vkGetInstanceProcAddr( instance, "vkCmdSetExclusiveScissorNV" ); 1522 1523 // VK_NV_device_diagnostic_checkpoints 1524 vkCmdSetCheckpointNV = cast( PFN_vkCmdSetCheckpointNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCheckpointNV" ); 1525 vkGetQueueCheckpointDataNV = cast( PFN_vkGetQueueCheckpointDataNV ) vkGetInstanceProcAddr( instance, "vkGetQueueCheckpointDataNV" ); 1526 1527 // VK_INTEL_performance_query 1528 vkInitializePerformanceApiINTEL = cast( PFN_vkInitializePerformanceApiINTEL ) vkGetInstanceProcAddr( instance, "vkInitializePerformanceApiINTEL" ); 1529 vkUninitializePerformanceApiINTEL = cast( PFN_vkUninitializePerformanceApiINTEL ) vkGetInstanceProcAddr( instance, "vkUninitializePerformanceApiINTEL" ); 1530 vkCmdSetPerformanceMarkerINTEL = cast( PFN_vkCmdSetPerformanceMarkerINTEL ) vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceMarkerINTEL" ); 1531 vkCmdSetPerformanceStreamMarkerINTEL = cast( PFN_vkCmdSetPerformanceStreamMarkerINTEL ) vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceStreamMarkerINTEL" ); 1532 vkCmdSetPerformanceOverrideINTEL = cast( PFN_vkCmdSetPerformanceOverrideINTEL ) vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceOverrideINTEL" ); 1533 vkAcquirePerformanceConfigurationINTEL = cast( PFN_vkAcquirePerformanceConfigurationINTEL ) vkGetInstanceProcAddr( instance, "vkAcquirePerformanceConfigurationINTEL" ); 1534 vkReleasePerformanceConfigurationINTEL = cast( PFN_vkReleasePerformanceConfigurationINTEL ) vkGetInstanceProcAddr( instance, "vkReleasePerformanceConfigurationINTEL" ); 1535 vkQueueSetPerformanceConfigurationINTEL = cast( PFN_vkQueueSetPerformanceConfigurationINTEL ) vkGetInstanceProcAddr( instance, "vkQueueSetPerformanceConfigurationINTEL" ); 1536 vkGetPerformanceParameterINTEL = cast( PFN_vkGetPerformanceParameterINTEL ) vkGetInstanceProcAddr( instance, "vkGetPerformanceParameterINTEL" ); 1537 1538 // VK_AMD_display_native_hdr 1539 vkSetLocalDimmingAMD = cast( PFN_vkSetLocalDimmingAMD ) vkGetInstanceProcAddr( instance, "vkSetLocalDimmingAMD" ); 1540 1541 // VK_EXT_line_rasterization 1542 vkCmdSetLineStippleEXT = cast( PFN_vkCmdSetLineStippleEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetLineStippleEXT" ); 1543 1544 // VK_EXT_extended_dynamic_state 1545 vkCmdSetCullModeEXT = cast( PFN_vkCmdSetCullModeEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetCullModeEXT" ); 1546 vkCmdSetFrontFaceEXT = cast( PFN_vkCmdSetFrontFaceEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetFrontFaceEXT" ); 1547 vkCmdSetPrimitiveTopologyEXT = cast( PFN_vkCmdSetPrimitiveTopologyEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetPrimitiveTopologyEXT" ); 1548 vkCmdSetViewportWithCountEXT = cast( PFN_vkCmdSetViewportWithCountEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetViewportWithCountEXT" ); 1549 vkCmdSetScissorWithCountEXT = cast( PFN_vkCmdSetScissorWithCountEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetScissorWithCountEXT" ); 1550 vkCmdBindVertexBuffers2EXT = cast( PFN_vkCmdBindVertexBuffers2EXT ) vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers2EXT" ); 1551 vkCmdSetDepthTestEnableEXT = cast( PFN_vkCmdSetDepthTestEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthTestEnableEXT" ); 1552 vkCmdSetDepthWriteEnableEXT = cast( PFN_vkCmdSetDepthWriteEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthWriteEnableEXT" ); 1553 vkCmdSetDepthCompareOpEXT = cast( PFN_vkCmdSetDepthCompareOpEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthCompareOpEXT" ); 1554 vkCmdSetDepthBoundsTestEnableEXT = cast( PFN_vkCmdSetDepthBoundsTestEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthBoundsTestEnableEXT" ); 1555 vkCmdSetStencilTestEnableEXT = cast( PFN_vkCmdSetStencilTestEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilTestEnableEXT" ); 1556 vkCmdSetStencilOpEXT = cast( PFN_vkCmdSetStencilOpEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilOpEXT" ); 1557 1558 // VK_NV_device_generated_commands 1559 vkGetGeneratedCommandsMemoryRequirementsNV = cast( PFN_vkGetGeneratedCommandsMemoryRequirementsNV ) vkGetInstanceProcAddr( instance, "vkGetGeneratedCommandsMemoryRequirementsNV" ); 1560 vkCmdPreprocessGeneratedCommandsNV = cast( PFN_vkCmdPreprocessGeneratedCommandsNV ) vkGetInstanceProcAddr( instance, "vkCmdPreprocessGeneratedCommandsNV" ); 1561 vkCmdExecuteGeneratedCommandsNV = cast( PFN_vkCmdExecuteGeneratedCommandsNV ) vkGetInstanceProcAddr( instance, "vkCmdExecuteGeneratedCommandsNV" ); 1562 vkCmdBindPipelineShaderGroupNV = cast( PFN_vkCmdBindPipelineShaderGroupNV ) vkGetInstanceProcAddr( instance, "vkCmdBindPipelineShaderGroupNV" ); 1563 vkCreateIndirectCommandsLayoutNV = cast( PFN_vkCreateIndirectCommandsLayoutNV ) vkGetInstanceProcAddr( instance, "vkCreateIndirectCommandsLayoutNV" ); 1564 vkDestroyIndirectCommandsLayoutNV = cast( PFN_vkDestroyIndirectCommandsLayoutNV ) vkGetInstanceProcAddr( instance, "vkDestroyIndirectCommandsLayoutNV" ); 1565 1566 // VK_EXT_private_data 1567 vkCreatePrivateDataSlotEXT = cast( PFN_vkCreatePrivateDataSlotEXT ) vkGetInstanceProcAddr( instance, "vkCreatePrivateDataSlotEXT" ); 1568 vkDestroyPrivateDataSlotEXT = cast( PFN_vkDestroyPrivateDataSlotEXT ) vkGetInstanceProcAddr( instance, "vkDestroyPrivateDataSlotEXT" ); 1569 vkSetPrivateDataEXT = cast( PFN_vkSetPrivateDataEXT ) vkGetInstanceProcAddr( instance, "vkSetPrivateDataEXT" ); 1570 vkGetPrivateDataEXT = cast( PFN_vkGetPrivateDataEXT ) vkGetInstanceProcAddr( instance, "vkGetPrivateDataEXT" ); 1571 1572 // VK_NV_fragment_shading_rate_enums 1573 vkCmdSetFragmentShadingRateEnumNV = cast( PFN_vkCmdSetFragmentShadingRateEnumNV ) vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateEnumNV" ); 1574 1575 // VK_KHR_acceleration_structure 1576 vkCreateAccelerationStructureKHR = cast( PFN_vkCreateAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureKHR" ); 1577 vkDestroyAccelerationStructureKHR = cast( PFN_vkDestroyAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureKHR" ); 1578 vkCmdBuildAccelerationStructuresKHR = cast( PFN_vkCmdBuildAccelerationStructuresKHR ) vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresKHR" ); 1579 vkCmdBuildAccelerationStructuresIndirectKHR = cast( PFN_vkCmdBuildAccelerationStructuresIndirectKHR ) vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresIndirectKHR" ); 1580 vkBuildAccelerationStructuresKHR = cast( PFN_vkBuildAccelerationStructuresKHR ) vkGetInstanceProcAddr( instance, "vkBuildAccelerationStructuresKHR" ); 1581 vkCopyAccelerationStructureKHR = cast( PFN_vkCopyAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureKHR" ); 1582 vkCopyAccelerationStructureToMemoryKHR = cast( PFN_vkCopyAccelerationStructureToMemoryKHR ) vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureToMemoryKHR" ); 1583 vkCopyMemoryToAccelerationStructureKHR = cast( PFN_vkCopyMemoryToAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCopyMemoryToAccelerationStructureKHR" ); 1584 vkWriteAccelerationStructuresPropertiesKHR = cast( PFN_vkWriteAccelerationStructuresPropertiesKHR ) vkGetInstanceProcAddr( instance, "vkWriteAccelerationStructuresPropertiesKHR" ); 1585 vkCmdCopyAccelerationStructureKHR = cast( PFN_vkCmdCopyAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureKHR" ); 1586 vkCmdCopyAccelerationStructureToMemoryKHR = cast( PFN_vkCmdCopyAccelerationStructureToMemoryKHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureToMemoryKHR" ); 1587 vkCmdCopyMemoryToAccelerationStructureKHR = cast( PFN_vkCmdCopyMemoryToAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyMemoryToAccelerationStructureKHR" ); 1588 vkGetAccelerationStructureDeviceAddressKHR = cast( PFN_vkGetAccelerationStructureDeviceAddressKHR ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureDeviceAddressKHR" ); 1589 vkCmdWriteAccelerationStructuresPropertiesKHR = cast( PFN_vkCmdWriteAccelerationStructuresPropertiesKHR ) vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesKHR" ); 1590 vkGetDeviceAccelerationStructureCompatibilityKHR = cast( PFN_vkGetDeviceAccelerationStructureCompatibilityKHR ) vkGetInstanceProcAddr( instance, "vkGetDeviceAccelerationStructureCompatibilityKHR" ); 1591 vkGetAccelerationStructureBuildSizesKHR = cast( PFN_vkGetAccelerationStructureBuildSizesKHR ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureBuildSizesKHR" ); 1592 1593 // VK_KHR_ray_tracing_pipeline 1594 vkCmdTraceRaysKHR = cast( PFN_vkCmdTraceRaysKHR ) vkGetInstanceProcAddr( instance, "vkCmdTraceRaysKHR" ); 1595 vkCreateRayTracingPipelinesKHR = cast( PFN_vkCreateRayTracingPipelinesKHR ) vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesKHR" ); 1596 vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast( PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR ) vkGetInstanceProcAddr( instance, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ); 1597 vkCmdTraceRaysIndirectKHR = cast( PFN_vkCmdTraceRaysIndirectKHR ) vkGetInstanceProcAddr( instance, "vkCmdTraceRaysIndirectKHR" ); 1598 vkGetRayTracingShaderGroupStackSizeKHR = cast( PFN_vkGetRayTracingShaderGroupStackSizeKHR ) vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupStackSizeKHR" ); 1599 vkCmdSetRayTracingPipelineStackSizeKHR = cast( PFN_vkCmdSetRayTracingPipelineStackSizeKHR ) vkGetInstanceProcAddr( instance, "vkCmdSetRayTracingPipelineStackSizeKHR" ); 1600 } 1601 1602 1603 /// with a valid VkDevice call this function to retrieve VkDevice, VkQueue and VkCommandBuffer related functions 1604 /// the functions call directly VkDevice and related resources and can be retrieved for one and only one VkDevice 1605 /// calling this function again with another VkDevices will overwrite the __gshared functions retrieved previously 1606 /// see module erupted.dispatch_device if multiple VkDevices will be used 1607 void loadDeviceLevelFunctions( VkDevice device ) { 1608 assert( vkGetDeviceProcAddr !is null, "Function pointer vkGetDeviceProcAddr is null!\nCall loadGlobalLevelFunctions -> loadInstanceLevelFunctions -> loadDeviceLevelFunctions( device )" ); 1609 1610 // VK_VERSION_1_0 1611 vkDestroyDevice = cast( PFN_vkDestroyDevice ) vkGetDeviceProcAddr( device, "vkDestroyDevice" ); 1612 vkGetDeviceQueue = cast( PFN_vkGetDeviceQueue ) vkGetDeviceProcAddr( device, "vkGetDeviceQueue" ); 1613 vkQueueSubmit = cast( PFN_vkQueueSubmit ) vkGetDeviceProcAddr( device, "vkQueueSubmit" ); 1614 vkQueueWaitIdle = cast( PFN_vkQueueWaitIdle ) vkGetDeviceProcAddr( device, "vkQueueWaitIdle" ); 1615 vkDeviceWaitIdle = cast( PFN_vkDeviceWaitIdle ) vkGetDeviceProcAddr( device, "vkDeviceWaitIdle" ); 1616 vkAllocateMemory = cast( PFN_vkAllocateMemory ) vkGetDeviceProcAddr( device, "vkAllocateMemory" ); 1617 vkFreeMemory = cast( PFN_vkFreeMemory ) vkGetDeviceProcAddr( device, "vkFreeMemory" ); 1618 vkMapMemory = cast( PFN_vkMapMemory ) vkGetDeviceProcAddr( device, "vkMapMemory" ); 1619 vkUnmapMemory = cast( PFN_vkUnmapMemory ) vkGetDeviceProcAddr( device, "vkUnmapMemory" ); 1620 vkFlushMappedMemoryRanges = cast( PFN_vkFlushMappedMemoryRanges ) vkGetDeviceProcAddr( device, "vkFlushMappedMemoryRanges" ); 1621 vkInvalidateMappedMemoryRanges = cast( PFN_vkInvalidateMappedMemoryRanges ) vkGetDeviceProcAddr( device, "vkInvalidateMappedMemoryRanges" ); 1622 vkGetDeviceMemoryCommitment = cast( PFN_vkGetDeviceMemoryCommitment ) vkGetDeviceProcAddr( device, "vkGetDeviceMemoryCommitment" ); 1623 vkBindBufferMemory = cast( PFN_vkBindBufferMemory ) vkGetDeviceProcAddr( device, "vkBindBufferMemory" ); 1624 vkBindImageMemory = cast( PFN_vkBindImageMemory ) vkGetDeviceProcAddr( device, "vkBindImageMemory" ); 1625 vkGetBufferMemoryRequirements = cast( PFN_vkGetBufferMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements" ); 1626 vkGetImageMemoryRequirements = cast( PFN_vkGetImageMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements" ); 1627 vkGetImageSparseMemoryRequirements = cast( PFN_vkGetImageSparseMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements" ); 1628 vkQueueBindSparse = cast( PFN_vkQueueBindSparse ) vkGetDeviceProcAddr( device, "vkQueueBindSparse" ); 1629 vkCreateFence = cast( PFN_vkCreateFence ) vkGetDeviceProcAddr( device, "vkCreateFence" ); 1630 vkDestroyFence = cast( PFN_vkDestroyFence ) vkGetDeviceProcAddr( device, "vkDestroyFence" ); 1631 vkResetFences = cast( PFN_vkResetFences ) vkGetDeviceProcAddr( device, "vkResetFences" ); 1632 vkGetFenceStatus = cast( PFN_vkGetFenceStatus ) vkGetDeviceProcAddr( device, "vkGetFenceStatus" ); 1633 vkWaitForFences = cast( PFN_vkWaitForFences ) vkGetDeviceProcAddr( device, "vkWaitForFences" ); 1634 vkCreateSemaphore = cast( PFN_vkCreateSemaphore ) vkGetDeviceProcAddr( device, "vkCreateSemaphore" ); 1635 vkDestroySemaphore = cast( PFN_vkDestroySemaphore ) vkGetDeviceProcAddr( device, "vkDestroySemaphore" ); 1636 vkCreateEvent = cast( PFN_vkCreateEvent ) vkGetDeviceProcAddr( device, "vkCreateEvent" ); 1637 vkDestroyEvent = cast( PFN_vkDestroyEvent ) vkGetDeviceProcAddr( device, "vkDestroyEvent" ); 1638 vkGetEventStatus = cast( PFN_vkGetEventStatus ) vkGetDeviceProcAddr( device, "vkGetEventStatus" ); 1639 vkSetEvent = cast( PFN_vkSetEvent ) vkGetDeviceProcAddr( device, "vkSetEvent" ); 1640 vkResetEvent = cast( PFN_vkResetEvent ) vkGetDeviceProcAddr( device, "vkResetEvent" ); 1641 vkCreateQueryPool = cast( PFN_vkCreateQueryPool ) vkGetDeviceProcAddr( device, "vkCreateQueryPool" ); 1642 vkDestroyQueryPool = cast( PFN_vkDestroyQueryPool ) vkGetDeviceProcAddr( device, "vkDestroyQueryPool" ); 1643 vkGetQueryPoolResults = cast( PFN_vkGetQueryPoolResults ) vkGetDeviceProcAddr( device, "vkGetQueryPoolResults" ); 1644 vkCreateBuffer = cast( PFN_vkCreateBuffer ) vkGetDeviceProcAddr( device, "vkCreateBuffer" ); 1645 vkDestroyBuffer = cast( PFN_vkDestroyBuffer ) vkGetDeviceProcAddr( device, "vkDestroyBuffer" ); 1646 vkCreateBufferView = cast( PFN_vkCreateBufferView ) vkGetDeviceProcAddr( device, "vkCreateBufferView" ); 1647 vkDestroyBufferView = cast( PFN_vkDestroyBufferView ) vkGetDeviceProcAddr( device, "vkDestroyBufferView" ); 1648 vkCreateImage = cast( PFN_vkCreateImage ) vkGetDeviceProcAddr( device, "vkCreateImage" ); 1649 vkDestroyImage = cast( PFN_vkDestroyImage ) vkGetDeviceProcAddr( device, "vkDestroyImage" ); 1650 vkGetImageSubresourceLayout = cast( PFN_vkGetImageSubresourceLayout ) vkGetDeviceProcAddr( device, "vkGetImageSubresourceLayout" ); 1651 vkCreateImageView = cast( PFN_vkCreateImageView ) vkGetDeviceProcAddr( device, "vkCreateImageView" ); 1652 vkDestroyImageView = cast( PFN_vkDestroyImageView ) vkGetDeviceProcAddr( device, "vkDestroyImageView" ); 1653 vkCreateShaderModule = cast( PFN_vkCreateShaderModule ) vkGetDeviceProcAddr( device, "vkCreateShaderModule" ); 1654 vkDestroyShaderModule = cast( PFN_vkDestroyShaderModule ) vkGetDeviceProcAddr( device, "vkDestroyShaderModule" ); 1655 vkCreatePipelineCache = cast( PFN_vkCreatePipelineCache ) vkGetDeviceProcAddr( device, "vkCreatePipelineCache" ); 1656 vkDestroyPipelineCache = cast( PFN_vkDestroyPipelineCache ) vkGetDeviceProcAddr( device, "vkDestroyPipelineCache" ); 1657 vkGetPipelineCacheData = cast( PFN_vkGetPipelineCacheData ) vkGetDeviceProcAddr( device, "vkGetPipelineCacheData" ); 1658 vkMergePipelineCaches = cast( PFN_vkMergePipelineCaches ) vkGetDeviceProcAddr( device, "vkMergePipelineCaches" ); 1659 vkCreateGraphicsPipelines = cast( PFN_vkCreateGraphicsPipelines ) vkGetDeviceProcAddr( device, "vkCreateGraphicsPipelines" ); 1660 vkCreateComputePipelines = cast( PFN_vkCreateComputePipelines ) vkGetDeviceProcAddr( device, "vkCreateComputePipelines" ); 1661 vkDestroyPipeline = cast( PFN_vkDestroyPipeline ) vkGetDeviceProcAddr( device, "vkDestroyPipeline" ); 1662 vkCreatePipelineLayout = cast( PFN_vkCreatePipelineLayout ) vkGetDeviceProcAddr( device, "vkCreatePipelineLayout" ); 1663 vkDestroyPipelineLayout = cast( PFN_vkDestroyPipelineLayout ) vkGetDeviceProcAddr( device, "vkDestroyPipelineLayout" ); 1664 vkCreateSampler = cast( PFN_vkCreateSampler ) vkGetDeviceProcAddr( device, "vkCreateSampler" ); 1665 vkDestroySampler = cast( PFN_vkDestroySampler ) vkGetDeviceProcAddr( device, "vkDestroySampler" ); 1666 vkCreateDescriptorSetLayout = cast( PFN_vkCreateDescriptorSetLayout ) vkGetDeviceProcAddr( device, "vkCreateDescriptorSetLayout" ); 1667 vkDestroyDescriptorSetLayout = cast( PFN_vkDestroyDescriptorSetLayout ) vkGetDeviceProcAddr( device, "vkDestroyDescriptorSetLayout" ); 1668 vkCreateDescriptorPool = cast( PFN_vkCreateDescriptorPool ) vkGetDeviceProcAddr( device, "vkCreateDescriptorPool" ); 1669 vkDestroyDescriptorPool = cast( PFN_vkDestroyDescriptorPool ) vkGetDeviceProcAddr( device, "vkDestroyDescriptorPool" ); 1670 vkResetDescriptorPool = cast( PFN_vkResetDescriptorPool ) vkGetDeviceProcAddr( device, "vkResetDescriptorPool" ); 1671 vkAllocateDescriptorSets = cast( PFN_vkAllocateDescriptorSets ) vkGetDeviceProcAddr( device, "vkAllocateDescriptorSets" ); 1672 vkFreeDescriptorSets = cast( PFN_vkFreeDescriptorSets ) vkGetDeviceProcAddr( device, "vkFreeDescriptorSets" ); 1673 vkUpdateDescriptorSets = cast( PFN_vkUpdateDescriptorSets ) vkGetDeviceProcAddr( device, "vkUpdateDescriptorSets" ); 1674 vkCreateFramebuffer = cast( PFN_vkCreateFramebuffer ) vkGetDeviceProcAddr( device, "vkCreateFramebuffer" ); 1675 vkDestroyFramebuffer = cast( PFN_vkDestroyFramebuffer ) vkGetDeviceProcAddr( device, "vkDestroyFramebuffer" ); 1676 vkCreateRenderPass = cast( PFN_vkCreateRenderPass ) vkGetDeviceProcAddr( device, "vkCreateRenderPass" ); 1677 vkDestroyRenderPass = cast( PFN_vkDestroyRenderPass ) vkGetDeviceProcAddr( device, "vkDestroyRenderPass" ); 1678 vkGetRenderAreaGranularity = cast( PFN_vkGetRenderAreaGranularity ) vkGetDeviceProcAddr( device, "vkGetRenderAreaGranularity" ); 1679 vkCreateCommandPool = cast( PFN_vkCreateCommandPool ) vkGetDeviceProcAddr( device, "vkCreateCommandPool" ); 1680 vkDestroyCommandPool = cast( PFN_vkDestroyCommandPool ) vkGetDeviceProcAddr( device, "vkDestroyCommandPool" ); 1681 vkResetCommandPool = cast( PFN_vkResetCommandPool ) vkGetDeviceProcAddr( device, "vkResetCommandPool" ); 1682 vkAllocateCommandBuffers = cast( PFN_vkAllocateCommandBuffers ) vkGetDeviceProcAddr( device, "vkAllocateCommandBuffers" ); 1683 vkFreeCommandBuffers = cast( PFN_vkFreeCommandBuffers ) vkGetDeviceProcAddr( device, "vkFreeCommandBuffers" ); 1684 vkBeginCommandBuffer = cast( PFN_vkBeginCommandBuffer ) vkGetDeviceProcAddr( device, "vkBeginCommandBuffer" ); 1685 vkEndCommandBuffer = cast( PFN_vkEndCommandBuffer ) vkGetDeviceProcAddr( device, "vkEndCommandBuffer" ); 1686 vkResetCommandBuffer = cast( PFN_vkResetCommandBuffer ) vkGetDeviceProcAddr( device, "vkResetCommandBuffer" ); 1687 vkCmdBindPipeline = cast( PFN_vkCmdBindPipeline ) vkGetDeviceProcAddr( device, "vkCmdBindPipeline" ); 1688 vkCmdSetViewport = cast( PFN_vkCmdSetViewport ) vkGetDeviceProcAddr( device, "vkCmdSetViewport" ); 1689 vkCmdSetScissor = cast( PFN_vkCmdSetScissor ) vkGetDeviceProcAddr( device, "vkCmdSetScissor" ); 1690 vkCmdSetLineWidth = cast( PFN_vkCmdSetLineWidth ) vkGetDeviceProcAddr( device, "vkCmdSetLineWidth" ); 1691 vkCmdSetDepthBias = cast( PFN_vkCmdSetDepthBias ) vkGetDeviceProcAddr( device, "vkCmdSetDepthBias" ); 1692 vkCmdSetBlendConstants = cast( PFN_vkCmdSetBlendConstants ) vkGetDeviceProcAddr( device, "vkCmdSetBlendConstants" ); 1693 vkCmdSetDepthBounds = cast( PFN_vkCmdSetDepthBounds ) vkGetDeviceProcAddr( device, "vkCmdSetDepthBounds" ); 1694 vkCmdSetStencilCompareMask = cast( PFN_vkCmdSetStencilCompareMask ) vkGetDeviceProcAddr( device, "vkCmdSetStencilCompareMask" ); 1695 vkCmdSetStencilWriteMask = cast( PFN_vkCmdSetStencilWriteMask ) vkGetDeviceProcAddr( device, "vkCmdSetStencilWriteMask" ); 1696 vkCmdSetStencilReference = cast( PFN_vkCmdSetStencilReference ) vkGetDeviceProcAddr( device, "vkCmdSetStencilReference" ); 1697 vkCmdBindDescriptorSets = cast( PFN_vkCmdBindDescriptorSets ) vkGetDeviceProcAddr( device, "vkCmdBindDescriptorSets" ); 1698 vkCmdBindIndexBuffer = cast( PFN_vkCmdBindIndexBuffer ) vkGetDeviceProcAddr( device, "vkCmdBindIndexBuffer" ); 1699 vkCmdBindVertexBuffers = cast( PFN_vkCmdBindVertexBuffers ) vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers" ); 1700 vkCmdDraw = cast( PFN_vkCmdDraw ) vkGetDeviceProcAddr( device, "vkCmdDraw" ); 1701 vkCmdDrawIndexed = cast( PFN_vkCmdDrawIndexed ) vkGetDeviceProcAddr( device, "vkCmdDrawIndexed" ); 1702 vkCmdDrawIndirect = cast( PFN_vkCmdDrawIndirect ) vkGetDeviceProcAddr( device, "vkCmdDrawIndirect" ); 1703 vkCmdDrawIndexedIndirect = cast( PFN_vkCmdDrawIndexedIndirect ) vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirect" ); 1704 vkCmdDispatch = cast( PFN_vkCmdDispatch ) vkGetDeviceProcAddr( device, "vkCmdDispatch" ); 1705 vkCmdDispatchIndirect = cast( PFN_vkCmdDispatchIndirect ) vkGetDeviceProcAddr( device, "vkCmdDispatchIndirect" ); 1706 vkCmdCopyBuffer = cast( PFN_vkCmdCopyBuffer ) vkGetDeviceProcAddr( device, "vkCmdCopyBuffer" ); 1707 vkCmdCopyImage = cast( PFN_vkCmdCopyImage ) vkGetDeviceProcAddr( device, "vkCmdCopyImage" ); 1708 vkCmdBlitImage = cast( PFN_vkCmdBlitImage ) vkGetDeviceProcAddr( device, "vkCmdBlitImage" ); 1709 vkCmdCopyBufferToImage = cast( PFN_vkCmdCopyBufferToImage ) vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage" ); 1710 vkCmdCopyImageToBuffer = cast( PFN_vkCmdCopyImageToBuffer ) vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer" ); 1711 vkCmdUpdateBuffer = cast( PFN_vkCmdUpdateBuffer ) vkGetDeviceProcAddr( device, "vkCmdUpdateBuffer" ); 1712 vkCmdFillBuffer = cast( PFN_vkCmdFillBuffer ) vkGetDeviceProcAddr( device, "vkCmdFillBuffer" ); 1713 vkCmdClearColorImage = cast( PFN_vkCmdClearColorImage ) vkGetDeviceProcAddr( device, "vkCmdClearColorImage" ); 1714 vkCmdClearDepthStencilImage = cast( PFN_vkCmdClearDepthStencilImage ) vkGetDeviceProcAddr( device, "vkCmdClearDepthStencilImage" ); 1715 vkCmdClearAttachments = cast( PFN_vkCmdClearAttachments ) vkGetDeviceProcAddr( device, "vkCmdClearAttachments" ); 1716 vkCmdResolveImage = cast( PFN_vkCmdResolveImage ) vkGetDeviceProcAddr( device, "vkCmdResolveImage" ); 1717 vkCmdSetEvent = cast( PFN_vkCmdSetEvent ) vkGetDeviceProcAddr( device, "vkCmdSetEvent" ); 1718 vkCmdResetEvent = cast( PFN_vkCmdResetEvent ) vkGetDeviceProcAddr( device, "vkCmdResetEvent" ); 1719 vkCmdWaitEvents = cast( PFN_vkCmdWaitEvents ) vkGetDeviceProcAddr( device, "vkCmdWaitEvents" ); 1720 vkCmdPipelineBarrier = cast( PFN_vkCmdPipelineBarrier ) vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier" ); 1721 vkCmdBeginQuery = cast( PFN_vkCmdBeginQuery ) vkGetDeviceProcAddr( device, "vkCmdBeginQuery" ); 1722 vkCmdEndQuery = cast( PFN_vkCmdEndQuery ) vkGetDeviceProcAddr( device, "vkCmdEndQuery" ); 1723 vkCmdResetQueryPool = cast( PFN_vkCmdResetQueryPool ) vkGetDeviceProcAddr( device, "vkCmdResetQueryPool" ); 1724 vkCmdWriteTimestamp = cast( PFN_vkCmdWriteTimestamp ) vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp" ); 1725 vkCmdCopyQueryPoolResults = cast( PFN_vkCmdCopyQueryPoolResults ) vkGetDeviceProcAddr( device, "vkCmdCopyQueryPoolResults" ); 1726 vkCmdPushConstants = cast( PFN_vkCmdPushConstants ) vkGetDeviceProcAddr( device, "vkCmdPushConstants" ); 1727 vkCmdBeginRenderPass = cast( PFN_vkCmdBeginRenderPass ) vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass" ); 1728 vkCmdNextSubpass = cast( PFN_vkCmdNextSubpass ) vkGetDeviceProcAddr( device, "vkCmdNextSubpass" ); 1729 vkCmdEndRenderPass = cast( PFN_vkCmdEndRenderPass ) vkGetDeviceProcAddr( device, "vkCmdEndRenderPass" ); 1730 vkCmdExecuteCommands = cast( PFN_vkCmdExecuteCommands ) vkGetDeviceProcAddr( device, "vkCmdExecuteCommands" ); 1731 1732 // VK_VERSION_1_1 1733 vkBindBufferMemory2 = cast( PFN_vkBindBufferMemory2 ) vkGetDeviceProcAddr( device, "vkBindBufferMemory2" ); 1734 vkBindImageMemory2 = cast( PFN_vkBindImageMemory2 ) vkGetDeviceProcAddr( device, "vkBindImageMemory2" ); 1735 vkGetDeviceGroupPeerMemoryFeatures = cast( PFN_vkGetDeviceGroupPeerMemoryFeatures ) vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeatures" ); 1736 vkCmdSetDeviceMask = cast( PFN_vkCmdSetDeviceMask ) vkGetDeviceProcAddr( device, "vkCmdSetDeviceMask" ); 1737 vkCmdDispatchBase = cast( PFN_vkCmdDispatchBase ) vkGetDeviceProcAddr( device, "vkCmdDispatchBase" ); 1738 vkGetImageMemoryRequirements2 = cast( PFN_vkGetImageMemoryRequirements2 ) vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2" ); 1739 vkGetBufferMemoryRequirements2 = cast( PFN_vkGetBufferMemoryRequirements2 ) vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2" ); 1740 vkGetImageSparseMemoryRequirements2 = cast( PFN_vkGetImageSparseMemoryRequirements2 ) vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2" ); 1741 vkTrimCommandPool = cast( PFN_vkTrimCommandPool ) vkGetDeviceProcAddr( device, "vkTrimCommandPool" ); 1742 vkGetDeviceQueue2 = cast( PFN_vkGetDeviceQueue2 ) vkGetDeviceProcAddr( device, "vkGetDeviceQueue2" ); 1743 vkCreateSamplerYcbcrConversion = cast( PFN_vkCreateSamplerYcbcrConversion ) vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversion" ); 1744 vkDestroySamplerYcbcrConversion = cast( PFN_vkDestroySamplerYcbcrConversion ) vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversion" ); 1745 vkCreateDescriptorUpdateTemplate = cast( PFN_vkCreateDescriptorUpdateTemplate ) vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplate" ); 1746 vkDestroyDescriptorUpdateTemplate = cast( PFN_vkDestroyDescriptorUpdateTemplate ) vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplate" ); 1747 vkUpdateDescriptorSetWithTemplate = cast( PFN_vkUpdateDescriptorSetWithTemplate ) vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplate" ); 1748 vkGetDescriptorSetLayoutSupport = cast( PFN_vkGetDescriptorSetLayoutSupport ) vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupport" ); 1749 1750 // VK_VERSION_1_2 1751 vkCmdDrawIndirectCount = cast( PFN_vkCmdDrawIndirectCount ) vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCount" ); 1752 vkCmdDrawIndexedIndirectCount = cast( PFN_vkCmdDrawIndexedIndirectCount ) vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCount" ); 1753 vkCreateRenderPass2 = cast( PFN_vkCreateRenderPass2 ) vkGetDeviceProcAddr( device, "vkCreateRenderPass2" ); 1754 vkCmdBeginRenderPass2 = cast( PFN_vkCmdBeginRenderPass2 ) vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2" ); 1755 vkCmdNextSubpass2 = cast( PFN_vkCmdNextSubpass2 ) vkGetDeviceProcAddr( device, "vkCmdNextSubpass2" ); 1756 vkCmdEndRenderPass2 = cast( PFN_vkCmdEndRenderPass2 ) vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2" ); 1757 vkResetQueryPool = cast( PFN_vkResetQueryPool ) vkGetDeviceProcAddr( device, "vkResetQueryPool" ); 1758 vkGetSemaphoreCounterValue = cast( PFN_vkGetSemaphoreCounterValue ) vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValue" ); 1759 vkWaitSemaphores = cast( PFN_vkWaitSemaphores ) vkGetDeviceProcAddr( device, "vkWaitSemaphores" ); 1760 vkSignalSemaphore = cast( PFN_vkSignalSemaphore ) vkGetDeviceProcAddr( device, "vkSignalSemaphore" ); 1761 vkGetBufferDeviceAddress = cast( PFN_vkGetBufferDeviceAddress ) vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddress" ); 1762 vkGetBufferOpaqueCaptureAddress = cast( PFN_vkGetBufferOpaqueCaptureAddress ) vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddress" ); 1763 vkGetDeviceMemoryOpaqueCaptureAddress = cast( PFN_vkGetDeviceMemoryOpaqueCaptureAddress ) vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddress" ); 1764 1765 // VK_KHR_swapchain 1766 vkCreateSwapchainKHR = cast( PFN_vkCreateSwapchainKHR ) vkGetDeviceProcAddr( device, "vkCreateSwapchainKHR" ); 1767 vkDestroySwapchainKHR = cast( PFN_vkDestroySwapchainKHR ) vkGetDeviceProcAddr( device, "vkDestroySwapchainKHR" ); 1768 vkGetSwapchainImagesKHR = cast( PFN_vkGetSwapchainImagesKHR ) vkGetDeviceProcAddr( device, "vkGetSwapchainImagesKHR" ); 1769 vkAcquireNextImageKHR = cast( PFN_vkAcquireNextImageKHR ) vkGetDeviceProcAddr( device, "vkAcquireNextImageKHR" ); 1770 vkQueuePresentKHR = cast( PFN_vkQueuePresentKHR ) vkGetDeviceProcAddr( device, "vkQueuePresentKHR" ); 1771 vkGetDeviceGroupPresentCapabilitiesKHR = cast( PFN_vkGetDeviceGroupPresentCapabilitiesKHR ) vkGetDeviceProcAddr( device, "vkGetDeviceGroupPresentCapabilitiesKHR" ); 1772 vkGetDeviceGroupSurfacePresentModesKHR = cast( PFN_vkGetDeviceGroupSurfacePresentModesKHR ) vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModesKHR" ); 1773 vkAcquireNextImage2KHR = cast( PFN_vkAcquireNextImage2KHR ) vkGetDeviceProcAddr( device, "vkAcquireNextImage2KHR" ); 1774 1775 // VK_KHR_display_swapchain 1776 vkCreateSharedSwapchainsKHR = cast( PFN_vkCreateSharedSwapchainsKHR ) vkGetDeviceProcAddr( device, "vkCreateSharedSwapchainsKHR" ); 1777 1778 // VK_KHR_external_memory_fd 1779 vkGetMemoryFdKHR = cast( PFN_vkGetMemoryFdKHR ) vkGetDeviceProcAddr( device, "vkGetMemoryFdKHR" ); 1780 vkGetMemoryFdPropertiesKHR = cast( PFN_vkGetMemoryFdPropertiesKHR ) vkGetDeviceProcAddr( device, "vkGetMemoryFdPropertiesKHR" ); 1781 1782 // VK_KHR_external_semaphore_fd 1783 vkImportSemaphoreFdKHR = cast( PFN_vkImportSemaphoreFdKHR ) vkGetDeviceProcAddr( device, "vkImportSemaphoreFdKHR" ); 1784 vkGetSemaphoreFdKHR = cast( PFN_vkGetSemaphoreFdKHR ) vkGetDeviceProcAddr( device, "vkGetSemaphoreFdKHR" ); 1785 1786 // VK_KHR_push_descriptor 1787 vkCmdPushDescriptorSetKHR = cast( PFN_vkCmdPushDescriptorSetKHR ) vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetKHR" ); 1788 vkCmdPushDescriptorSetWithTemplateKHR = cast( PFN_vkCmdPushDescriptorSetWithTemplateKHR ) vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetWithTemplateKHR" ); 1789 1790 // VK_KHR_shared_presentable_image 1791 vkGetSwapchainStatusKHR = cast( PFN_vkGetSwapchainStatusKHR ) vkGetDeviceProcAddr( device, "vkGetSwapchainStatusKHR" ); 1792 1793 // VK_KHR_external_fence_fd 1794 vkImportFenceFdKHR = cast( PFN_vkImportFenceFdKHR ) vkGetDeviceProcAddr( device, "vkImportFenceFdKHR" ); 1795 vkGetFenceFdKHR = cast( PFN_vkGetFenceFdKHR ) vkGetDeviceProcAddr( device, "vkGetFenceFdKHR" ); 1796 1797 // VK_KHR_performance_query 1798 vkAcquireProfilingLockKHR = cast( PFN_vkAcquireProfilingLockKHR ) vkGetDeviceProcAddr( device, "vkAcquireProfilingLockKHR" ); 1799 vkReleaseProfilingLockKHR = cast( PFN_vkReleaseProfilingLockKHR ) vkGetDeviceProcAddr( device, "vkReleaseProfilingLockKHR" ); 1800 1801 // VK_KHR_fragment_shading_rate 1802 vkCmdSetFragmentShadingRateKHR = cast( PFN_vkCmdSetFragmentShadingRateKHR ) vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateKHR" ); 1803 1804 // VK_KHR_deferred_host_operations 1805 vkCreateDeferredOperationKHR = cast( PFN_vkCreateDeferredOperationKHR ) vkGetDeviceProcAddr( device, "vkCreateDeferredOperationKHR" ); 1806 vkDestroyDeferredOperationKHR = cast( PFN_vkDestroyDeferredOperationKHR ) vkGetDeviceProcAddr( device, "vkDestroyDeferredOperationKHR" ); 1807 vkGetDeferredOperationMaxConcurrencyKHR = cast( PFN_vkGetDeferredOperationMaxConcurrencyKHR ) vkGetDeviceProcAddr( device, "vkGetDeferredOperationMaxConcurrencyKHR" ); 1808 vkGetDeferredOperationResultKHR = cast( PFN_vkGetDeferredOperationResultKHR ) vkGetDeviceProcAddr( device, "vkGetDeferredOperationResultKHR" ); 1809 vkDeferredOperationJoinKHR = cast( PFN_vkDeferredOperationJoinKHR ) vkGetDeviceProcAddr( device, "vkDeferredOperationJoinKHR" ); 1810 1811 // VK_KHR_pipeline_executable_properties 1812 vkGetPipelineExecutablePropertiesKHR = cast( PFN_vkGetPipelineExecutablePropertiesKHR ) vkGetDeviceProcAddr( device, "vkGetPipelineExecutablePropertiesKHR" ); 1813 vkGetPipelineExecutableStatisticsKHR = cast( PFN_vkGetPipelineExecutableStatisticsKHR ) vkGetDeviceProcAddr( device, "vkGetPipelineExecutableStatisticsKHR" ); 1814 vkGetPipelineExecutableInternalRepresentationsKHR = cast( PFN_vkGetPipelineExecutableInternalRepresentationsKHR ) vkGetDeviceProcAddr( device, "vkGetPipelineExecutableInternalRepresentationsKHR" ); 1815 1816 // VK_KHR_copy_commands2 1817 vkCmdCopyBuffer2KHR = cast( PFN_vkCmdCopyBuffer2KHR ) vkGetDeviceProcAddr( device, "vkCmdCopyBuffer2KHR" ); 1818 vkCmdCopyImage2KHR = cast( PFN_vkCmdCopyImage2KHR ) vkGetDeviceProcAddr( device, "vkCmdCopyImage2KHR" ); 1819 vkCmdCopyBufferToImage2KHR = cast( PFN_vkCmdCopyBufferToImage2KHR ) vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage2KHR" ); 1820 vkCmdCopyImageToBuffer2KHR = cast( PFN_vkCmdCopyImageToBuffer2KHR ) vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer2KHR" ); 1821 vkCmdBlitImage2KHR = cast( PFN_vkCmdBlitImage2KHR ) vkGetDeviceProcAddr( device, "vkCmdBlitImage2KHR" ); 1822 vkCmdResolveImage2KHR = cast( PFN_vkCmdResolveImage2KHR ) vkGetDeviceProcAddr( device, "vkCmdResolveImage2KHR" ); 1823 1824 // VK_EXT_debug_marker 1825 vkDebugMarkerSetObjectTagEXT = cast( PFN_vkDebugMarkerSetObjectTagEXT ) vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectTagEXT" ); 1826 vkDebugMarkerSetObjectNameEXT = cast( PFN_vkDebugMarkerSetObjectNameEXT ) vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectNameEXT" ); 1827 vkCmdDebugMarkerBeginEXT = cast( PFN_vkCmdDebugMarkerBeginEXT ) vkGetDeviceProcAddr( device, "vkCmdDebugMarkerBeginEXT" ); 1828 vkCmdDebugMarkerEndEXT = cast( PFN_vkCmdDebugMarkerEndEXT ) vkGetDeviceProcAddr( device, "vkCmdDebugMarkerEndEXT" ); 1829 vkCmdDebugMarkerInsertEXT = cast( PFN_vkCmdDebugMarkerInsertEXT ) vkGetDeviceProcAddr( device, "vkCmdDebugMarkerInsertEXT" ); 1830 1831 // VK_EXT_transform_feedback 1832 vkCmdBindTransformFeedbackBuffersEXT = cast( PFN_vkCmdBindTransformFeedbackBuffersEXT ) vkGetDeviceProcAddr( device, "vkCmdBindTransformFeedbackBuffersEXT" ); 1833 vkCmdBeginTransformFeedbackEXT = cast( PFN_vkCmdBeginTransformFeedbackEXT ) vkGetDeviceProcAddr( device, "vkCmdBeginTransformFeedbackEXT" ); 1834 vkCmdEndTransformFeedbackEXT = cast( PFN_vkCmdEndTransformFeedbackEXT ) vkGetDeviceProcAddr( device, "vkCmdEndTransformFeedbackEXT" ); 1835 vkCmdBeginQueryIndexedEXT = cast( PFN_vkCmdBeginQueryIndexedEXT ) vkGetDeviceProcAddr( device, "vkCmdBeginQueryIndexedEXT" ); 1836 vkCmdEndQueryIndexedEXT = cast( PFN_vkCmdEndQueryIndexedEXT ) vkGetDeviceProcAddr( device, "vkCmdEndQueryIndexedEXT" ); 1837 vkCmdDrawIndirectByteCountEXT = cast( PFN_vkCmdDrawIndirectByteCountEXT ) vkGetDeviceProcAddr( device, "vkCmdDrawIndirectByteCountEXT" ); 1838 1839 // VK_NVX_image_view_handle 1840 vkGetImageViewHandleNVX = cast( PFN_vkGetImageViewHandleNVX ) vkGetDeviceProcAddr( device, "vkGetImageViewHandleNVX" ); 1841 vkGetImageViewAddressNVX = cast( PFN_vkGetImageViewAddressNVX ) vkGetDeviceProcAddr( device, "vkGetImageViewAddressNVX" ); 1842 1843 // VK_AMD_shader_info 1844 vkGetShaderInfoAMD = cast( PFN_vkGetShaderInfoAMD ) vkGetDeviceProcAddr( device, "vkGetShaderInfoAMD" ); 1845 1846 // VK_EXT_conditional_rendering 1847 vkCmdBeginConditionalRenderingEXT = cast( PFN_vkCmdBeginConditionalRenderingEXT ) vkGetDeviceProcAddr( device, "vkCmdBeginConditionalRenderingEXT" ); 1848 vkCmdEndConditionalRenderingEXT = cast( PFN_vkCmdEndConditionalRenderingEXT ) vkGetDeviceProcAddr( device, "vkCmdEndConditionalRenderingEXT" ); 1849 1850 // VK_NV_clip_space_w_scaling 1851 vkCmdSetViewportWScalingNV = cast( PFN_vkCmdSetViewportWScalingNV ) vkGetDeviceProcAddr( device, "vkCmdSetViewportWScalingNV" ); 1852 1853 // VK_EXT_display_control 1854 vkDisplayPowerControlEXT = cast( PFN_vkDisplayPowerControlEXT ) vkGetDeviceProcAddr( device, "vkDisplayPowerControlEXT" ); 1855 vkRegisterDeviceEventEXT = cast( PFN_vkRegisterDeviceEventEXT ) vkGetDeviceProcAddr( device, "vkRegisterDeviceEventEXT" ); 1856 vkRegisterDisplayEventEXT = cast( PFN_vkRegisterDisplayEventEXT ) vkGetDeviceProcAddr( device, "vkRegisterDisplayEventEXT" ); 1857 vkGetSwapchainCounterEXT = cast( PFN_vkGetSwapchainCounterEXT ) vkGetDeviceProcAddr( device, "vkGetSwapchainCounterEXT" ); 1858 1859 // VK_GOOGLE_display_timing 1860 vkGetRefreshCycleDurationGOOGLE = cast( PFN_vkGetRefreshCycleDurationGOOGLE ) vkGetDeviceProcAddr( device, "vkGetRefreshCycleDurationGOOGLE" ); 1861 vkGetPastPresentationTimingGOOGLE = cast( PFN_vkGetPastPresentationTimingGOOGLE ) vkGetDeviceProcAddr( device, "vkGetPastPresentationTimingGOOGLE" ); 1862 1863 // VK_EXT_discard_rectangles 1864 vkCmdSetDiscardRectangleEXT = cast( PFN_vkCmdSetDiscardRectangleEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDiscardRectangleEXT" ); 1865 1866 // VK_EXT_hdr_metadata 1867 vkSetHdrMetadataEXT = cast( PFN_vkSetHdrMetadataEXT ) vkGetDeviceProcAddr( device, "vkSetHdrMetadataEXT" ); 1868 1869 // VK_EXT_debug_utils 1870 vkSetDebugUtilsObjectNameEXT = cast( PFN_vkSetDebugUtilsObjectNameEXT ) vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectNameEXT" ); 1871 vkSetDebugUtilsObjectTagEXT = cast( PFN_vkSetDebugUtilsObjectTagEXT ) vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectTagEXT" ); 1872 vkQueueBeginDebugUtilsLabelEXT = cast( PFN_vkQueueBeginDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkQueueBeginDebugUtilsLabelEXT" ); 1873 vkQueueEndDebugUtilsLabelEXT = cast( PFN_vkQueueEndDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkQueueEndDebugUtilsLabelEXT" ); 1874 vkQueueInsertDebugUtilsLabelEXT = cast( PFN_vkQueueInsertDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkQueueInsertDebugUtilsLabelEXT" ); 1875 vkCmdBeginDebugUtilsLabelEXT = cast( PFN_vkCmdBeginDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkCmdBeginDebugUtilsLabelEXT" ); 1876 vkCmdEndDebugUtilsLabelEXT = cast( PFN_vkCmdEndDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkCmdEndDebugUtilsLabelEXT" ); 1877 vkCmdInsertDebugUtilsLabelEXT = cast( PFN_vkCmdInsertDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkCmdInsertDebugUtilsLabelEXT" ); 1878 1879 // VK_EXT_sample_locations 1880 vkCmdSetSampleLocationsEXT = cast( PFN_vkCmdSetSampleLocationsEXT ) vkGetDeviceProcAddr( device, "vkCmdSetSampleLocationsEXT" ); 1881 1882 // VK_EXT_image_drm_format_modifier 1883 vkGetImageDrmFormatModifierPropertiesEXT = cast( PFN_vkGetImageDrmFormatModifierPropertiesEXT ) vkGetDeviceProcAddr( device, "vkGetImageDrmFormatModifierPropertiesEXT" ); 1884 1885 // VK_EXT_validation_cache 1886 vkCreateValidationCacheEXT = cast( PFN_vkCreateValidationCacheEXT ) vkGetDeviceProcAddr( device, "vkCreateValidationCacheEXT" ); 1887 vkDestroyValidationCacheEXT = cast( PFN_vkDestroyValidationCacheEXT ) vkGetDeviceProcAddr( device, "vkDestroyValidationCacheEXT" ); 1888 vkMergeValidationCachesEXT = cast( PFN_vkMergeValidationCachesEXT ) vkGetDeviceProcAddr( device, "vkMergeValidationCachesEXT" ); 1889 vkGetValidationCacheDataEXT = cast( PFN_vkGetValidationCacheDataEXT ) vkGetDeviceProcAddr( device, "vkGetValidationCacheDataEXT" ); 1890 1891 // VK_NV_shading_rate_image 1892 vkCmdBindShadingRateImageNV = cast( PFN_vkCmdBindShadingRateImageNV ) vkGetDeviceProcAddr( device, "vkCmdBindShadingRateImageNV" ); 1893 vkCmdSetViewportShadingRatePaletteNV = cast( PFN_vkCmdSetViewportShadingRatePaletteNV ) vkGetDeviceProcAddr( device, "vkCmdSetViewportShadingRatePaletteNV" ); 1894 vkCmdSetCoarseSampleOrderNV = cast( PFN_vkCmdSetCoarseSampleOrderNV ) vkGetDeviceProcAddr( device, "vkCmdSetCoarseSampleOrderNV" ); 1895 1896 // VK_NV_ray_tracing 1897 vkCreateAccelerationStructureNV = cast( PFN_vkCreateAccelerationStructureNV ) vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureNV" ); 1898 vkDestroyAccelerationStructureNV = cast( PFN_vkDestroyAccelerationStructureNV ) vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureNV" ); 1899 vkGetAccelerationStructureMemoryRequirementsNV = cast( PFN_vkGetAccelerationStructureMemoryRequirementsNV ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureMemoryRequirementsNV" ); 1900 vkBindAccelerationStructureMemoryNV = cast( PFN_vkBindAccelerationStructureMemoryNV ) vkGetDeviceProcAddr( device, "vkBindAccelerationStructureMemoryNV" ); 1901 vkCmdBuildAccelerationStructureNV = cast( PFN_vkCmdBuildAccelerationStructureNV ) vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructureNV" ); 1902 vkCmdCopyAccelerationStructureNV = cast( PFN_vkCmdCopyAccelerationStructureNV ) vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureNV" ); 1903 vkCmdTraceRaysNV = cast( PFN_vkCmdTraceRaysNV ) vkGetDeviceProcAddr( device, "vkCmdTraceRaysNV" ); 1904 vkCreateRayTracingPipelinesNV = cast( PFN_vkCreateRayTracingPipelinesNV ) vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesNV" ); 1905 vkGetRayTracingShaderGroupHandlesKHR = cast( PFN_vkGetRayTracingShaderGroupHandlesKHR ) vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesKHR" ); 1906 vkGetAccelerationStructureHandleNV = cast( PFN_vkGetAccelerationStructureHandleNV ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureHandleNV" ); 1907 vkCmdWriteAccelerationStructuresPropertiesNV = cast( PFN_vkCmdWriteAccelerationStructuresPropertiesNV ) vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesNV" ); 1908 vkCompileDeferredNV = cast( PFN_vkCompileDeferredNV ) vkGetDeviceProcAddr( device, "vkCompileDeferredNV" ); 1909 1910 // VK_EXT_external_memory_host 1911 vkGetMemoryHostPointerPropertiesEXT = cast( PFN_vkGetMemoryHostPointerPropertiesEXT ) vkGetDeviceProcAddr( device, "vkGetMemoryHostPointerPropertiesEXT" ); 1912 1913 // VK_AMD_buffer_marker 1914 vkCmdWriteBufferMarkerAMD = cast( PFN_vkCmdWriteBufferMarkerAMD ) vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarkerAMD" ); 1915 1916 // VK_EXT_calibrated_timestamps 1917 vkGetCalibratedTimestampsEXT = cast( PFN_vkGetCalibratedTimestampsEXT ) vkGetDeviceProcAddr( device, "vkGetCalibratedTimestampsEXT" ); 1918 1919 // VK_NV_mesh_shader 1920 vkCmdDrawMeshTasksNV = cast( PFN_vkCmdDrawMeshTasksNV ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksNV" ); 1921 vkCmdDrawMeshTasksIndirectNV = cast( PFN_vkCmdDrawMeshTasksIndirectNV ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectNV" ); 1922 vkCmdDrawMeshTasksIndirectCountNV = cast( PFN_vkCmdDrawMeshTasksIndirectCountNV ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectCountNV" ); 1923 1924 // VK_NV_scissor_exclusive 1925 vkCmdSetExclusiveScissorNV = cast( PFN_vkCmdSetExclusiveScissorNV ) vkGetDeviceProcAddr( device, "vkCmdSetExclusiveScissorNV" ); 1926 1927 // VK_NV_device_diagnostic_checkpoints 1928 vkCmdSetCheckpointNV = cast( PFN_vkCmdSetCheckpointNV ) vkGetDeviceProcAddr( device, "vkCmdSetCheckpointNV" ); 1929 vkGetQueueCheckpointDataNV = cast( PFN_vkGetQueueCheckpointDataNV ) vkGetDeviceProcAddr( device, "vkGetQueueCheckpointDataNV" ); 1930 1931 // VK_INTEL_performance_query 1932 vkInitializePerformanceApiINTEL = cast( PFN_vkInitializePerformanceApiINTEL ) vkGetDeviceProcAddr( device, "vkInitializePerformanceApiINTEL" ); 1933 vkUninitializePerformanceApiINTEL = cast( PFN_vkUninitializePerformanceApiINTEL ) vkGetDeviceProcAddr( device, "vkUninitializePerformanceApiINTEL" ); 1934 vkCmdSetPerformanceMarkerINTEL = cast( PFN_vkCmdSetPerformanceMarkerINTEL ) vkGetDeviceProcAddr( device, "vkCmdSetPerformanceMarkerINTEL" ); 1935 vkCmdSetPerformanceStreamMarkerINTEL = cast( PFN_vkCmdSetPerformanceStreamMarkerINTEL ) vkGetDeviceProcAddr( device, "vkCmdSetPerformanceStreamMarkerINTEL" ); 1936 vkCmdSetPerformanceOverrideINTEL = cast( PFN_vkCmdSetPerformanceOverrideINTEL ) vkGetDeviceProcAddr( device, "vkCmdSetPerformanceOverrideINTEL" ); 1937 vkAcquirePerformanceConfigurationINTEL = cast( PFN_vkAcquirePerformanceConfigurationINTEL ) vkGetDeviceProcAddr( device, "vkAcquirePerformanceConfigurationINTEL" ); 1938 vkReleasePerformanceConfigurationINTEL = cast( PFN_vkReleasePerformanceConfigurationINTEL ) vkGetDeviceProcAddr( device, "vkReleasePerformanceConfigurationINTEL" ); 1939 vkQueueSetPerformanceConfigurationINTEL = cast( PFN_vkQueueSetPerformanceConfigurationINTEL ) vkGetDeviceProcAddr( device, "vkQueueSetPerformanceConfigurationINTEL" ); 1940 vkGetPerformanceParameterINTEL = cast( PFN_vkGetPerformanceParameterINTEL ) vkGetDeviceProcAddr( device, "vkGetPerformanceParameterINTEL" ); 1941 1942 // VK_AMD_display_native_hdr 1943 vkSetLocalDimmingAMD = cast( PFN_vkSetLocalDimmingAMD ) vkGetDeviceProcAddr( device, "vkSetLocalDimmingAMD" ); 1944 1945 // VK_EXT_line_rasterization 1946 vkCmdSetLineStippleEXT = cast( PFN_vkCmdSetLineStippleEXT ) vkGetDeviceProcAddr( device, "vkCmdSetLineStippleEXT" ); 1947 1948 // VK_EXT_extended_dynamic_state 1949 vkCmdSetCullModeEXT = cast( PFN_vkCmdSetCullModeEXT ) vkGetDeviceProcAddr( device, "vkCmdSetCullModeEXT" ); 1950 vkCmdSetFrontFaceEXT = cast( PFN_vkCmdSetFrontFaceEXT ) vkGetDeviceProcAddr( device, "vkCmdSetFrontFaceEXT" ); 1951 vkCmdSetPrimitiveTopologyEXT = cast( PFN_vkCmdSetPrimitiveTopologyEXT ) vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveTopologyEXT" ); 1952 vkCmdSetViewportWithCountEXT = cast( PFN_vkCmdSetViewportWithCountEXT ) vkGetDeviceProcAddr( device, "vkCmdSetViewportWithCountEXT" ); 1953 vkCmdSetScissorWithCountEXT = cast( PFN_vkCmdSetScissorWithCountEXT ) vkGetDeviceProcAddr( device, "vkCmdSetScissorWithCountEXT" ); 1954 vkCmdBindVertexBuffers2EXT = cast( PFN_vkCmdBindVertexBuffers2EXT ) vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers2EXT" ); 1955 vkCmdSetDepthTestEnableEXT = cast( PFN_vkCmdSetDepthTestEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDepthTestEnableEXT" ); 1956 vkCmdSetDepthWriteEnableEXT = cast( PFN_vkCmdSetDepthWriteEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDepthWriteEnableEXT" ); 1957 vkCmdSetDepthCompareOpEXT = cast( PFN_vkCmdSetDepthCompareOpEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDepthCompareOpEXT" ); 1958 vkCmdSetDepthBoundsTestEnableEXT = cast( PFN_vkCmdSetDepthBoundsTestEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDepthBoundsTestEnableEXT" ); 1959 vkCmdSetStencilTestEnableEXT = cast( PFN_vkCmdSetStencilTestEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetStencilTestEnableEXT" ); 1960 vkCmdSetStencilOpEXT = cast( PFN_vkCmdSetStencilOpEXT ) vkGetDeviceProcAddr( device, "vkCmdSetStencilOpEXT" ); 1961 1962 // VK_NV_device_generated_commands 1963 vkGetGeneratedCommandsMemoryRequirementsNV = cast( PFN_vkGetGeneratedCommandsMemoryRequirementsNV ) vkGetDeviceProcAddr( device, "vkGetGeneratedCommandsMemoryRequirementsNV" ); 1964 vkCmdPreprocessGeneratedCommandsNV = cast( PFN_vkCmdPreprocessGeneratedCommandsNV ) vkGetDeviceProcAddr( device, "vkCmdPreprocessGeneratedCommandsNV" ); 1965 vkCmdExecuteGeneratedCommandsNV = cast( PFN_vkCmdExecuteGeneratedCommandsNV ) vkGetDeviceProcAddr( device, "vkCmdExecuteGeneratedCommandsNV" ); 1966 vkCmdBindPipelineShaderGroupNV = cast( PFN_vkCmdBindPipelineShaderGroupNV ) vkGetDeviceProcAddr( device, "vkCmdBindPipelineShaderGroupNV" ); 1967 vkCreateIndirectCommandsLayoutNV = cast( PFN_vkCreateIndirectCommandsLayoutNV ) vkGetDeviceProcAddr( device, "vkCreateIndirectCommandsLayoutNV" ); 1968 vkDestroyIndirectCommandsLayoutNV = cast( PFN_vkDestroyIndirectCommandsLayoutNV ) vkGetDeviceProcAddr( device, "vkDestroyIndirectCommandsLayoutNV" ); 1969 1970 // VK_EXT_private_data 1971 vkCreatePrivateDataSlotEXT = cast( PFN_vkCreatePrivateDataSlotEXT ) vkGetDeviceProcAddr( device, "vkCreatePrivateDataSlotEXT" ); 1972 vkDestroyPrivateDataSlotEXT = cast( PFN_vkDestroyPrivateDataSlotEXT ) vkGetDeviceProcAddr( device, "vkDestroyPrivateDataSlotEXT" ); 1973 vkSetPrivateDataEXT = cast( PFN_vkSetPrivateDataEXT ) vkGetDeviceProcAddr( device, "vkSetPrivateDataEXT" ); 1974 vkGetPrivateDataEXT = cast( PFN_vkGetPrivateDataEXT ) vkGetDeviceProcAddr( device, "vkGetPrivateDataEXT" ); 1975 1976 // VK_NV_fragment_shading_rate_enums 1977 vkCmdSetFragmentShadingRateEnumNV = cast( PFN_vkCmdSetFragmentShadingRateEnumNV ) vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateEnumNV" ); 1978 1979 // VK_KHR_acceleration_structure 1980 vkCreateAccelerationStructureKHR = cast( PFN_vkCreateAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureKHR" ); 1981 vkDestroyAccelerationStructureKHR = cast( PFN_vkDestroyAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureKHR" ); 1982 vkCmdBuildAccelerationStructuresKHR = cast( PFN_vkCmdBuildAccelerationStructuresKHR ) vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresKHR" ); 1983 vkCmdBuildAccelerationStructuresIndirectKHR = cast( PFN_vkCmdBuildAccelerationStructuresIndirectKHR ) vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresIndirectKHR" ); 1984 vkBuildAccelerationStructuresKHR = cast( PFN_vkBuildAccelerationStructuresKHR ) vkGetDeviceProcAddr( device, "vkBuildAccelerationStructuresKHR" ); 1985 vkCopyAccelerationStructureKHR = cast( PFN_vkCopyAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureKHR" ); 1986 vkCopyAccelerationStructureToMemoryKHR = cast( PFN_vkCopyAccelerationStructureToMemoryKHR ) vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureToMemoryKHR" ); 1987 vkCopyMemoryToAccelerationStructureKHR = cast( PFN_vkCopyMemoryToAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCopyMemoryToAccelerationStructureKHR" ); 1988 vkWriteAccelerationStructuresPropertiesKHR = cast( PFN_vkWriteAccelerationStructuresPropertiesKHR ) vkGetDeviceProcAddr( device, "vkWriteAccelerationStructuresPropertiesKHR" ); 1989 vkCmdCopyAccelerationStructureKHR = cast( PFN_vkCmdCopyAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureKHR" ); 1990 vkCmdCopyAccelerationStructureToMemoryKHR = cast( PFN_vkCmdCopyAccelerationStructureToMemoryKHR ) vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureToMemoryKHR" ); 1991 vkCmdCopyMemoryToAccelerationStructureKHR = cast( PFN_vkCmdCopyMemoryToAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCmdCopyMemoryToAccelerationStructureKHR" ); 1992 vkGetAccelerationStructureDeviceAddressKHR = cast( PFN_vkGetAccelerationStructureDeviceAddressKHR ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureDeviceAddressKHR" ); 1993 vkCmdWriteAccelerationStructuresPropertiesKHR = cast( PFN_vkCmdWriteAccelerationStructuresPropertiesKHR ) vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesKHR" ); 1994 vkGetDeviceAccelerationStructureCompatibilityKHR = cast( PFN_vkGetDeviceAccelerationStructureCompatibilityKHR ) vkGetDeviceProcAddr( device, "vkGetDeviceAccelerationStructureCompatibilityKHR" ); 1995 vkGetAccelerationStructureBuildSizesKHR = cast( PFN_vkGetAccelerationStructureBuildSizesKHR ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureBuildSizesKHR" ); 1996 1997 // VK_KHR_ray_tracing_pipeline 1998 vkCmdTraceRaysKHR = cast( PFN_vkCmdTraceRaysKHR ) vkGetDeviceProcAddr( device, "vkCmdTraceRaysKHR" ); 1999 vkCreateRayTracingPipelinesKHR = cast( PFN_vkCreateRayTracingPipelinesKHR ) vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesKHR" ); 2000 vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast( PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR ) vkGetDeviceProcAddr( device, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ); 2001 vkCmdTraceRaysIndirectKHR = cast( PFN_vkCmdTraceRaysIndirectKHR ) vkGetDeviceProcAddr( device, "vkCmdTraceRaysIndirectKHR" ); 2002 vkGetRayTracingShaderGroupStackSizeKHR = cast( PFN_vkGetRayTracingShaderGroupStackSizeKHR ) vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupStackSizeKHR" ); 2003 vkCmdSetRayTracingPipelineStackSizeKHR = cast( PFN_vkCmdSetRayTracingPipelineStackSizeKHR ) vkGetDeviceProcAddr( device, "vkCmdSetRayTracingPipelineStackSizeKHR" ); 2004 } 2005