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_VERSION_1_3 203 alias PFN_vkGetPhysicalDeviceToolProperties = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pToolCount, VkPhysicalDeviceToolProperties* pToolProperties ); 204 alias PFN_vkCreatePrivateDataSlot = VkResult function( VkDevice device, const( VkPrivateDataSlotCreateInfo )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkPrivateDataSlot* pPrivateDataSlot ); 205 alias PFN_vkDestroyPrivateDataSlot = void function( VkDevice device, VkPrivateDataSlot privateDataSlot, const( VkAllocationCallbacks )* pAllocator ); 206 alias PFN_vkSetPrivateData = VkResult function( VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data ); 207 alias PFN_vkGetPrivateData = void function( VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t* pData ); 208 alias PFN_vkCmdSetEvent2 = void function( VkCommandBuffer commandBuffer, VkEvent event, const( VkDependencyInfo )* pDependencyInfo ); 209 alias PFN_vkCmdResetEvent2 = void function( VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags2 stageMask ); 210 alias PFN_vkCmdWaitEvents2 = void function( VkCommandBuffer commandBuffer, uint32_t eventCount, const( VkEvent )* pEvents, const( VkDependencyInfo )* pDependencyInfos ); 211 alias PFN_vkCmdPipelineBarrier2 = void function( VkCommandBuffer commandBuffer, const( VkDependencyInfo )* pDependencyInfo ); 212 alias PFN_vkCmdWriteTimestamp2 = void function( VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage, VkQueryPool queryPool, uint32_t query ); 213 alias PFN_vkQueueSubmit2 = VkResult function( VkQueue queue, uint32_t submitCount, const( VkSubmitInfo2 )* pSubmits, VkFence fence ); 214 alias PFN_vkCmdCopyBuffer2 = void function( VkCommandBuffer commandBuffer, const( VkCopyBufferInfo2 )* pCopyBufferInfo ); 215 alias PFN_vkCmdCopyImage2 = void function( VkCommandBuffer commandBuffer, const( VkCopyImageInfo2 )* pCopyImageInfo ); 216 alias PFN_vkCmdCopyBufferToImage2 = void function( VkCommandBuffer commandBuffer, const( VkCopyBufferToImageInfo2 )* pCopyBufferToImageInfo ); 217 alias PFN_vkCmdCopyImageToBuffer2 = void function( VkCommandBuffer commandBuffer, const( VkCopyImageToBufferInfo2 )* pCopyImageToBufferInfo ); 218 alias PFN_vkCmdBlitImage2 = void function( VkCommandBuffer commandBuffer, const( VkBlitImageInfo2 )* pBlitImageInfo ); 219 alias PFN_vkCmdResolveImage2 = void function( VkCommandBuffer commandBuffer, const( VkResolveImageInfo2 )* pResolveImageInfo ); 220 alias PFN_vkCmdBeginRendering = void function( VkCommandBuffer commandBuffer, const( VkRenderingInfo )* pRenderingInfo ); 221 alias PFN_vkCmdEndRendering = void function( VkCommandBuffer commandBuffer ); 222 alias PFN_vkCmdSetCullMode = void function( VkCommandBuffer commandBuffer, VkCullModeFlags cullMode ); 223 alias PFN_vkCmdSetFrontFace = void function( VkCommandBuffer commandBuffer, VkFrontFace frontFace ); 224 alias PFN_vkCmdSetPrimitiveTopology = void function( VkCommandBuffer commandBuffer, VkPrimitiveTopology primitiveTopology ); 225 alias PFN_vkCmdSetViewportWithCount = void function( VkCommandBuffer commandBuffer, uint32_t viewportCount, const( VkViewport )* pViewports ); 226 alias PFN_vkCmdSetScissorWithCount = void function( VkCommandBuffer commandBuffer, uint32_t scissorCount, const( VkRect2D )* pScissors ); 227 alias PFN_vkCmdBindVertexBuffers2 = void function( VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const( VkBuffer )* pBuffers, const( VkDeviceSize )* pOffsets, const( VkDeviceSize )* pSizes, const( VkDeviceSize )* pStrides ); 228 alias PFN_vkCmdSetDepthTestEnable = void function( VkCommandBuffer commandBuffer, VkBool32 depthTestEnable ); 229 alias PFN_vkCmdSetDepthWriteEnable = void function( VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable ); 230 alias PFN_vkCmdSetDepthCompareOp = void function( VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp ); 231 alias PFN_vkCmdSetDepthBoundsTestEnable = void function( VkCommandBuffer commandBuffer, VkBool32 depthBoundsTestEnable ); 232 alias PFN_vkCmdSetStencilTestEnable = void function( VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable ); 233 alias PFN_vkCmdSetStencilOp = void function( VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp, VkCompareOp compareOp ); 234 alias PFN_vkCmdSetRasterizerDiscardEnable = void function( VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable ); 235 alias PFN_vkCmdSetDepthBiasEnable = void function( VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable ); 236 alias PFN_vkCmdSetPrimitiveRestartEnable = void function( VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable ); 237 alias PFN_vkGetDeviceBufferMemoryRequirements = void function( VkDevice device, const( VkDeviceBufferMemoryRequirements )* pInfo, VkMemoryRequirements2* pMemoryRequirements ); 238 alias PFN_vkGetDeviceImageMemoryRequirements = void function( VkDevice device, const( VkDeviceImageMemoryRequirements )* pInfo, VkMemoryRequirements2* pMemoryRequirements ); 239 alias PFN_vkGetDeviceImageSparseMemoryRequirements = void function( VkDevice device, const( VkDeviceImageMemoryRequirements )* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements ); 240 241 // VK_KHR_surface 242 alias PFN_vkDestroySurfaceKHR = void function( VkInstance instance, VkSurfaceKHR surface, const( VkAllocationCallbacks )* pAllocator ); 243 alias PFN_vkGetPhysicalDeviceSurfaceSupportKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported ); 244 alias PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities ); 245 alias PFN_vkGetPhysicalDeviceSurfaceFormatsKHR = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats ); 246 alias PFN_vkGetPhysicalDeviceSurfacePresentModesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes ); 247 248 // VK_KHR_swapchain 249 alias PFN_vkCreateSwapchainKHR = VkResult function( VkDevice device, const( VkSwapchainCreateInfoKHR )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSwapchainKHR* pSwapchain ); 250 alias PFN_vkDestroySwapchainKHR = void function( VkDevice device, VkSwapchainKHR swapchain, const( VkAllocationCallbacks )* pAllocator ); 251 alias PFN_vkGetSwapchainImagesKHR = VkResult function( VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages ); 252 alias PFN_vkAcquireNextImageKHR = VkResult function( VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex ); 253 alias PFN_vkQueuePresentKHR = VkResult function( VkQueue queue, const( VkPresentInfoKHR )* pPresentInfo ); 254 alias PFN_vkGetDeviceGroupPresentCapabilitiesKHR = VkResult function( VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities ); 255 alias PFN_vkGetDeviceGroupSurfacePresentModesKHR = VkResult function( VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR* pModes ); 256 alias PFN_vkGetPhysicalDevicePresentRectanglesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pRectCount, VkRect2D* pRects ); 257 alias PFN_vkAcquireNextImage2KHR = VkResult function( VkDevice device, const( VkAcquireNextImageInfoKHR )* pAcquireInfo, uint32_t* pImageIndex ); 258 259 // VK_KHR_display 260 alias PFN_vkGetPhysicalDeviceDisplayPropertiesKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties ); 261 alias PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties ); 262 alias PFN_vkGetDisplayPlaneSupportedDisplaysKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays ); 263 alias PFN_vkGetDisplayModePropertiesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties ); 264 alias PFN_vkCreateDisplayModeKHR = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayKHR display, const( VkDisplayModeCreateInfoKHR )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDisplayModeKHR* pMode ); 265 alias PFN_vkGetDisplayPlaneCapabilitiesKHR = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities ); 266 alias PFN_vkCreateDisplayPlaneSurfaceKHR = VkResult function( VkInstance instance, const( VkDisplaySurfaceCreateInfoKHR )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSurfaceKHR* pSurface ); 267 268 // VK_KHR_display_swapchain 269 alias PFN_vkCreateSharedSwapchainsKHR = VkResult function( VkDevice device, uint32_t swapchainCount, const( VkSwapchainCreateInfoKHR )* pCreateInfos, const( VkAllocationCallbacks )* pAllocator, VkSwapchainKHR* pSwapchains ); 270 271 // VK_KHR_external_memory_fd 272 alias PFN_vkGetMemoryFdKHR = VkResult function( VkDevice device, const( VkMemoryGetFdInfoKHR )* pGetFdInfo, int* pFd ); 273 alias PFN_vkGetMemoryFdPropertiesKHR = VkResult function( VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties ); 274 275 // VK_KHR_external_semaphore_fd 276 alias PFN_vkImportSemaphoreFdKHR = VkResult function( VkDevice device, const( VkImportSemaphoreFdInfoKHR )* pImportSemaphoreFdInfo ); 277 alias PFN_vkGetSemaphoreFdKHR = VkResult function( VkDevice device, const( VkSemaphoreGetFdInfoKHR )* pGetFdInfo, int* pFd ); 278 279 // VK_KHR_push_descriptor 280 alias PFN_vkCmdPushDescriptorSetKHR = void function( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const( VkWriteDescriptorSet )* pDescriptorWrites ); 281 alias PFN_vkCmdPushDescriptorSetWithTemplateKHR = void function( VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplate descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const( void )* pData ); 282 283 // VK_KHR_shared_presentable_image 284 alias PFN_vkGetSwapchainStatusKHR = VkResult function( VkDevice device, VkSwapchainKHR swapchain ); 285 286 // VK_KHR_external_fence_fd 287 alias PFN_vkImportFenceFdKHR = VkResult function( VkDevice device, const( VkImportFenceFdInfoKHR )* pImportFenceFdInfo ); 288 alias PFN_vkGetFenceFdKHR = VkResult function( VkDevice device, const( VkFenceGetFdInfoKHR )* pGetFdInfo, int* pFd ); 289 290 // VK_KHR_performance_query 291 alias PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, uint32_t* pCounterCount, VkPerformanceCounterKHR* pCounters, VkPerformanceCounterDescriptionKHR* pCounterDescriptions ); 292 alias PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = void function( VkPhysicalDevice physicalDevice, const( VkQueryPoolPerformanceCreateInfoKHR )* pPerformanceQueryCreateInfo, uint32_t* pNumPasses ); 293 alias PFN_vkAcquireProfilingLockKHR = VkResult function( VkDevice device, const( VkAcquireProfilingLockInfoKHR )* pInfo ); 294 alias PFN_vkReleaseProfilingLockKHR = void function( VkDevice device ); 295 296 // VK_KHR_get_surface_capabilities2 297 alias PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR = VkResult function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceSurfaceInfo2KHR )* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities ); 298 alias PFN_vkGetPhysicalDeviceSurfaceFormats2KHR = VkResult function( VkPhysicalDevice physicalDevice, const( VkPhysicalDeviceSurfaceInfo2KHR )* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats ); 299 300 // VK_KHR_get_display_properties2 301 alias PFN_vkGetPhysicalDeviceDisplayProperties2KHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayProperties2KHR* pProperties ); 302 alias PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlaneProperties2KHR* pProperties ); 303 alias PFN_vkGetDisplayModeProperties2KHR = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModeProperties2KHR* pProperties ); 304 alias PFN_vkGetDisplayPlaneCapabilities2KHR = VkResult function( VkPhysicalDevice physicalDevice, const( VkDisplayPlaneInfo2KHR )* pDisplayPlaneInfo, VkDisplayPlaneCapabilities2KHR* pCapabilities ); 305 306 // VK_KHR_fragment_shading_rate 307 alias PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pFragmentShadingRateCount, VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates ); 308 alias PFN_vkCmdSetFragmentShadingRateKHR = void function( VkCommandBuffer commandBuffer, const( VkExtent2D )* pFragmentSize, const VkFragmentShadingRateCombinerOpKHR[2] combinerOps ); 309 310 // VK_KHR_present_wait 311 alias PFN_vkWaitForPresentKHR = VkResult function( VkDevice device, VkSwapchainKHR swapchain, uint64_t presentId, uint64_t timeout ); 312 313 // VK_KHR_deferred_host_operations 314 alias PFN_vkCreateDeferredOperationKHR = VkResult function( VkDevice device, const( VkAllocationCallbacks )* pAllocator, VkDeferredOperationKHR* pDeferredOperation ); 315 alias PFN_vkDestroyDeferredOperationKHR = void function( VkDevice device, VkDeferredOperationKHR operation, const( VkAllocationCallbacks )* pAllocator ); 316 alias PFN_vkGetDeferredOperationMaxConcurrencyKHR = uint32_t function( VkDevice device, VkDeferredOperationKHR operation ); 317 alias PFN_vkGetDeferredOperationResultKHR = VkResult function( VkDevice device, VkDeferredOperationKHR operation ); 318 alias PFN_vkDeferredOperationJoinKHR = VkResult function( VkDevice device, VkDeferredOperationKHR operation ); 319 320 // VK_KHR_pipeline_executable_properties 321 alias PFN_vkGetPipelineExecutablePropertiesKHR = VkResult function( VkDevice device, const( VkPipelineInfoKHR )* pPipelineInfo, uint32_t* pExecutableCount, VkPipelineExecutablePropertiesKHR* pProperties ); 322 alias PFN_vkGetPipelineExecutableStatisticsKHR = VkResult function( VkDevice device, const( VkPipelineExecutableInfoKHR )* pExecutableInfo, uint32_t* pStatisticCount, VkPipelineExecutableStatisticKHR* pStatistics ); 323 alias PFN_vkGetPipelineExecutableInternalRepresentationsKHR = VkResult function( VkDevice device, const( VkPipelineExecutableInfoKHR )* pExecutableInfo, uint32_t* pInternalRepresentationCount, VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations ); 324 325 // VK_KHR_synchronization2 326 alias PFN_vkCmdWriteBufferMarker2AMD = void function( VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker ); 327 alias PFN_vkGetQueueCheckpointData2NV = void function( VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointData2NV* pCheckpointData ); 328 329 // VK_KHR_ray_tracing_maintenance1 330 alias PFN_vkCmdTraceRaysIndirect2KHR = void function( VkCommandBuffer commandBuffer, VkDeviceAddress indirectDeviceAddress ); 331 332 // VK_EXT_debug_report 333 alias PFN_vkCreateDebugReportCallbackEXT = VkResult function( VkInstance instance, const( VkDebugReportCallbackCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDebugReportCallbackEXT* pCallback ); 334 alias PFN_vkDestroyDebugReportCallbackEXT = void function( VkInstance instance, VkDebugReportCallbackEXT callback, const( VkAllocationCallbacks )* pAllocator ); 335 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 ); 336 337 // VK_EXT_debug_marker 338 alias PFN_vkDebugMarkerSetObjectTagEXT = VkResult function( VkDevice device, const( VkDebugMarkerObjectTagInfoEXT )* pTagInfo ); 339 alias PFN_vkDebugMarkerSetObjectNameEXT = VkResult function( VkDevice device, const( VkDebugMarkerObjectNameInfoEXT )* pNameInfo ); 340 alias PFN_vkCmdDebugMarkerBeginEXT = void function( VkCommandBuffer commandBuffer, const( VkDebugMarkerMarkerInfoEXT )* pMarkerInfo ); 341 alias PFN_vkCmdDebugMarkerEndEXT = void function( VkCommandBuffer commandBuffer ); 342 alias PFN_vkCmdDebugMarkerInsertEXT = void function( VkCommandBuffer commandBuffer, const( VkDebugMarkerMarkerInfoEXT )* pMarkerInfo ); 343 344 // VK_EXT_transform_feedback 345 alias PFN_vkCmdBindTransformFeedbackBuffersEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const( VkBuffer )* pBuffers, const( VkDeviceSize )* pOffsets, const( VkDeviceSize )* pSizes ); 346 alias PFN_vkCmdBeginTransformFeedbackEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const( VkBuffer )* pCounterBuffers, const( VkDeviceSize )* pCounterBufferOffsets ); 347 alias PFN_vkCmdEndTransformFeedbackEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const( VkBuffer )* pCounterBuffers, const( VkDeviceSize )* pCounterBufferOffsets ); 348 alias PFN_vkCmdBeginQueryIndexedEXT = void function( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags, uint32_t index ); 349 alias PFN_vkCmdEndQueryIndexedEXT = void function( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, uint32_t index ); 350 alias PFN_vkCmdDrawIndirectByteCountEXT = void function( VkCommandBuffer commandBuffer, uint32_t instanceCount, uint32_t firstInstance, VkBuffer counterBuffer, VkDeviceSize counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride ); 351 352 // VK_NVX_binary_import 353 alias PFN_vkCreateCuModuleNVX = VkResult function( VkDevice device, const( VkCuModuleCreateInfoNVX )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkCuModuleNVX* pModule ); 354 alias PFN_vkCreateCuFunctionNVX = VkResult function( VkDevice device, const( VkCuFunctionCreateInfoNVX )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkCuFunctionNVX* pFunction ); 355 alias PFN_vkDestroyCuModuleNVX = void function( VkDevice device, VkCuModuleNVX Module, const( VkAllocationCallbacks )* pAllocator ); 356 alias PFN_vkDestroyCuFunctionNVX = void function( VkDevice device, VkCuFunctionNVX Function, const( VkAllocationCallbacks )* pAllocator ); 357 alias PFN_vkCmdCuLaunchKernelNVX = void function( VkCommandBuffer commandBuffer, const( VkCuLaunchInfoNVX )* pLaunchInfo ); 358 359 // VK_NVX_image_view_handle 360 alias PFN_vkGetImageViewHandleNVX = uint32_t function( VkDevice device, const( VkImageViewHandleInfoNVX )* pInfo ); 361 alias PFN_vkGetImageViewAddressNVX = VkResult function( VkDevice device, VkImageView imageView, VkImageViewAddressPropertiesNVX* pProperties ); 362 363 // VK_AMD_shader_info 364 alias PFN_vkGetShaderInfoAMD = VkResult function( VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo ); 365 366 // VK_NV_external_memory_capabilities 367 alias PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV = VkResult function( VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties ); 368 369 // VK_EXT_conditional_rendering 370 alias PFN_vkCmdBeginConditionalRenderingEXT = void function( VkCommandBuffer commandBuffer, const( VkConditionalRenderingBeginInfoEXT )* pConditionalRenderingBegin ); 371 alias PFN_vkCmdEndConditionalRenderingEXT = void function( VkCommandBuffer commandBuffer ); 372 373 // VK_NV_clip_space_w_scaling 374 alias PFN_vkCmdSetViewportWScalingNV = void function( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const( VkViewportWScalingNV )* pViewportWScalings ); 375 376 // VK_EXT_direct_mode_display 377 alias PFN_vkReleaseDisplayEXT = VkResult function( VkPhysicalDevice physicalDevice, VkDisplayKHR display ); 378 379 // VK_EXT_display_surface_counter 380 alias PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT = VkResult function( VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities ); 381 382 // VK_EXT_display_control 383 alias PFN_vkDisplayPowerControlEXT = VkResult function( VkDevice device, VkDisplayKHR display, const( VkDisplayPowerInfoEXT )* pDisplayPowerInfo ); 384 alias PFN_vkRegisterDeviceEventEXT = VkResult function( VkDevice device, const( VkDeviceEventInfoEXT )* pDeviceEventInfo, const( VkAllocationCallbacks )* pAllocator, VkFence* pFence ); 385 alias PFN_vkRegisterDisplayEventEXT = VkResult function( VkDevice device, VkDisplayKHR display, const( VkDisplayEventInfoEXT )* pDisplayEventInfo, const( VkAllocationCallbacks )* pAllocator, VkFence* pFence ); 386 alias PFN_vkGetSwapchainCounterEXT = VkResult function( VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue ); 387 388 // VK_GOOGLE_display_timing 389 alias PFN_vkGetRefreshCycleDurationGOOGLE = VkResult function( VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties ); 390 alias PFN_vkGetPastPresentationTimingGOOGLE = VkResult function( VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings ); 391 392 // VK_EXT_discard_rectangles 393 alias PFN_vkCmdSetDiscardRectangleEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const( VkRect2D )* pDiscardRectangles ); 394 395 // VK_EXT_hdr_metadata 396 alias PFN_vkSetHdrMetadataEXT = void function( VkDevice device, uint32_t swapchainCount, const( VkSwapchainKHR )* pSwapchains, const( VkHdrMetadataEXT )* pMetadata ); 397 398 // VK_EXT_debug_utils 399 alias PFN_vkSetDebugUtilsObjectNameEXT = VkResult function( VkDevice device, const( VkDebugUtilsObjectNameInfoEXT )* pNameInfo ); 400 alias PFN_vkSetDebugUtilsObjectTagEXT = VkResult function( VkDevice device, const( VkDebugUtilsObjectTagInfoEXT )* pTagInfo ); 401 alias PFN_vkQueueBeginDebugUtilsLabelEXT = void function( VkQueue queue, const( VkDebugUtilsLabelEXT )* pLabelInfo ); 402 alias PFN_vkQueueEndDebugUtilsLabelEXT = void function( VkQueue queue ); 403 alias PFN_vkQueueInsertDebugUtilsLabelEXT = void function( VkQueue queue, const( VkDebugUtilsLabelEXT )* pLabelInfo ); 404 alias PFN_vkCmdBeginDebugUtilsLabelEXT = void function( VkCommandBuffer commandBuffer, const( VkDebugUtilsLabelEXT )* pLabelInfo ); 405 alias PFN_vkCmdEndDebugUtilsLabelEXT = void function( VkCommandBuffer commandBuffer ); 406 alias PFN_vkCmdInsertDebugUtilsLabelEXT = void function( VkCommandBuffer commandBuffer, const( VkDebugUtilsLabelEXT )* pLabelInfo ); 407 alias PFN_vkCreateDebugUtilsMessengerEXT = VkResult function( VkInstance instance, const( VkDebugUtilsMessengerCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkDebugUtilsMessengerEXT* pMessenger ); 408 alias PFN_vkDestroyDebugUtilsMessengerEXT = void function( VkInstance instance, VkDebugUtilsMessengerEXT messenger, const( VkAllocationCallbacks )* pAllocator ); 409 alias PFN_vkSubmitDebugUtilsMessageEXT = void function( VkInstance instance, VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageTypes, const( VkDebugUtilsMessengerCallbackDataEXT )* pCallbackData ); 410 411 // VK_EXT_sample_locations 412 alias PFN_vkCmdSetSampleLocationsEXT = void function( VkCommandBuffer commandBuffer, const( VkSampleLocationsInfoEXT )* pSampleLocationsInfo ); 413 alias PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT = void function( VkPhysicalDevice physicalDevice, VkSampleCountFlagBits samples, VkMultisamplePropertiesEXT* pMultisampleProperties ); 414 415 // VK_EXT_image_drm_format_modifier 416 alias PFN_vkGetImageDrmFormatModifierPropertiesEXT = VkResult function( VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT* pProperties ); 417 418 // VK_EXT_validation_cache 419 alias PFN_vkCreateValidationCacheEXT = VkResult function( VkDevice device, const( VkValidationCacheCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkValidationCacheEXT* pValidationCache ); 420 alias PFN_vkDestroyValidationCacheEXT = void function( VkDevice device, VkValidationCacheEXT validationCache, const( VkAllocationCallbacks )* pAllocator ); 421 alias PFN_vkMergeValidationCachesEXT = VkResult function( VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const( VkValidationCacheEXT )* pSrcCaches ); 422 alias PFN_vkGetValidationCacheDataEXT = VkResult function( VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData ); 423 424 // VK_NV_shading_rate_image 425 alias PFN_vkCmdBindShadingRateImageNV = void function( VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout ); 426 alias PFN_vkCmdSetViewportShadingRatePaletteNV = void function( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const( VkShadingRatePaletteNV )* pShadingRatePalettes ); 427 alias PFN_vkCmdSetCoarseSampleOrderNV = void function( VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const( VkCoarseSampleOrderCustomNV )* pCustomSampleOrders ); 428 429 // VK_NV_ray_tracing 430 alias PFN_vkCreateAccelerationStructureNV = VkResult function( VkDevice device, const( VkAccelerationStructureCreateInfoNV )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkAccelerationStructureNV* pAccelerationStructure ); 431 alias PFN_vkDestroyAccelerationStructureNV = void function( VkDevice device, VkAccelerationStructureNV accelerationStructure, const( VkAllocationCallbacks )* pAllocator ); 432 alias PFN_vkGetAccelerationStructureMemoryRequirementsNV = void function( VkDevice device, const( VkAccelerationStructureMemoryRequirementsInfoNV )* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements ); 433 alias PFN_vkBindAccelerationStructureMemoryNV = VkResult function( VkDevice device, uint32_t bindInfoCount, const( VkBindAccelerationStructureMemoryInfoNV )* pBindInfos ); 434 alias PFN_vkCmdBuildAccelerationStructureNV = void function( VkCommandBuffer commandBuffer, const( VkAccelerationStructureInfoNV )* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset ); 435 alias PFN_vkCmdCopyAccelerationStructureNV = void function( VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode ); 436 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 ); 437 alias PFN_vkCreateRayTracingPipelinesNV = VkResult function( VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const( VkRayTracingPipelineCreateInfoNV )* pCreateInfos, const( VkAllocationCallbacks )* pAllocator, VkPipeline* pPipelines ); 438 alias PFN_vkGetRayTracingShaderGroupHandlesKHR = VkResult function( VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData ); 439 alias PFN_vkGetAccelerationStructureHandleNV = VkResult function( VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData ); 440 alias PFN_vkCmdWriteAccelerationStructuresPropertiesNV = void function( VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const( VkAccelerationStructureNV )* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery ); 441 alias PFN_vkCompileDeferredNV = VkResult function( VkDevice device, VkPipeline pipeline, uint32_t shader ); 442 443 // VK_EXT_external_memory_host 444 alias PFN_vkGetMemoryHostPointerPropertiesEXT = VkResult function( VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const( void )* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties ); 445 446 // VK_AMD_buffer_marker 447 alias PFN_vkCmdWriteBufferMarkerAMD = void function( VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker ); 448 449 // VK_EXT_calibrated_timestamps 450 alias PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pTimeDomainCount, VkTimeDomainEXT* pTimeDomains ); 451 alias PFN_vkGetCalibratedTimestampsEXT = VkResult function( VkDevice device, uint32_t timestampCount, const( VkCalibratedTimestampInfoEXT )* pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation ); 452 453 // VK_NV_mesh_shader 454 alias PFN_vkCmdDrawMeshTasksNV = void function( VkCommandBuffer commandBuffer, uint32_t taskCount, uint32_t firstTask ); 455 alias PFN_vkCmdDrawMeshTasksIndirectNV = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride ); 456 alias PFN_vkCmdDrawMeshTasksIndirectCountNV = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ); 457 458 // VK_NV_scissor_exclusive 459 alias PFN_vkCmdSetExclusiveScissorNV = void function( VkCommandBuffer commandBuffer, uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const( VkRect2D )* pExclusiveScissors ); 460 461 // VK_NV_device_diagnostic_checkpoints 462 alias PFN_vkCmdSetCheckpointNV = void function( VkCommandBuffer commandBuffer, const( void )* pCheckpointMarker ); 463 alias PFN_vkGetQueueCheckpointDataNV = void function( VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointDataNV* pCheckpointData ); 464 465 // VK_INTEL_performance_query 466 alias PFN_vkInitializePerformanceApiINTEL = VkResult function( VkDevice device, const( VkInitializePerformanceApiInfoINTEL )* pInitializeInfo ); 467 alias PFN_vkUninitializePerformanceApiINTEL = void function( VkDevice device ); 468 alias PFN_vkCmdSetPerformanceMarkerINTEL = VkResult function( VkCommandBuffer commandBuffer, const( VkPerformanceMarkerInfoINTEL )* pMarkerInfo ); 469 alias PFN_vkCmdSetPerformanceStreamMarkerINTEL = VkResult function( VkCommandBuffer commandBuffer, const( VkPerformanceStreamMarkerInfoINTEL )* pMarkerInfo ); 470 alias PFN_vkCmdSetPerformanceOverrideINTEL = VkResult function( VkCommandBuffer commandBuffer, const( VkPerformanceOverrideInfoINTEL )* pOverrideInfo ); 471 alias PFN_vkAcquirePerformanceConfigurationINTEL = VkResult function( VkDevice device, const( VkPerformanceConfigurationAcquireInfoINTEL )* pAcquireInfo, VkPerformanceConfigurationINTEL* pConfiguration ); 472 alias PFN_vkReleasePerformanceConfigurationINTEL = VkResult function( VkDevice device, VkPerformanceConfigurationINTEL configuration ); 473 alias PFN_vkQueueSetPerformanceConfigurationINTEL = VkResult function( VkQueue queue, VkPerformanceConfigurationINTEL configuration ); 474 alias PFN_vkGetPerformanceParameterINTEL = VkResult function( VkDevice device, VkPerformanceParameterTypeINTEL parameter, VkPerformanceValueINTEL* pValue ); 475 476 // VK_AMD_display_native_hdr 477 alias PFN_vkSetLocalDimmingAMD = void function( VkDevice device, VkSwapchainKHR swapChain, VkBool32 localDimmingEnable ); 478 479 // VK_NV_cooperative_matrix 480 alias PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkCooperativeMatrixPropertiesNV* pProperties ); 481 482 // VK_NV_coverage_reduction_mode 483 alias PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = VkResult function( VkPhysicalDevice physicalDevice, uint32_t* pCombinationCount, VkFramebufferMixedSamplesCombinationNV* pCombinations ); 484 485 // VK_EXT_headless_surface 486 alias PFN_vkCreateHeadlessSurfaceEXT = VkResult function( VkInstance instance, const( VkHeadlessSurfaceCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkSurfaceKHR* pSurface ); 487 488 // VK_EXT_line_rasterization 489 alias PFN_vkCmdSetLineStippleEXT = void function( VkCommandBuffer commandBuffer, uint32_t lineStippleFactor, uint16_t lineStipplePattern ); 490 491 // VK_EXT_swapchain_maintenance1 492 alias PFN_vkReleaseSwapchainImagesEXT = VkResult function( VkDevice device, const( VkReleaseSwapchainImagesInfoEXT )* pReleaseInfo ); 493 494 // VK_NV_device_generated_commands 495 alias PFN_vkGetGeneratedCommandsMemoryRequirementsNV = void function( VkDevice device, const( VkGeneratedCommandsMemoryRequirementsInfoNV )* pInfo, VkMemoryRequirements2* pMemoryRequirements ); 496 alias PFN_vkCmdPreprocessGeneratedCommandsNV = void function( VkCommandBuffer commandBuffer, const( VkGeneratedCommandsInfoNV )* pGeneratedCommandsInfo ); 497 alias PFN_vkCmdExecuteGeneratedCommandsNV = void function( VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const( VkGeneratedCommandsInfoNV )* pGeneratedCommandsInfo ); 498 alias PFN_vkCmdBindPipelineShaderGroupNV = void function( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex ); 499 alias PFN_vkCreateIndirectCommandsLayoutNV = VkResult function( VkDevice device, const( VkIndirectCommandsLayoutCreateInfoNV )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout ); 500 alias PFN_vkDestroyIndirectCommandsLayoutNV = void function( VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const( VkAllocationCallbacks )* pAllocator ); 501 502 // VK_EXT_acquire_drm_display 503 alias PFN_vkAcquireDrmDisplayEXT = VkResult function( VkPhysicalDevice physicalDevice, int32_t drmFd, VkDisplayKHR display ); 504 alias PFN_vkGetDrmDisplayEXT = VkResult function( VkPhysicalDevice physicalDevice, int32_t drmFd, uint32_t connectorId, VkDisplayKHR* display ); 505 506 // VK_EXT_descriptor_buffer 507 alias PFN_vkGetDescriptorSetLayoutSizeEXT = void function( VkDevice device, VkDescriptorSetLayout layout, VkDeviceSize* pLayoutSizeInBytes ); 508 alias PFN_vkGetDescriptorSetLayoutBindingOffsetEXT = void function( VkDevice device, VkDescriptorSetLayout layout, uint32_t binding, VkDeviceSize* pOffset ); 509 alias PFN_vkGetDescriptorEXT = void function( VkDevice device, const( VkDescriptorGetInfoEXT )* pDescriptorInfo, size_t dataSize, void* pDescriptor ); 510 alias PFN_vkCmdBindDescriptorBuffersEXT = void function( VkCommandBuffer commandBuffer, uint32_t bufferCount, const( VkDescriptorBufferBindingInfoEXT )* pBindingInfos ); 511 alias PFN_vkCmdSetDescriptorBufferOffsetsEXT = void function( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t setCount, const( uint32_t )* pBufferIndices, const( VkDeviceSize )* pOffsets ); 512 alias PFN_vkCmdBindDescriptorBufferEmbeddedSamplersEXT = void function( VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set ); 513 alias PFN_vkGetBufferOpaqueCaptureDescriptorDataEXT = VkResult function( VkDevice device, const( VkBufferCaptureDescriptorDataInfoEXT )* pInfo, void* pData ); 514 alias PFN_vkGetImageOpaqueCaptureDescriptorDataEXT = VkResult function( VkDevice device, const( VkImageCaptureDescriptorDataInfoEXT )* pInfo, void* pData ); 515 alias PFN_vkGetImageViewOpaqueCaptureDescriptorDataEXT = VkResult function( VkDevice device, const( VkImageViewCaptureDescriptorDataInfoEXT )* pInfo, void* pData ); 516 alias PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT = VkResult function( VkDevice device, const( VkSamplerCaptureDescriptorDataInfoEXT )* pInfo, void* pData ); 517 alias PFN_vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT = VkResult function( VkDevice device, const( VkAccelerationStructureCaptureDescriptorDataInfoEXT )* pInfo, void* pData ); 518 519 // VK_NV_fragment_shading_rate_enums 520 alias PFN_vkCmdSetFragmentShadingRateEnumNV = void function( VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR[2] combinerOps ); 521 522 // VK_EXT_image_compression_control 523 alias PFN_vkGetImageSubresourceLayout2EXT = void function( VkDevice device, VkImage image, const( VkImageSubresource2EXT )* pSubresource, VkSubresourceLayout2EXT* pLayout ); 524 525 // VK_EXT_device_fault 526 alias PFN_vkGetDeviceFaultInfoEXT = VkResult function( VkDevice device, VkDeviceFaultCountsEXT* pFaultCounts, VkDeviceFaultInfoEXT* pFaultInfo ); 527 528 // VK_EXT_vertex_input_dynamic_state 529 alias PFN_vkCmdSetVertexInputEXT = void function( VkCommandBuffer commandBuffer, uint32_t vertexBindingDescriptionCount, const( VkVertexInputBindingDescription2EXT )* pVertexBindingDescriptions, uint32_t vertexAttributeDescriptionCount, const( VkVertexInputAttributeDescription2EXT )* pVertexAttributeDescriptions ); 530 531 // VK_HUAWEI_subpass_shading 532 alias PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = VkResult function( VkDevice device, VkRenderPass renderpass, VkExtent2D* pMaxWorkgroupSize ); 533 alias PFN_vkCmdSubpassShadingHUAWEI = void function( VkCommandBuffer commandBuffer ); 534 535 // VK_HUAWEI_invocation_mask 536 alias PFN_vkCmdBindInvocationMaskHUAWEI = void function( VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout ); 537 538 // VK_NV_external_memory_rdma 539 alias PFN_vkGetMemoryRemoteAddressNV = VkResult function( VkDevice device, const( VkMemoryGetRemoteAddressInfoNV )* pMemoryGetRemoteAddressInfo, VkRemoteAddressNV* pAddress ); 540 541 // VK_EXT_pipeline_properties 542 alias PFN_vkGetPipelinePropertiesEXT = VkResult function( VkDevice device, const( VkPipelineInfoEXT )* pPipelineInfo, VkBaseOutStructure* pPipelineProperties ); 543 544 // VK_EXT_extended_dynamic_state2 545 alias PFN_vkCmdSetPatchControlPointsEXT = void function( VkCommandBuffer commandBuffer, uint32_t patchControlPoints ); 546 alias PFN_vkCmdSetLogicOpEXT = void function( VkCommandBuffer commandBuffer, VkLogicOp logicOp ); 547 548 // VK_EXT_color_write_enable 549 alias PFN_vkCmdSetColorWriteEnableEXT = void function( VkCommandBuffer commandBuffer, uint32_t attachmentCount, const( VkBool32 )* pColorWriteEnables ); 550 551 // VK_EXT_multi_draw 552 alias PFN_vkCmdDrawMultiEXT = void function( VkCommandBuffer commandBuffer, uint32_t drawCount, const( VkMultiDrawInfoEXT )* pVertexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride ); 553 alias PFN_vkCmdDrawMultiIndexedEXT = void function( VkCommandBuffer commandBuffer, uint32_t drawCount, const( VkMultiDrawIndexedInfoEXT )* pIndexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride, const( int32_t )* pVertexOffset ); 554 555 // VK_EXT_opacity_micromap 556 alias PFN_vkCreateMicromapEXT = VkResult function( VkDevice device, const( VkMicromapCreateInfoEXT )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkMicromapEXT* pMicromap ); 557 alias PFN_vkDestroyMicromapEXT = void function( VkDevice device, VkMicromapEXT micromap, const( VkAllocationCallbacks )* pAllocator ); 558 alias PFN_vkCmdBuildMicromapsEXT = void function( VkCommandBuffer commandBuffer, uint32_t infoCount, const( VkMicromapBuildInfoEXT )* pInfos ); 559 alias PFN_vkBuildMicromapsEXT = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const( VkMicromapBuildInfoEXT )* pInfos ); 560 alias PFN_vkCopyMicromapEXT = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyMicromapInfoEXT )* pInfo ); 561 alias PFN_vkCopyMicromapToMemoryEXT = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyMicromapToMemoryInfoEXT )* pInfo ); 562 alias PFN_vkCopyMemoryToMicromapEXT = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyMemoryToMicromapInfoEXT )* pInfo ); 563 alias PFN_vkWriteMicromapsPropertiesEXT = VkResult function( VkDevice device, uint32_t micromapCount, const( VkMicromapEXT )* pMicromaps, VkQueryType queryType, size_t dataSize, void* pData, size_t stride ); 564 alias PFN_vkCmdCopyMicromapEXT = void function( VkCommandBuffer commandBuffer, const( VkCopyMicromapInfoEXT )* pInfo ); 565 alias PFN_vkCmdCopyMicromapToMemoryEXT = void function( VkCommandBuffer commandBuffer, const( VkCopyMicromapToMemoryInfoEXT )* pInfo ); 566 alias PFN_vkCmdCopyMemoryToMicromapEXT = void function( VkCommandBuffer commandBuffer, const( VkCopyMemoryToMicromapInfoEXT )* pInfo ); 567 alias PFN_vkCmdWriteMicromapsPropertiesEXT = void function( VkCommandBuffer commandBuffer, uint32_t micromapCount, const( VkMicromapEXT )* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery ); 568 alias PFN_vkGetDeviceMicromapCompatibilityEXT = void function( VkDevice device, const( VkMicromapVersionInfoEXT )* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility ); 569 alias PFN_vkGetMicromapBuildSizesEXT = void function( VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const( VkMicromapBuildInfoEXT )* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo ); 570 571 // VK_EXT_pageable_device_local_memory 572 alias PFN_vkSetDeviceMemoryPriorityEXT = void function( VkDevice device, VkDeviceMemory memory, float priority ); 573 574 // VK_VALVE_descriptor_set_host_mapping 575 alias PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE = void function( VkDevice device, const( VkDescriptorSetBindingReferenceVALVE )* pBindingReference, VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping ); 576 alias PFN_vkGetDescriptorSetHostMappingVALVE = void function( VkDevice device, VkDescriptorSet descriptorSet, void** ppData ); 577 578 // VK_NV_copy_memory_indirect 579 alias PFN_vkCmdCopyMemoryIndirectNV = void function( VkCommandBuffer commandBuffer, VkDeviceAddress copyBufferAddress, uint32_t copyCount, uint32_t stride ); 580 alias PFN_vkCmdCopyMemoryToImageIndirectNV = void function( VkCommandBuffer commandBuffer, VkDeviceAddress copyBufferAddress, uint32_t copyCount, uint32_t stride, VkImage dstImage, VkImageLayout dstImageLayout, const( VkImageSubresourceLayers )* pImageSubresources ); 581 582 // VK_NV_memory_decompression 583 alias PFN_vkCmdDecompressMemoryNV = void function( VkCommandBuffer commandBuffer, uint32_t decompressRegionCount, const( VkDecompressMemoryRegionNV )* pDecompressMemoryRegions ); 584 alias PFN_vkCmdDecompressMemoryIndirectCountNV = void function( VkCommandBuffer commandBuffer, VkDeviceAddress indirectCommandsAddress, VkDeviceAddress indirectCommandsCountAddress, uint32_t stride ); 585 586 // VK_EXT_extended_dynamic_state3 587 alias PFN_vkCmdSetTessellationDomainOriginEXT = void function( VkCommandBuffer commandBuffer, VkTessellationDomainOrigin domainOrigin ); 588 alias PFN_vkCmdSetDepthClampEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 depthClampEnable ); 589 alias PFN_vkCmdSetPolygonModeEXT = void function( VkCommandBuffer commandBuffer, VkPolygonMode polygonMode ); 590 alias PFN_vkCmdSetRasterizationSamplesEXT = void function( VkCommandBuffer commandBuffer, VkSampleCountFlagBits rasterizationSamples ); 591 alias PFN_vkCmdSetSampleMaskEXT = void function( VkCommandBuffer commandBuffer, VkSampleCountFlagBits samples, const( VkSampleMask )* pSampleMask ); 592 alias PFN_vkCmdSetAlphaToCoverageEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 alphaToCoverageEnable ); 593 alias PFN_vkCmdSetAlphaToOneEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 alphaToOneEnable ); 594 alias PFN_vkCmdSetLogicOpEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 logicOpEnable ); 595 alias PFN_vkCmdSetColorBlendEnableEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const( VkBool32 )* pColorBlendEnables ); 596 alias PFN_vkCmdSetColorBlendEquationEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const( VkColorBlendEquationEXT )* pColorBlendEquations ); 597 alias PFN_vkCmdSetColorWriteMaskEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const( VkColorComponentFlags )* pColorWriteMasks ); 598 alias PFN_vkCmdSetRasterizationStreamEXT = void function( VkCommandBuffer commandBuffer, uint32_t rasterizationStream ); 599 alias PFN_vkCmdSetConservativeRasterizationModeEXT = void function( VkCommandBuffer commandBuffer, VkConservativeRasterizationModeEXT conservativeRasterizationMode ); 600 alias PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT = void function( VkCommandBuffer commandBuffer, float extraPrimitiveOverestimationSize ); 601 alias PFN_vkCmdSetDepthClipEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 depthClipEnable ); 602 alias PFN_vkCmdSetSampleLocationsEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 sampleLocationsEnable ); 603 alias PFN_vkCmdSetColorBlendAdvancedEXT = void function( VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const( VkColorBlendAdvancedEXT )* pColorBlendAdvanced ); 604 alias PFN_vkCmdSetProvokingVertexModeEXT = void function( VkCommandBuffer commandBuffer, VkProvokingVertexModeEXT provokingVertexMode ); 605 alias PFN_vkCmdSetLineRasterizationModeEXT = void function( VkCommandBuffer commandBuffer, VkLineRasterizationModeEXT lineRasterizationMode ); 606 alias PFN_vkCmdSetLineStippleEnableEXT = void function( VkCommandBuffer commandBuffer, VkBool32 stippledLineEnable ); 607 alias PFN_vkCmdSetDepthClipNegativeOneToOneEXT = void function( VkCommandBuffer commandBuffer, VkBool32 negativeOneToOne ); 608 alias PFN_vkCmdSetViewportWScalingEnableNV = void function( VkCommandBuffer commandBuffer, VkBool32 viewportWScalingEnable ); 609 alias PFN_vkCmdSetViewportSwizzleNV = void function( VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const( VkViewportSwizzleNV )* pViewportSwizzles ); 610 alias PFN_vkCmdSetCoverageToColorEnableNV = void function( VkCommandBuffer commandBuffer, VkBool32 coverageToColorEnable ); 611 alias PFN_vkCmdSetCoverageToColorLocationNV = void function( VkCommandBuffer commandBuffer, uint32_t coverageToColorLocation ); 612 alias PFN_vkCmdSetCoverageModulationModeNV = void function( VkCommandBuffer commandBuffer, VkCoverageModulationModeNV coverageModulationMode ); 613 alias PFN_vkCmdSetCoverageModulationTableEnableNV = void function( VkCommandBuffer commandBuffer, VkBool32 coverageModulationTableEnable ); 614 alias PFN_vkCmdSetCoverageModulationTableNV = void function( VkCommandBuffer commandBuffer, uint32_t coverageModulationTableCount, const( float )* pCoverageModulationTable ); 615 alias PFN_vkCmdSetShadingRateImageEnableNV = void function( VkCommandBuffer commandBuffer, VkBool32 shadingRateImageEnable ); 616 alias PFN_vkCmdSetRepresentativeFragmentTestEnableNV = void function( VkCommandBuffer commandBuffer, VkBool32 representativeFragmentTestEnable ); 617 alias PFN_vkCmdSetCoverageReductionModeNV = void function( VkCommandBuffer commandBuffer, VkCoverageReductionModeNV coverageReductionMode ); 618 619 // VK_EXT_shader_module_identifier 620 alias PFN_vkGetShaderModuleIdentifierEXT = void function( VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier ); 621 alias PFN_vkGetShaderModuleCreateInfoIdentifierEXT = void function( VkDevice device, const( VkShaderModuleCreateInfo )* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier ); 622 623 // VK_NV_optical_flow 624 alias PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV = VkResult function( VkPhysicalDevice physicalDevice, const( VkOpticalFlowImageFormatInfoNV )* pOpticalFlowImageFormatInfo, uint32_t* pFormatCount, VkOpticalFlowImageFormatPropertiesNV* pImageFormatProperties ); 625 alias PFN_vkCreateOpticalFlowSessionNV = VkResult function( VkDevice device, const( VkOpticalFlowSessionCreateInfoNV )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkOpticalFlowSessionNV* pSession ); 626 alias PFN_vkDestroyOpticalFlowSessionNV = void function( VkDevice device, VkOpticalFlowSessionNV session, const( VkAllocationCallbacks )* pAllocator ); 627 alias PFN_vkBindOpticalFlowSessionImageNV = VkResult function( VkDevice device, VkOpticalFlowSessionNV session, VkOpticalFlowSessionBindingPointNV bindingPoint, VkImageView view, VkImageLayout layout ); 628 alias PFN_vkCmdOpticalFlowExecuteNV = void function( VkCommandBuffer commandBuffer, VkOpticalFlowSessionNV session, const( VkOpticalFlowExecuteInfoNV )* pExecuteInfo ); 629 630 // VK_QCOM_tile_properties 631 alias PFN_vkGetFramebufferTilePropertiesQCOM = VkResult function( VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties ); 632 alias PFN_vkGetDynamicRenderingTilePropertiesQCOM = VkResult function( VkDevice device, const( VkRenderingInfo )* pRenderingInfo, VkTilePropertiesQCOM* pProperties ); 633 634 // VK_KHR_acceleration_structure 635 alias PFN_vkCreateAccelerationStructureKHR = VkResult function( VkDevice device, const( VkAccelerationStructureCreateInfoKHR )* pCreateInfo, const( VkAllocationCallbacks )* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure ); 636 alias PFN_vkDestroyAccelerationStructureKHR = void function( VkDevice device, VkAccelerationStructureKHR accelerationStructure, const( VkAllocationCallbacks )* pAllocator ); 637 alias PFN_vkCmdBuildAccelerationStructuresKHR = void function( VkCommandBuffer commandBuffer, uint32_t infoCount, const( VkAccelerationStructureBuildGeometryInfoKHR )* pInfos, const( VkAccelerationStructureBuildRangeInfoKHR* )* ppBuildRangeInfos ); 638 alias PFN_vkCmdBuildAccelerationStructuresIndirectKHR = void function( VkCommandBuffer commandBuffer, uint32_t infoCount, const( VkAccelerationStructureBuildGeometryInfoKHR )* pInfos, const( VkDeviceAddress )* pIndirectDeviceAddresses, const( uint32_t )* pIndirectStrides, const( uint32_t* )* ppMaxPrimitiveCounts ); 639 alias PFN_vkBuildAccelerationStructuresKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const( VkAccelerationStructureBuildGeometryInfoKHR )* pInfos, const( VkAccelerationStructureBuildRangeInfoKHR* )* ppBuildRangeInfos ); 640 alias PFN_vkCopyAccelerationStructureKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyAccelerationStructureInfoKHR )* pInfo ); 641 alias PFN_vkCopyAccelerationStructureToMemoryKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyAccelerationStructureToMemoryInfoKHR )* pInfo ); 642 alias PFN_vkCopyMemoryToAccelerationStructureKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, const( VkCopyMemoryToAccelerationStructureInfoKHR )* pInfo ); 643 alias PFN_vkWriteAccelerationStructuresPropertiesKHR = VkResult function( VkDevice device, uint32_t accelerationStructureCount, const( VkAccelerationStructureKHR )* pAccelerationStructures, VkQueryType queryType, size_t dataSize, void* pData, size_t stride ); 644 alias PFN_vkCmdCopyAccelerationStructureKHR = void function( VkCommandBuffer commandBuffer, const( VkCopyAccelerationStructureInfoKHR )* pInfo ); 645 alias PFN_vkCmdCopyAccelerationStructureToMemoryKHR = void function( VkCommandBuffer commandBuffer, const( VkCopyAccelerationStructureToMemoryInfoKHR )* pInfo ); 646 alias PFN_vkCmdCopyMemoryToAccelerationStructureKHR = void function( VkCommandBuffer commandBuffer, const( VkCopyMemoryToAccelerationStructureInfoKHR )* pInfo ); 647 alias PFN_vkGetAccelerationStructureDeviceAddressKHR = VkDeviceAddress function( VkDevice device, const( VkAccelerationStructureDeviceAddressInfoKHR )* pInfo ); 648 alias PFN_vkCmdWriteAccelerationStructuresPropertiesKHR = void function( VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const( VkAccelerationStructureKHR )* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery ); 649 alias PFN_vkGetDeviceAccelerationStructureCompatibilityKHR = void function( VkDevice device, const( VkAccelerationStructureVersionInfoKHR )* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility ); 650 alias PFN_vkGetAccelerationStructureBuildSizesKHR = void function( VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const( VkAccelerationStructureBuildGeometryInfoKHR )* pBuildInfo, const( uint32_t )* pMaxPrimitiveCounts, VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo ); 651 652 // VK_KHR_ray_tracing_pipeline 653 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 ); 654 alias PFN_vkCreateRayTracingPipelinesKHR = VkResult function( VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache, uint32_t createInfoCount, const( VkRayTracingPipelineCreateInfoKHR )* pCreateInfos, const( VkAllocationCallbacks )* pAllocator, VkPipeline* pPipelines ); 655 alias PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = VkResult function( VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData ); 656 alias PFN_vkCmdTraceRaysIndirectKHR = void function( VkCommandBuffer commandBuffer, const( VkStridedDeviceAddressRegionKHR )* pRaygenShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pMissShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pHitShaderBindingTable, const( VkStridedDeviceAddressRegionKHR )* pCallableShaderBindingTable, VkDeviceAddress indirectDeviceAddress ); 657 alias PFN_vkGetRayTracingShaderGroupStackSizeKHR = VkDeviceSize function( VkDevice device, VkPipeline pipeline, uint32_t group, VkShaderGroupShaderKHR groupShader ); 658 alias PFN_vkCmdSetRayTracingPipelineStackSizeKHR = void function( VkCommandBuffer commandBuffer, uint32_t pipelineStackSize ); 659 660 // VK_EXT_mesh_shader 661 alias PFN_vkCmdDrawMeshTasksEXT = void function( VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ ); 662 alias PFN_vkCmdDrawMeshTasksIndirectEXT = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride ); 663 alias PFN_vkCmdDrawMeshTasksIndirectCountEXT = void function( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride ); 664 } 665 666 667 /// function declarations 668 __gshared { 669 670 // VK_VERSION_1_0 671 PFN_vkCreateInstance vkCreateInstance; 672 PFN_vkDestroyInstance vkDestroyInstance; 673 PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices; 674 PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures; 675 PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties; 676 PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties; 677 PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties; 678 PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties; 679 PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties; 680 PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr; 681 PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr; 682 PFN_vkCreateDevice vkCreateDevice; 683 PFN_vkDestroyDevice vkDestroyDevice; 684 PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties; 685 PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties; 686 PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties; 687 PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties; 688 PFN_vkGetDeviceQueue vkGetDeviceQueue; 689 PFN_vkQueueSubmit vkQueueSubmit; 690 PFN_vkQueueWaitIdle vkQueueWaitIdle; 691 PFN_vkDeviceWaitIdle vkDeviceWaitIdle; 692 PFN_vkAllocateMemory vkAllocateMemory; 693 PFN_vkFreeMemory vkFreeMemory; 694 PFN_vkMapMemory vkMapMemory; 695 PFN_vkUnmapMemory vkUnmapMemory; 696 PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges; 697 PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges; 698 PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment; 699 PFN_vkBindBufferMemory vkBindBufferMemory; 700 PFN_vkBindImageMemory vkBindImageMemory; 701 PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements; 702 PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements; 703 PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements; 704 PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties; 705 PFN_vkQueueBindSparse vkQueueBindSparse; 706 PFN_vkCreateFence vkCreateFence; 707 PFN_vkDestroyFence vkDestroyFence; 708 PFN_vkResetFences vkResetFences; 709 PFN_vkGetFenceStatus vkGetFenceStatus; 710 PFN_vkWaitForFences vkWaitForFences; 711 PFN_vkCreateSemaphore vkCreateSemaphore; 712 PFN_vkDestroySemaphore vkDestroySemaphore; 713 PFN_vkCreateEvent vkCreateEvent; 714 PFN_vkDestroyEvent vkDestroyEvent; 715 PFN_vkGetEventStatus vkGetEventStatus; 716 PFN_vkSetEvent vkSetEvent; 717 PFN_vkResetEvent vkResetEvent; 718 PFN_vkCreateQueryPool vkCreateQueryPool; 719 PFN_vkDestroyQueryPool vkDestroyQueryPool; 720 PFN_vkGetQueryPoolResults vkGetQueryPoolResults; 721 PFN_vkCreateBuffer vkCreateBuffer; 722 PFN_vkDestroyBuffer vkDestroyBuffer; 723 PFN_vkCreateBufferView vkCreateBufferView; 724 PFN_vkDestroyBufferView vkDestroyBufferView; 725 PFN_vkCreateImage vkCreateImage; 726 PFN_vkDestroyImage vkDestroyImage; 727 PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout; 728 PFN_vkCreateImageView vkCreateImageView; 729 PFN_vkDestroyImageView vkDestroyImageView; 730 PFN_vkCreateShaderModule vkCreateShaderModule; 731 PFN_vkDestroyShaderModule vkDestroyShaderModule; 732 PFN_vkCreatePipelineCache vkCreatePipelineCache; 733 PFN_vkDestroyPipelineCache vkDestroyPipelineCache; 734 PFN_vkGetPipelineCacheData vkGetPipelineCacheData; 735 PFN_vkMergePipelineCaches vkMergePipelineCaches; 736 PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines; 737 PFN_vkCreateComputePipelines vkCreateComputePipelines; 738 PFN_vkDestroyPipeline vkDestroyPipeline; 739 PFN_vkCreatePipelineLayout vkCreatePipelineLayout; 740 PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout; 741 PFN_vkCreateSampler vkCreateSampler; 742 PFN_vkDestroySampler vkDestroySampler; 743 PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout; 744 PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout; 745 PFN_vkCreateDescriptorPool vkCreateDescriptorPool; 746 PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool; 747 PFN_vkResetDescriptorPool vkResetDescriptorPool; 748 PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets; 749 PFN_vkFreeDescriptorSets vkFreeDescriptorSets; 750 PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets; 751 PFN_vkCreateFramebuffer vkCreateFramebuffer; 752 PFN_vkDestroyFramebuffer vkDestroyFramebuffer; 753 PFN_vkCreateRenderPass vkCreateRenderPass; 754 PFN_vkDestroyRenderPass vkDestroyRenderPass; 755 PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity; 756 PFN_vkCreateCommandPool vkCreateCommandPool; 757 PFN_vkDestroyCommandPool vkDestroyCommandPool; 758 PFN_vkResetCommandPool vkResetCommandPool; 759 PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers; 760 PFN_vkFreeCommandBuffers vkFreeCommandBuffers; 761 PFN_vkBeginCommandBuffer vkBeginCommandBuffer; 762 PFN_vkEndCommandBuffer vkEndCommandBuffer; 763 PFN_vkResetCommandBuffer vkResetCommandBuffer; 764 PFN_vkCmdBindPipeline vkCmdBindPipeline; 765 PFN_vkCmdSetViewport vkCmdSetViewport; 766 PFN_vkCmdSetScissor vkCmdSetScissor; 767 PFN_vkCmdSetLineWidth vkCmdSetLineWidth; 768 PFN_vkCmdSetDepthBias vkCmdSetDepthBias; 769 PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants; 770 PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds; 771 PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask; 772 PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask; 773 PFN_vkCmdSetStencilReference vkCmdSetStencilReference; 774 PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets; 775 PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer; 776 PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers; 777 PFN_vkCmdDraw vkCmdDraw; 778 PFN_vkCmdDrawIndexed vkCmdDrawIndexed; 779 PFN_vkCmdDrawIndirect vkCmdDrawIndirect; 780 PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect; 781 PFN_vkCmdDispatch vkCmdDispatch; 782 PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect; 783 PFN_vkCmdCopyBuffer vkCmdCopyBuffer; 784 PFN_vkCmdCopyImage vkCmdCopyImage; 785 PFN_vkCmdBlitImage vkCmdBlitImage; 786 PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage; 787 PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer; 788 PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer; 789 PFN_vkCmdFillBuffer vkCmdFillBuffer; 790 PFN_vkCmdClearColorImage vkCmdClearColorImage; 791 PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage; 792 PFN_vkCmdClearAttachments vkCmdClearAttachments; 793 PFN_vkCmdResolveImage vkCmdResolveImage; 794 PFN_vkCmdSetEvent vkCmdSetEvent; 795 PFN_vkCmdResetEvent vkCmdResetEvent; 796 PFN_vkCmdWaitEvents vkCmdWaitEvents; 797 PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier; 798 PFN_vkCmdBeginQuery vkCmdBeginQuery; 799 PFN_vkCmdEndQuery vkCmdEndQuery; 800 PFN_vkCmdResetQueryPool vkCmdResetQueryPool; 801 PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp; 802 PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults; 803 PFN_vkCmdPushConstants vkCmdPushConstants; 804 PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass; 805 PFN_vkCmdNextSubpass vkCmdNextSubpass; 806 PFN_vkCmdEndRenderPass vkCmdEndRenderPass; 807 PFN_vkCmdExecuteCommands vkCmdExecuteCommands; 808 809 // VK_VERSION_1_1 810 PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion; 811 PFN_vkBindBufferMemory2 vkBindBufferMemory2; 812 PFN_vkBindImageMemory2 vkBindImageMemory2; 813 PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures; 814 PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask; 815 PFN_vkCmdDispatchBase vkCmdDispatchBase; 816 PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups; 817 PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2; 818 PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2; 819 PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2; 820 PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2; 821 PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2; 822 PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2; 823 PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2; 824 PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2; 825 PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2; 826 PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2; 827 PFN_vkTrimCommandPool vkTrimCommandPool; 828 PFN_vkGetDeviceQueue2 vkGetDeviceQueue2; 829 PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion; 830 PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion; 831 PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate; 832 PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate; 833 PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate; 834 PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties; 835 PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties; 836 PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties; 837 PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport; 838 839 // VK_VERSION_1_2 840 PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount; 841 PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount; 842 PFN_vkCreateRenderPass2 vkCreateRenderPass2; 843 PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2; 844 PFN_vkCmdNextSubpass2 vkCmdNextSubpass2; 845 PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2; 846 PFN_vkResetQueryPool vkResetQueryPool; 847 PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue; 848 PFN_vkWaitSemaphores vkWaitSemaphores; 849 PFN_vkSignalSemaphore vkSignalSemaphore; 850 PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress; 851 PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress; 852 PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress; 853 854 // VK_VERSION_1_3 855 PFN_vkGetPhysicalDeviceToolProperties vkGetPhysicalDeviceToolProperties; 856 PFN_vkCreatePrivateDataSlot vkCreatePrivateDataSlot; 857 PFN_vkDestroyPrivateDataSlot vkDestroyPrivateDataSlot; 858 PFN_vkSetPrivateData vkSetPrivateData; 859 PFN_vkGetPrivateData vkGetPrivateData; 860 PFN_vkCmdSetEvent2 vkCmdSetEvent2; 861 PFN_vkCmdResetEvent2 vkCmdResetEvent2; 862 PFN_vkCmdWaitEvents2 vkCmdWaitEvents2; 863 PFN_vkCmdPipelineBarrier2 vkCmdPipelineBarrier2; 864 PFN_vkCmdWriteTimestamp2 vkCmdWriteTimestamp2; 865 PFN_vkQueueSubmit2 vkQueueSubmit2; 866 PFN_vkCmdCopyBuffer2 vkCmdCopyBuffer2; 867 PFN_vkCmdCopyImage2 vkCmdCopyImage2; 868 PFN_vkCmdCopyBufferToImage2 vkCmdCopyBufferToImage2; 869 PFN_vkCmdCopyImageToBuffer2 vkCmdCopyImageToBuffer2; 870 PFN_vkCmdBlitImage2 vkCmdBlitImage2; 871 PFN_vkCmdResolveImage2 vkCmdResolveImage2; 872 PFN_vkCmdBeginRendering vkCmdBeginRendering; 873 PFN_vkCmdEndRendering vkCmdEndRendering; 874 PFN_vkCmdSetCullMode vkCmdSetCullMode; 875 PFN_vkCmdSetFrontFace vkCmdSetFrontFace; 876 PFN_vkCmdSetPrimitiveTopology vkCmdSetPrimitiveTopology; 877 PFN_vkCmdSetViewportWithCount vkCmdSetViewportWithCount; 878 PFN_vkCmdSetScissorWithCount vkCmdSetScissorWithCount; 879 PFN_vkCmdBindVertexBuffers2 vkCmdBindVertexBuffers2; 880 PFN_vkCmdSetDepthTestEnable vkCmdSetDepthTestEnable; 881 PFN_vkCmdSetDepthWriteEnable vkCmdSetDepthWriteEnable; 882 PFN_vkCmdSetDepthCompareOp vkCmdSetDepthCompareOp; 883 PFN_vkCmdSetDepthBoundsTestEnable vkCmdSetDepthBoundsTestEnable; 884 PFN_vkCmdSetStencilTestEnable vkCmdSetStencilTestEnable; 885 PFN_vkCmdSetStencilOp vkCmdSetStencilOp; 886 PFN_vkCmdSetRasterizerDiscardEnable vkCmdSetRasterizerDiscardEnable; 887 PFN_vkCmdSetDepthBiasEnable vkCmdSetDepthBiasEnable; 888 PFN_vkCmdSetPrimitiveRestartEnable vkCmdSetPrimitiveRestartEnable; 889 PFN_vkGetDeviceBufferMemoryRequirements vkGetDeviceBufferMemoryRequirements; 890 PFN_vkGetDeviceImageMemoryRequirements vkGetDeviceImageMemoryRequirements; 891 PFN_vkGetDeviceImageSparseMemoryRequirements vkGetDeviceImageSparseMemoryRequirements; 892 893 // VK_KHR_surface 894 PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR; 895 PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR; 896 PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR; 897 PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR; 898 PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR; 899 900 // VK_KHR_swapchain 901 PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR; 902 PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR; 903 PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR; 904 PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR; 905 PFN_vkQueuePresentKHR vkQueuePresentKHR; 906 PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR; 907 PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR; 908 PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR; 909 PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR; 910 911 // VK_KHR_display 912 PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR; 913 PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR; 914 PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR; 915 PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR; 916 PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR; 917 PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR; 918 PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR; 919 920 // VK_KHR_display_swapchain 921 PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR; 922 923 // VK_KHR_external_memory_fd 924 PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR; 925 PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR; 926 927 // VK_KHR_external_semaphore_fd 928 PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR; 929 PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR; 930 931 // VK_KHR_push_descriptor 932 PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR; 933 PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR; 934 935 // VK_KHR_shared_presentable_image 936 PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR; 937 938 // VK_KHR_external_fence_fd 939 PFN_vkImportFenceFdKHR vkImportFenceFdKHR; 940 PFN_vkGetFenceFdKHR vkGetFenceFdKHR; 941 942 // VK_KHR_performance_query 943 PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR; 944 PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR; 945 PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR; 946 PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR; 947 948 // VK_KHR_get_surface_capabilities2 949 PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR; 950 PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR; 951 952 // VK_KHR_get_display_properties2 953 PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR; 954 PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR; 955 PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR; 956 PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR; 957 958 // VK_KHR_fragment_shading_rate 959 PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR; 960 PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR; 961 962 // VK_KHR_present_wait 963 PFN_vkWaitForPresentKHR vkWaitForPresentKHR; 964 965 // VK_KHR_deferred_host_operations 966 PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR; 967 PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR; 968 PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR; 969 PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR; 970 PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR; 971 972 // VK_KHR_pipeline_executable_properties 973 PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR; 974 PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR; 975 PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR; 976 977 // VK_KHR_synchronization2 978 PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD; 979 PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV; 980 981 // VK_KHR_ray_tracing_maintenance1 982 PFN_vkCmdTraceRaysIndirect2KHR vkCmdTraceRaysIndirect2KHR; 983 984 // VK_EXT_debug_report 985 PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT; 986 PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT; 987 PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT; 988 989 // VK_EXT_debug_marker 990 PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT; 991 PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT; 992 PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT; 993 PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT; 994 PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT; 995 996 // VK_EXT_transform_feedback 997 PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT; 998 PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT; 999 PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT; 1000 PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT; 1001 PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT; 1002 PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT; 1003 1004 // VK_NVX_binary_import 1005 PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX; 1006 PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX; 1007 PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX; 1008 PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX; 1009 PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX; 1010 1011 // VK_NVX_image_view_handle 1012 PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX; 1013 PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX; 1014 1015 // VK_AMD_shader_info 1016 PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD; 1017 1018 // VK_NV_external_memory_capabilities 1019 PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV; 1020 1021 // VK_EXT_conditional_rendering 1022 PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT; 1023 PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT; 1024 1025 // VK_NV_clip_space_w_scaling 1026 PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV; 1027 1028 // VK_EXT_direct_mode_display 1029 PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT; 1030 1031 // VK_EXT_display_surface_counter 1032 PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT; 1033 1034 // VK_EXT_display_control 1035 PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT; 1036 PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT; 1037 PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT; 1038 PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT; 1039 1040 // VK_GOOGLE_display_timing 1041 PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE; 1042 PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE; 1043 1044 // VK_EXT_discard_rectangles 1045 PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT; 1046 1047 // VK_EXT_hdr_metadata 1048 PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT; 1049 1050 // VK_EXT_debug_utils 1051 PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT; 1052 PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT; 1053 PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT; 1054 PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT; 1055 PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT; 1056 PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT; 1057 PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT; 1058 PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT; 1059 PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT; 1060 PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT; 1061 PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT; 1062 1063 // VK_EXT_sample_locations 1064 PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT; 1065 PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT; 1066 1067 // VK_EXT_image_drm_format_modifier 1068 PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT; 1069 1070 // VK_EXT_validation_cache 1071 PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT; 1072 PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT; 1073 PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT; 1074 PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT; 1075 1076 // VK_NV_shading_rate_image 1077 PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV; 1078 PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV; 1079 PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV; 1080 1081 // VK_NV_ray_tracing 1082 PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV; 1083 PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV; 1084 PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV; 1085 PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV; 1086 PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV; 1087 PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV; 1088 PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV; 1089 PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV; 1090 PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR; 1091 PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV; 1092 PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV; 1093 PFN_vkCompileDeferredNV vkCompileDeferredNV; 1094 1095 // VK_EXT_external_memory_host 1096 PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT; 1097 1098 // VK_AMD_buffer_marker 1099 PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD; 1100 1101 // VK_EXT_calibrated_timestamps 1102 PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT; 1103 PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT; 1104 1105 // VK_NV_mesh_shader 1106 PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV; 1107 PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV; 1108 PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV; 1109 1110 // VK_NV_scissor_exclusive 1111 PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV; 1112 1113 // VK_NV_device_diagnostic_checkpoints 1114 PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV; 1115 PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV; 1116 1117 // VK_INTEL_performance_query 1118 PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL; 1119 PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL; 1120 PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL; 1121 PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL; 1122 PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL; 1123 PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL; 1124 PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL; 1125 PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL; 1126 PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL; 1127 1128 // VK_AMD_display_native_hdr 1129 PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD; 1130 1131 // VK_NV_cooperative_matrix 1132 PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV; 1133 1134 // VK_NV_coverage_reduction_mode 1135 PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV; 1136 1137 // VK_EXT_headless_surface 1138 PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT; 1139 1140 // VK_EXT_line_rasterization 1141 PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT; 1142 1143 // VK_EXT_swapchain_maintenance1 1144 PFN_vkReleaseSwapchainImagesEXT vkReleaseSwapchainImagesEXT; 1145 1146 // VK_NV_device_generated_commands 1147 PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV; 1148 PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV; 1149 PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV; 1150 PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV; 1151 PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV; 1152 PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV; 1153 1154 // VK_EXT_acquire_drm_display 1155 PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT; 1156 PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT; 1157 1158 // VK_EXT_descriptor_buffer 1159 PFN_vkGetDescriptorSetLayoutSizeEXT vkGetDescriptorSetLayoutSizeEXT; 1160 PFN_vkGetDescriptorSetLayoutBindingOffsetEXT vkGetDescriptorSetLayoutBindingOffsetEXT; 1161 PFN_vkGetDescriptorEXT vkGetDescriptorEXT; 1162 PFN_vkCmdBindDescriptorBuffersEXT vkCmdBindDescriptorBuffersEXT; 1163 PFN_vkCmdSetDescriptorBufferOffsetsEXT vkCmdSetDescriptorBufferOffsetsEXT; 1164 PFN_vkCmdBindDescriptorBufferEmbeddedSamplersEXT vkCmdBindDescriptorBufferEmbeddedSamplersEXT; 1165 PFN_vkGetBufferOpaqueCaptureDescriptorDataEXT vkGetBufferOpaqueCaptureDescriptorDataEXT; 1166 PFN_vkGetImageOpaqueCaptureDescriptorDataEXT vkGetImageOpaqueCaptureDescriptorDataEXT; 1167 PFN_vkGetImageViewOpaqueCaptureDescriptorDataEXT vkGetImageViewOpaqueCaptureDescriptorDataEXT; 1168 PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT vkGetSamplerOpaqueCaptureDescriptorDataEXT; 1169 PFN_vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT; 1170 1171 // VK_NV_fragment_shading_rate_enums 1172 PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV; 1173 1174 // VK_EXT_image_compression_control 1175 PFN_vkGetImageSubresourceLayout2EXT vkGetImageSubresourceLayout2EXT; 1176 1177 // VK_EXT_device_fault 1178 PFN_vkGetDeviceFaultInfoEXT vkGetDeviceFaultInfoEXT; 1179 1180 // VK_EXT_vertex_input_dynamic_state 1181 PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT; 1182 1183 // VK_HUAWEI_subpass_shading 1184 PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI; 1185 PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI; 1186 1187 // VK_HUAWEI_invocation_mask 1188 PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI; 1189 1190 // VK_NV_external_memory_rdma 1191 PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV; 1192 1193 // VK_EXT_pipeline_properties 1194 PFN_vkGetPipelinePropertiesEXT vkGetPipelinePropertiesEXT; 1195 1196 // VK_EXT_extended_dynamic_state2 1197 PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT; 1198 PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT; 1199 1200 // VK_EXT_color_write_enable 1201 PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT; 1202 1203 // VK_EXT_multi_draw 1204 PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT; 1205 PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT; 1206 1207 // VK_EXT_opacity_micromap 1208 PFN_vkCreateMicromapEXT vkCreateMicromapEXT; 1209 PFN_vkDestroyMicromapEXT vkDestroyMicromapEXT; 1210 PFN_vkCmdBuildMicromapsEXT vkCmdBuildMicromapsEXT; 1211 PFN_vkBuildMicromapsEXT vkBuildMicromapsEXT; 1212 PFN_vkCopyMicromapEXT vkCopyMicromapEXT; 1213 PFN_vkCopyMicromapToMemoryEXT vkCopyMicromapToMemoryEXT; 1214 PFN_vkCopyMemoryToMicromapEXT vkCopyMemoryToMicromapEXT; 1215 PFN_vkWriteMicromapsPropertiesEXT vkWriteMicromapsPropertiesEXT; 1216 PFN_vkCmdCopyMicromapEXT vkCmdCopyMicromapEXT; 1217 PFN_vkCmdCopyMicromapToMemoryEXT vkCmdCopyMicromapToMemoryEXT; 1218 PFN_vkCmdCopyMemoryToMicromapEXT vkCmdCopyMemoryToMicromapEXT; 1219 PFN_vkCmdWriteMicromapsPropertiesEXT vkCmdWriteMicromapsPropertiesEXT; 1220 PFN_vkGetDeviceMicromapCompatibilityEXT vkGetDeviceMicromapCompatibilityEXT; 1221 PFN_vkGetMicromapBuildSizesEXT vkGetMicromapBuildSizesEXT; 1222 1223 // VK_EXT_pageable_device_local_memory 1224 PFN_vkSetDeviceMemoryPriorityEXT vkSetDeviceMemoryPriorityEXT; 1225 1226 // VK_VALVE_descriptor_set_host_mapping 1227 PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE vkGetDescriptorSetLayoutHostMappingInfoVALVE; 1228 PFN_vkGetDescriptorSetHostMappingVALVE vkGetDescriptorSetHostMappingVALVE; 1229 1230 // VK_NV_copy_memory_indirect 1231 PFN_vkCmdCopyMemoryIndirectNV vkCmdCopyMemoryIndirectNV; 1232 PFN_vkCmdCopyMemoryToImageIndirectNV vkCmdCopyMemoryToImageIndirectNV; 1233 1234 // VK_NV_memory_decompression 1235 PFN_vkCmdDecompressMemoryNV vkCmdDecompressMemoryNV; 1236 PFN_vkCmdDecompressMemoryIndirectCountNV vkCmdDecompressMemoryIndirectCountNV; 1237 1238 // VK_EXT_extended_dynamic_state3 1239 PFN_vkCmdSetTessellationDomainOriginEXT vkCmdSetTessellationDomainOriginEXT; 1240 PFN_vkCmdSetDepthClampEnableEXT vkCmdSetDepthClampEnableEXT; 1241 PFN_vkCmdSetPolygonModeEXT vkCmdSetPolygonModeEXT; 1242 PFN_vkCmdSetRasterizationSamplesEXT vkCmdSetRasterizationSamplesEXT; 1243 PFN_vkCmdSetSampleMaskEXT vkCmdSetSampleMaskEXT; 1244 PFN_vkCmdSetAlphaToCoverageEnableEXT vkCmdSetAlphaToCoverageEnableEXT; 1245 PFN_vkCmdSetAlphaToOneEnableEXT vkCmdSetAlphaToOneEnableEXT; 1246 PFN_vkCmdSetLogicOpEnableEXT vkCmdSetLogicOpEnableEXT; 1247 PFN_vkCmdSetColorBlendEnableEXT vkCmdSetColorBlendEnableEXT; 1248 PFN_vkCmdSetColorBlendEquationEXT vkCmdSetColorBlendEquationEXT; 1249 PFN_vkCmdSetColorWriteMaskEXT vkCmdSetColorWriteMaskEXT; 1250 PFN_vkCmdSetRasterizationStreamEXT vkCmdSetRasterizationStreamEXT; 1251 PFN_vkCmdSetConservativeRasterizationModeEXT vkCmdSetConservativeRasterizationModeEXT; 1252 PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT vkCmdSetExtraPrimitiveOverestimationSizeEXT; 1253 PFN_vkCmdSetDepthClipEnableEXT vkCmdSetDepthClipEnableEXT; 1254 PFN_vkCmdSetSampleLocationsEnableEXT vkCmdSetSampleLocationsEnableEXT; 1255 PFN_vkCmdSetColorBlendAdvancedEXT vkCmdSetColorBlendAdvancedEXT; 1256 PFN_vkCmdSetProvokingVertexModeEXT vkCmdSetProvokingVertexModeEXT; 1257 PFN_vkCmdSetLineRasterizationModeEXT vkCmdSetLineRasterizationModeEXT; 1258 PFN_vkCmdSetLineStippleEnableEXT vkCmdSetLineStippleEnableEXT; 1259 PFN_vkCmdSetDepthClipNegativeOneToOneEXT vkCmdSetDepthClipNegativeOneToOneEXT; 1260 PFN_vkCmdSetViewportWScalingEnableNV vkCmdSetViewportWScalingEnableNV; 1261 PFN_vkCmdSetViewportSwizzleNV vkCmdSetViewportSwizzleNV; 1262 PFN_vkCmdSetCoverageToColorEnableNV vkCmdSetCoverageToColorEnableNV; 1263 PFN_vkCmdSetCoverageToColorLocationNV vkCmdSetCoverageToColorLocationNV; 1264 PFN_vkCmdSetCoverageModulationModeNV vkCmdSetCoverageModulationModeNV; 1265 PFN_vkCmdSetCoverageModulationTableEnableNV vkCmdSetCoverageModulationTableEnableNV; 1266 PFN_vkCmdSetCoverageModulationTableNV vkCmdSetCoverageModulationTableNV; 1267 PFN_vkCmdSetShadingRateImageEnableNV vkCmdSetShadingRateImageEnableNV; 1268 PFN_vkCmdSetRepresentativeFragmentTestEnableNV vkCmdSetRepresentativeFragmentTestEnableNV; 1269 PFN_vkCmdSetCoverageReductionModeNV vkCmdSetCoverageReductionModeNV; 1270 1271 // VK_EXT_shader_module_identifier 1272 PFN_vkGetShaderModuleIdentifierEXT vkGetShaderModuleIdentifierEXT; 1273 PFN_vkGetShaderModuleCreateInfoIdentifierEXT vkGetShaderModuleCreateInfoIdentifierEXT; 1274 1275 // VK_NV_optical_flow 1276 PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV vkGetPhysicalDeviceOpticalFlowImageFormatsNV; 1277 PFN_vkCreateOpticalFlowSessionNV vkCreateOpticalFlowSessionNV; 1278 PFN_vkDestroyOpticalFlowSessionNV vkDestroyOpticalFlowSessionNV; 1279 PFN_vkBindOpticalFlowSessionImageNV vkBindOpticalFlowSessionImageNV; 1280 PFN_vkCmdOpticalFlowExecuteNV vkCmdOpticalFlowExecuteNV; 1281 1282 // VK_QCOM_tile_properties 1283 PFN_vkGetFramebufferTilePropertiesQCOM vkGetFramebufferTilePropertiesQCOM; 1284 PFN_vkGetDynamicRenderingTilePropertiesQCOM vkGetDynamicRenderingTilePropertiesQCOM; 1285 1286 // VK_KHR_acceleration_structure 1287 PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR; 1288 PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR; 1289 PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR; 1290 PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR; 1291 PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR; 1292 PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR; 1293 PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR; 1294 PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR; 1295 PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR; 1296 PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR; 1297 PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR; 1298 PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR; 1299 PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR; 1300 PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR; 1301 PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR; 1302 PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR; 1303 1304 // VK_KHR_ray_tracing_pipeline 1305 PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR; 1306 PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR; 1307 PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR; 1308 PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR; 1309 PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR; 1310 PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR; 1311 1312 // VK_EXT_mesh_shader 1313 PFN_vkCmdDrawMeshTasksEXT vkCmdDrawMeshTasksEXT; 1314 PFN_vkCmdDrawMeshTasksIndirectEXT vkCmdDrawMeshTasksIndirectEXT; 1315 PFN_vkCmdDrawMeshTasksIndirectCountEXT vkCmdDrawMeshTasksIndirectCountEXT; 1316 1317 // VK_KHR_dynamic_rendering 1318 alias vkCmdBeginRenderingKHR = vkCmdBeginRendering; 1319 alias vkCmdEndRenderingKHR = vkCmdEndRendering; 1320 1321 // VK_KHR_get_physical_device_properties2 1322 alias vkGetPhysicalDeviceFeatures2KHR = vkGetPhysicalDeviceFeatures2; 1323 alias vkGetPhysicalDeviceProperties2KHR = vkGetPhysicalDeviceProperties2; 1324 alias vkGetPhysicalDeviceFormatProperties2KHR = vkGetPhysicalDeviceFormatProperties2; 1325 alias vkGetPhysicalDeviceImageFormatProperties2KHR = vkGetPhysicalDeviceImageFormatProperties2; 1326 alias vkGetPhysicalDeviceQueueFamilyProperties2KHR = vkGetPhysicalDeviceQueueFamilyProperties2; 1327 alias vkGetPhysicalDeviceMemoryProperties2KHR = vkGetPhysicalDeviceMemoryProperties2; 1328 alias vkGetPhysicalDeviceSparseImageFormatProperties2KHR = vkGetPhysicalDeviceSparseImageFormatProperties2; 1329 1330 // VK_KHR_device_group 1331 alias vkGetDeviceGroupPeerMemoryFeaturesKHR = vkGetDeviceGroupPeerMemoryFeatures; 1332 alias vkCmdSetDeviceMaskKHR = vkCmdSetDeviceMask; 1333 alias vkCmdDispatchBaseKHR = vkCmdDispatchBase; 1334 1335 // VK_KHR_maintenance1 1336 alias vkTrimCommandPoolKHR = vkTrimCommandPool; 1337 1338 // VK_KHR_device_group_creation 1339 alias vkEnumeratePhysicalDeviceGroupsKHR = vkEnumeratePhysicalDeviceGroups; 1340 1341 // VK_KHR_external_memory_capabilities 1342 alias vkGetPhysicalDeviceExternalBufferPropertiesKHR = vkGetPhysicalDeviceExternalBufferProperties; 1343 1344 // VK_KHR_external_semaphore_capabilities 1345 alias vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = vkGetPhysicalDeviceExternalSemaphoreProperties; 1346 1347 // VK_KHR_descriptor_update_template 1348 alias vkCreateDescriptorUpdateTemplateKHR = vkCreateDescriptorUpdateTemplate; 1349 alias vkDestroyDescriptorUpdateTemplateKHR = vkDestroyDescriptorUpdateTemplate; 1350 alias vkUpdateDescriptorSetWithTemplateKHR = vkUpdateDescriptorSetWithTemplate; 1351 1352 // VK_KHR_create_renderpass2 1353 alias vkCreateRenderPass2KHR = vkCreateRenderPass2; 1354 alias vkCmdBeginRenderPass2KHR = vkCmdBeginRenderPass2; 1355 alias vkCmdNextSubpass2KHR = vkCmdNextSubpass2; 1356 alias vkCmdEndRenderPass2KHR = vkCmdEndRenderPass2; 1357 1358 // VK_KHR_external_fence_capabilities 1359 alias vkGetPhysicalDeviceExternalFencePropertiesKHR = vkGetPhysicalDeviceExternalFenceProperties; 1360 1361 // VK_KHR_get_memory_requirements2 1362 alias vkGetImageMemoryRequirements2KHR = vkGetImageMemoryRequirements2; 1363 alias vkGetBufferMemoryRequirements2KHR = vkGetBufferMemoryRequirements2; 1364 alias vkGetImageSparseMemoryRequirements2KHR = vkGetImageSparseMemoryRequirements2; 1365 1366 // VK_KHR_sampler_ycbcr_conversion 1367 alias vkCreateSamplerYcbcrConversionKHR = vkCreateSamplerYcbcrConversion; 1368 alias vkDestroySamplerYcbcrConversionKHR = vkDestroySamplerYcbcrConversion; 1369 1370 // VK_KHR_bind_memory2 1371 alias vkBindBufferMemory2KHR = vkBindBufferMemory2; 1372 alias vkBindImageMemory2KHR = vkBindImageMemory2; 1373 1374 // VK_KHR_maintenance3 1375 alias vkGetDescriptorSetLayoutSupportKHR = vkGetDescriptorSetLayoutSupport; 1376 1377 // VK_KHR_draw_indirect_count 1378 alias vkCmdDrawIndirectCountKHR = vkCmdDrawIndirectCount; 1379 alias vkCmdDrawIndexedIndirectCountKHR = vkCmdDrawIndexedIndirectCount; 1380 1381 // VK_KHR_timeline_semaphore 1382 alias vkGetSemaphoreCounterValueKHR = vkGetSemaphoreCounterValue; 1383 alias vkWaitSemaphoresKHR = vkWaitSemaphores; 1384 alias vkSignalSemaphoreKHR = vkSignalSemaphore; 1385 1386 // VK_KHR_buffer_device_address 1387 alias vkGetBufferDeviceAddressKHR = vkGetBufferDeviceAddress; 1388 alias vkGetBufferOpaqueCaptureAddressKHR = vkGetBufferOpaqueCaptureAddress; 1389 alias vkGetDeviceMemoryOpaqueCaptureAddressKHR = vkGetDeviceMemoryOpaqueCaptureAddress; 1390 1391 // VK_KHR_synchronization2 1392 alias vkCmdSetEvent2KHR = vkCmdSetEvent2; 1393 alias vkCmdResetEvent2KHR = vkCmdResetEvent2; 1394 alias vkCmdWaitEvents2KHR = vkCmdWaitEvents2; 1395 alias vkCmdPipelineBarrier2KHR = vkCmdPipelineBarrier2; 1396 alias vkCmdWriteTimestamp2KHR = vkCmdWriteTimestamp2; 1397 alias vkQueueSubmit2KHR = vkQueueSubmit2; 1398 1399 // VK_KHR_copy_commands2 1400 alias vkCmdCopyBuffer2KHR = vkCmdCopyBuffer2; 1401 alias vkCmdCopyImage2KHR = vkCmdCopyImage2; 1402 alias vkCmdCopyBufferToImage2KHR = vkCmdCopyBufferToImage2; 1403 alias vkCmdCopyImageToBuffer2KHR = vkCmdCopyImageToBuffer2; 1404 alias vkCmdBlitImage2KHR = vkCmdBlitImage2; 1405 alias vkCmdResolveImage2KHR = vkCmdResolveImage2; 1406 1407 // VK_KHR_maintenance4 1408 alias vkGetDeviceBufferMemoryRequirementsKHR = vkGetDeviceBufferMemoryRequirements; 1409 alias vkGetDeviceImageMemoryRequirementsKHR = vkGetDeviceImageMemoryRequirements; 1410 alias vkGetDeviceImageSparseMemoryRequirementsKHR = vkGetDeviceImageSparseMemoryRequirements; 1411 1412 // VK_AMD_draw_indirect_count 1413 alias vkCmdDrawIndirectCountAMD = vkCmdDrawIndirectCount; 1414 alias vkCmdDrawIndexedIndirectCountAMD = vkCmdDrawIndexedIndirectCount; 1415 1416 // VK_NV_ray_tracing 1417 alias vkGetRayTracingShaderGroupHandlesNV = vkGetRayTracingShaderGroupHandlesKHR; 1418 1419 // VK_EXT_buffer_device_address 1420 alias vkGetBufferDeviceAddressEXT = vkGetBufferDeviceAddress; 1421 1422 // VK_EXT_tooling_info 1423 alias vkGetPhysicalDeviceToolPropertiesEXT = vkGetPhysicalDeviceToolProperties; 1424 1425 // VK_EXT_host_query_reset 1426 alias vkResetQueryPoolEXT = vkResetQueryPool; 1427 1428 // VK_EXT_extended_dynamic_state 1429 alias vkCmdSetCullModeEXT = vkCmdSetCullMode; 1430 alias vkCmdSetFrontFaceEXT = vkCmdSetFrontFace; 1431 alias vkCmdSetPrimitiveTopologyEXT = vkCmdSetPrimitiveTopology; 1432 alias vkCmdSetViewportWithCountEXT = vkCmdSetViewportWithCount; 1433 alias vkCmdSetScissorWithCountEXT = vkCmdSetScissorWithCount; 1434 alias vkCmdBindVertexBuffers2EXT = vkCmdBindVertexBuffers2; 1435 alias vkCmdSetDepthTestEnableEXT = vkCmdSetDepthTestEnable; 1436 alias vkCmdSetDepthWriteEnableEXT = vkCmdSetDepthWriteEnable; 1437 alias vkCmdSetDepthCompareOpEXT = vkCmdSetDepthCompareOp; 1438 alias vkCmdSetDepthBoundsTestEnableEXT = vkCmdSetDepthBoundsTestEnable; 1439 alias vkCmdSetStencilTestEnableEXT = vkCmdSetStencilTestEnable; 1440 alias vkCmdSetStencilOpEXT = vkCmdSetStencilOp; 1441 1442 // VK_EXT_private_data 1443 alias vkCreatePrivateDataSlotEXT = vkCreatePrivateDataSlot; 1444 alias vkDestroyPrivateDataSlotEXT = vkDestroyPrivateDataSlot; 1445 alias vkSetPrivateDataEXT = vkSetPrivateData; 1446 alias vkGetPrivateDataEXT = vkGetPrivateData; 1447 1448 // VK_EXT_extended_dynamic_state2 1449 alias vkCmdSetRasterizerDiscardEnableEXT = vkCmdSetRasterizerDiscardEnable; 1450 alias vkCmdSetDepthBiasEnableEXT = vkCmdSetDepthBiasEnable; 1451 alias vkCmdSetPrimitiveRestartEnableEXT = vkCmdSetPrimitiveRestartEnable; 1452 } 1453 1454 1455 /// sets vkCreateInstance function pointer and acquires basic functions to retrieve information about the implementation 1456 /// and create an instance: vkEnumerateInstanceExtensionProperties, vkEnumerateInstanceLayerProperties, vkCreateInstance 1457 void loadGlobalLevelFunctions( PFN_vkGetInstanceProcAddr getInstanceProcAddr ) { 1458 vkGetInstanceProcAddr = getInstanceProcAddr; 1459 1460 // VK_VERSION_1_0 1461 vkCreateInstance = cast( PFN_vkCreateInstance ) vkGetInstanceProcAddr( null, "vkCreateInstance" ); 1462 vkEnumerateInstanceExtensionProperties = cast( PFN_vkEnumerateInstanceExtensionProperties ) vkGetInstanceProcAddr( null, "vkEnumerateInstanceExtensionProperties" ); 1463 vkEnumerateInstanceLayerProperties = cast( PFN_vkEnumerateInstanceLayerProperties ) vkGetInstanceProcAddr( null, "vkEnumerateInstanceLayerProperties" ); 1464 1465 // VK_VERSION_1_1 1466 vkEnumerateInstanceVersion = cast( PFN_vkEnumerateInstanceVersion ) vkGetInstanceProcAddr( null, "vkEnumerateInstanceVersion" ); 1467 } 1468 1469 1470 /// with a valid VkInstance call this function to retrieve additional VkInstance, VkPhysicalDevice, ... related functions 1471 void loadInstanceLevelFunctions( VkInstance instance ) { 1472 assert( vkGetInstanceProcAddr !is null, "Function pointer vkGetInstanceProcAddr is null!\nCall loadGlobalLevelFunctions -> loadInstanceLevelFunctions" ); 1473 1474 // VK_VERSION_1_0 1475 vkDestroyInstance = cast( PFN_vkDestroyInstance ) vkGetInstanceProcAddr( instance, "vkDestroyInstance" ); 1476 vkEnumeratePhysicalDevices = cast( PFN_vkEnumeratePhysicalDevices ) vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDevices" ); 1477 vkGetPhysicalDeviceFeatures = cast( PFN_vkGetPhysicalDeviceFeatures ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures" ); 1478 vkGetPhysicalDeviceFormatProperties = cast( PFN_vkGetPhysicalDeviceFormatProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties" ); 1479 vkGetPhysicalDeviceImageFormatProperties = cast( PFN_vkGetPhysicalDeviceImageFormatProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties" ); 1480 vkGetPhysicalDeviceProperties = cast( PFN_vkGetPhysicalDeviceProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties" ); 1481 vkGetPhysicalDeviceQueueFamilyProperties = cast( PFN_vkGetPhysicalDeviceQueueFamilyProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties" ); 1482 vkGetPhysicalDeviceMemoryProperties = cast( PFN_vkGetPhysicalDeviceMemoryProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties" ); 1483 vkGetDeviceProcAddr = cast( PFN_vkGetDeviceProcAddr ) vkGetInstanceProcAddr( instance, "vkGetDeviceProcAddr" ); 1484 vkCreateDevice = cast( PFN_vkCreateDevice ) vkGetInstanceProcAddr( instance, "vkCreateDevice" ); 1485 vkEnumerateDeviceExtensionProperties = cast( PFN_vkEnumerateDeviceExtensionProperties ) vkGetInstanceProcAddr( instance, "vkEnumerateDeviceExtensionProperties" ); 1486 vkEnumerateDeviceLayerProperties = cast( PFN_vkEnumerateDeviceLayerProperties ) vkGetInstanceProcAddr( instance, "vkEnumerateDeviceLayerProperties" ); 1487 vkGetPhysicalDeviceSparseImageFormatProperties = cast( PFN_vkGetPhysicalDeviceSparseImageFormatProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties" ); 1488 1489 // VK_VERSION_1_1 1490 vkEnumeratePhysicalDeviceGroups = cast( PFN_vkEnumeratePhysicalDeviceGroups ) vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroups" ); 1491 vkGetPhysicalDeviceFeatures2 = cast( PFN_vkGetPhysicalDeviceFeatures2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2" ); 1492 vkGetPhysicalDeviceProperties2 = cast( PFN_vkGetPhysicalDeviceProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2" ); 1493 vkGetPhysicalDeviceFormatProperties2 = cast( PFN_vkGetPhysicalDeviceFormatProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2" ); 1494 vkGetPhysicalDeviceImageFormatProperties2 = cast( PFN_vkGetPhysicalDeviceImageFormatProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2" ); 1495 vkGetPhysicalDeviceQueueFamilyProperties2 = cast( PFN_vkGetPhysicalDeviceQueueFamilyProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2" ); 1496 vkGetPhysicalDeviceMemoryProperties2 = cast( PFN_vkGetPhysicalDeviceMemoryProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2" ); 1497 vkGetPhysicalDeviceSparseImageFormatProperties2 = cast( PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2" ); 1498 vkGetPhysicalDeviceExternalBufferProperties = cast( PFN_vkGetPhysicalDeviceExternalBufferProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferProperties" ); 1499 vkGetPhysicalDeviceExternalFenceProperties = cast( PFN_vkGetPhysicalDeviceExternalFenceProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFenceProperties" ); 1500 vkGetPhysicalDeviceExternalSemaphoreProperties = cast( PFN_vkGetPhysicalDeviceExternalSemaphoreProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphoreProperties" ); 1501 1502 // VK_VERSION_1_3 1503 vkGetPhysicalDeviceToolProperties = cast( PFN_vkGetPhysicalDeviceToolProperties ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceToolProperties" ); 1504 1505 // VK_KHR_surface 1506 vkDestroySurfaceKHR = cast( PFN_vkDestroySurfaceKHR ) vkGetInstanceProcAddr( instance, "vkDestroySurfaceKHR" ); 1507 vkGetPhysicalDeviceSurfaceSupportKHR = cast( PFN_vkGetPhysicalDeviceSurfaceSupportKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceSupportKHR" ); 1508 vkGetPhysicalDeviceSurfaceCapabilitiesKHR = cast( PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR" ); 1509 vkGetPhysicalDeviceSurfaceFormatsKHR = cast( PFN_vkGetPhysicalDeviceSurfaceFormatsKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormatsKHR" ); 1510 vkGetPhysicalDeviceSurfacePresentModesKHR = cast( PFN_vkGetPhysicalDeviceSurfacePresentModesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModesKHR" ); 1511 1512 // VK_KHR_swapchain 1513 vkGetPhysicalDevicePresentRectanglesKHR = cast( PFN_vkGetPhysicalDevicePresentRectanglesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDevicePresentRectanglesKHR" ); 1514 1515 // VK_KHR_display 1516 vkGetPhysicalDeviceDisplayPropertiesKHR = cast( PFN_vkGetPhysicalDeviceDisplayPropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPropertiesKHR" ); 1517 vkGetPhysicalDeviceDisplayPlanePropertiesKHR = cast( PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR" ); 1518 vkGetDisplayPlaneSupportedDisplaysKHR = cast( PFN_vkGetDisplayPlaneSupportedDisplaysKHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneSupportedDisplaysKHR" ); 1519 vkGetDisplayModePropertiesKHR = cast( PFN_vkGetDisplayModePropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayModePropertiesKHR" ); 1520 vkCreateDisplayModeKHR = cast( PFN_vkCreateDisplayModeKHR ) vkGetInstanceProcAddr( instance, "vkCreateDisplayModeKHR" ); 1521 vkGetDisplayPlaneCapabilitiesKHR = cast( PFN_vkGetDisplayPlaneCapabilitiesKHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilitiesKHR" ); 1522 vkCreateDisplayPlaneSurfaceKHR = cast( PFN_vkCreateDisplayPlaneSurfaceKHR ) vkGetInstanceProcAddr( instance, "vkCreateDisplayPlaneSurfaceKHR" ); 1523 1524 // VK_KHR_performance_query 1525 vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = cast( PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR ) vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" ); 1526 vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = cast( PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" ); 1527 1528 // VK_KHR_get_surface_capabilities2 1529 vkGetPhysicalDeviceSurfaceCapabilities2KHR = cast( PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2KHR" ); 1530 vkGetPhysicalDeviceSurfaceFormats2KHR = cast( PFN_vkGetPhysicalDeviceSurfaceFormats2KHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormats2KHR" ); 1531 1532 // VK_KHR_get_display_properties2 1533 vkGetPhysicalDeviceDisplayProperties2KHR = cast( PFN_vkGetPhysicalDeviceDisplayProperties2KHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayProperties2KHR" ); 1534 vkGetPhysicalDeviceDisplayPlaneProperties2KHR = cast( PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR" ); 1535 vkGetDisplayModeProperties2KHR = cast( PFN_vkGetDisplayModeProperties2KHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayModeProperties2KHR" ); 1536 vkGetDisplayPlaneCapabilities2KHR = cast( PFN_vkGetDisplayPlaneCapabilities2KHR ) vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilities2KHR" ); 1537 1538 // VK_KHR_fragment_shading_rate 1539 vkGetPhysicalDeviceFragmentShadingRatesKHR = cast( PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFragmentShadingRatesKHR" ); 1540 1541 // VK_EXT_debug_report 1542 vkCreateDebugReportCallbackEXT = cast( PFN_vkCreateDebugReportCallbackEXT ) vkGetInstanceProcAddr( instance, "vkCreateDebugReportCallbackEXT" ); 1543 vkDestroyDebugReportCallbackEXT = cast( PFN_vkDestroyDebugReportCallbackEXT ) vkGetInstanceProcAddr( instance, "vkDestroyDebugReportCallbackEXT" ); 1544 vkDebugReportMessageEXT = cast( PFN_vkDebugReportMessageEXT ) vkGetInstanceProcAddr( instance, "vkDebugReportMessageEXT" ); 1545 1546 // VK_NV_external_memory_capabilities 1547 vkGetPhysicalDeviceExternalImageFormatPropertiesNV = cast( PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV" ); 1548 1549 // VK_EXT_direct_mode_display 1550 vkReleaseDisplayEXT = cast( PFN_vkReleaseDisplayEXT ) vkGetInstanceProcAddr( instance, "vkReleaseDisplayEXT" ); 1551 1552 // VK_EXT_display_surface_counter 1553 vkGetPhysicalDeviceSurfaceCapabilities2EXT = cast( PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2EXT" ); 1554 1555 // VK_EXT_debug_utils 1556 vkCreateDebugUtilsMessengerEXT = cast( PFN_vkCreateDebugUtilsMessengerEXT ) vkGetInstanceProcAddr( instance, "vkCreateDebugUtilsMessengerEXT" ); 1557 vkDestroyDebugUtilsMessengerEXT = cast( PFN_vkDestroyDebugUtilsMessengerEXT ) vkGetInstanceProcAddr( instance, "vkDestroyDebugUtilsMessengerEXT" ); 1558 vkSubmitDebugUtilsMessageEXT = cast( PFN_vkSubmitDebugUtilsMessageEXT ) vkGetInstanceProcAddr( instance, "vkSubmitDebugUtilsMessageEXT" ); 1559 1560 // VK_EXT_sample_locations 1561 vkGetPhysicalDeviceMultisamplePropertiesEXT = cast( PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMultisamplePropertiesEXT" ); 1562 1563 // VK_EXT_calibrated_timestamps 1564 vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = cast( PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT" ); 1565 1566 // VK_NV_cooperative_matrix 1567 vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = cast( PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV" ); 1568 1569 // VK_NV_coverage_reduction_mode 1570 vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = cast( PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV" ); 1571 1572 // VK_EXT_headless_surface 1573 vkCreateHeadlessSurfaceEXT = cast( PFN_vkCreateHeadlessSurfaceEXT ) vkGetInstanceProcAddr( instance, "vkCreateHeadlessSurfaceEXT" ); 1574 1575 // VK_EXT_acquire_drm_display 1576 vkAcquireDrmDisplayEXT = cast( PFN_vkAcquireDrmDisplayEXT ) vkGetInstanceProcAddr( instance, "vkAcquireDrmDisplayEXT" ); 1577 vkGetDrmDisplayEXT = cast( PFN_vkGetDrmDisplayEXT ) vkGetInstanceProcAddr( instance, "vkGetDrmDisplayEXT" ); 1578 1579 // VK_NV_optical_flow 1580 vkGetPhysicalDeviceOpticalFlowImageFormatsNV = cast( PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV ) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceOpticalFlowImageFormatsNV" ); 1581 } 1582 1583 1584 /// with a valid VkInstance call this function to retrieve VkDevice, VkQueue and VkCommandBuffer related functions 1585 /// the functions call indirectly through the VkInstance and will be internally dispatched by the implementation 1586 /// use loadDeviceLevelFunctions( VkDevice device ) bellow to avoid this indirection and get the pointers directly form a VkDevice 1587 void loadDeviceLevelFunctions( VkInstance instance ) { 1588 assert( vkGetInstanceProcAddr !is null, "Function pointer vkGetInstanceProcAddr is null!\nCall loadGlobalLevelFunctions -> loadDeviceLevelFunctions( instance )" ); 1589 1590 // VK_VERSION_1_0 1591 vkDestroyDevice = cast( PFN_vkDestroyDevice ) vkGetInstanceProcAddr( instance, "vkDestroyDevice" ); 1592 vkGetDeviceQueue = cast( PFN_vkGetDeviceQueue ) vkGetInstanceProcAddr( instance, "vkGetDeviceQueue" ); 1593 vkQueueSubmit = cast( PFN_vkQueueSubmit ) vkGetInstanceProcAddr( instance, "vkQueueSubmit" ); 1594 vkQueueWaitIdle = cast( PFN_vkQueueWaitIdle ) vkGetInstanceProcAddr( instance, "vkQueueWaitIdle" ); 1595 vkDeviceWaitIdle = cast( PFN_vkDeviceWaitIdle ) vkGetInstanceProcAddr( instance, "vkDeviceWaitIdle" ); 1596 vkAllocateMemory = cast( PFN_vkAllocateMemory ) vkGetInstanceProcAddr( instance, "vkAllocateMemory" ); 1597 vkFreeMemory = cast( PFN_vkFreeMemory ) vkGetInstanceProcAddr( instance, "vkFreeMemory" ); 1598 vkMapMemory = cast( PFN_vkMapMemory ) vkGetInstanceProcAddr( instance, "vkMapMemory" ); 1599 vkUnmapMemory = cast( PFN_vkUnmapMemory ) vkGetInstanceProcAddr( instance, "vkUnmapMemory" ); 1600 vkFlushMappedMemoryRanges = cast( PFN_vkFlushMappedMemoryRanges ) vkGetInstanceProcAddr( instance, "vkFlushMappedMemoryRanges" ); 1601 vkInvalidateMappedMemoryRanges = cast( PFN_vkInvalidateMappedMemoryRanges ) vkGetInstanceProcAddr( instance, "vkInvalidateMappedMemoryRanges" ); 1602 vkGetDeviceMemoryCommitment = cast( PFN_vkGetDeviceMemoryCommitment ) vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryCommitment" ); 1603 vkBindBufferMemory = cast( PFN_vkBindBufferMemory ) vkGetInstanceProcAddr( instance, "vkBindBufferMemory" ); 1604 vkBindImageMemory = cast( PFN_vkBindImageMemory ) vkGetInstanceProcAddr( instance, "vkBindImageMemory" ); 1605 vkGetBufferMemoryRequirements = cast( PFN_vkGetBufferMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements" ); 1606 vkGetImageMemoryRequirements = cast( PFN_vkGetImageMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements" ); 1607 vkGetImageSparseMemoryRequirements = cast( PFN_vkGetImageSparseMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements" ); 1608 vkQueueBindSparse = cast( PFN_vkQueueBindSparse ) vkGetInstanceProcAddr( instance, "vkQueueBindSparse" ); 1609 vkCreateFence = cast( PFN_vkCreateFence ) vkGetInstanceProcAddr( instance, "vkCreateFence" ); 1610 vkDestroyFence = cast( PFN_vkDestroyFence ) vkGetInstanceProcAddr( instance, "vkDestroyFence" ); 1611 vkResetFences = cast( PFN_vkResetFences ) vkGetInstanceProcAddr( instance, "vkResetFences" ); 1612 vkGetFenceStatus = cast( PFN_vkGetFenceStatus ) vkGetInstanceProcAddr( instance, "vkGetFenceStatus" ); 1613 vkWaitForFences = cast( PFN_vkWaitForFences ) vkGetInstanceProcAddr( instance, "vkWaitForFences" ); 1614 vkCreateSemaphore = cast( PFN_vkCreateSemaphore ) vkGetInstanceProcAddr( instance, "vkCreateSemaphore" ); 1615 vkDestroySemaphore = cast( PFN_vkDestroySemaphore ) vkGetInstanceProcAddr( instance, "vkDestroySemaphore" ); 1616 vkCreateEvent = cast( PFN_vkCreateEvent ) vkGetInstanceProcAddr( instance, "vkCreateEvent" ); 1617 vkDestroyEvent = cast( PFN_vkDestroyEvent ) vkGetInstanceProcAddr( instance, "vkDestroyEvent" ); 1618 vkGetEventStatus = cast( PFN_vkGetEventStatus ) vkGetInstanceProcAddr( instance, "vkGetEventStatus" ); 1619 vkSetEvent = cast( PFN_vkSetEvent ) vkGetInstanceProcAddr( instance, "vkSetEvent" ); 1620 vkResetEvent = cast( PFN_vkResetEvent ) vkGetInstanceProcAddr( instance, "vkResetEvent" ); 1621 vkCreateQueryPool = cast( PFN_vkCreateQueryPool ) vkGetInstanceProcAddr( instance, "vkCreateQueryPool" ); 1622 vkDestroyQueryPool = cast( PFN_vkDestroyQueryPool ) vkGetInstanceProcAddr( instance, "vkDestroyQueryPool" ); 1623 vkGetQueryPoolResults = cast( PFN_vkGetQueryPoolResults ) vkGetInstanceProcAddr( instance, "vkGetQueryPoolResults" ); 1624 vkCreateBuffer = cast( PFN_vkCreateBuffer ) vkGetInstanceProcAddr( instance, "vkCreateBuffer" ); 1625 vkDestroyBuffer = cast( PFN_vkDestroyBuffer ) vkGetInstanceProcAddr( instance, "vkDestroyBuffer" ); 1626 vkCreateBufferView = cast( PFN_vkCreateBufferView ) vkGetInstanceProcAddr( instance, "vkCreateBufferView" ); 1627 vkDestroyBufferView = cast( PFN_vkDestroyBufferView ) vkGetInstanceProcAddr( instance, "vkDestroyBufferView" ); 1628 vkCreateImage = cast( PFN_vkCreateImage ) vkGetInstanceProcAddr( instance, "vkCreateImage" ); 1629 vkDestroyImage = cast( PFN_vkDestroyImage ) vkGetInstanceProcAddr( instance, "vkDestroyImage" ); 1630 vkGetImageSubresourceLayout = cast( PFN_vkGetImageSubresourceLayout ) vkGetInstanceProcAddr( instance, "vkGetImageSubresourceLayout" ); 1631 vkCreateImageView = cast( PFN_vkCreateImageView ) vkGetInstanceProcAddr( instance, "vkCreateImageView" ); 1632 vkDestroyImageView = cast( PFN_vkDestroyImageView ) vkGetInstanceProcAddr( instance, "vkDestroyImageView" ); 1633 vkCreateShaderModule = cast( PFN_vkCreateShaderModule ) vkGetInstanceProcAddr( instance, "vkCreateShaderModule" ); 1634 vkDestroyShaderModule = cast( PFN_vkDestroyShaderModule ) vkGetInstanceProcAddr( instance, "vkDestroyShaderModule" ); 1635 vkCreatePipelineCache = cast( PFN_vkCreatePipelineCache ) vkGetInstanceProcAddr( instance, "vkCreatePipelineCache" ); 1636 vkDestroyPipelineCache = cast( PFN_vkDestroyPipelineCache ) vkGetInstanceProcAddr( instance, "vkDestroyPipelineCache" ); 1637 vkGetPipelineCacheData = cast( PFN_vkGetPipelineCacheData ) vkGetInstanceProcAddr( instance, "vkGetPipelineCacheData" ); 1638 vkMergePipelineCaches = cast( PFN_vkMergePipelineCaches ) vkGetInstanceProcAddr( instance, "vkMergePipelineCaches" ); 1639 vkCreateGraphicsPipelines = cast( PFN_vkCreateGraphicsPipelines ) vkGetInstanceProcAddr( instance, "vkCreateGraphicsPipelines" ); 1640 vkCreateComputePipelines = cast( PFN_vkCreateComputePipelines ) vkGetInstanceProcAddr( instance, "vkCreateComputePipelines" ); 1641 vkDestroyPipeline = cast( PFN_vkDestroyPipeline ) vkGetInstanceProcAddr( instance, "vkDestroyPipeline" ); 1642 vkCreatePipelineLayout = cast( PFN_vkCreatePipelineLayout ) vkGetInstanceProcAddr( instance, "vkCreatePipelineLayout" ); 1643 vkDestroyPipelineLayout = cast( PFN_vkDestroyPipelineLayout ) vkGetInstanceProcAddr( instance, "vkDestroyPipelineLayout" ); 1644 vkCreateSampler = cast( PFN_vkCreateSampler ) vkGetInstanceProcAddr( instance, "vkCreateSampler" ); 1645 vkDestroySampler = cast( PFN_vkDestroySampler ) vkGetInstanceProcAddr( instance, "vkDestroySampler" ); 1646 vkCreateDescriptorSetLayout = cast( PFN_vkCreateDescriptorSetLayout ) vkGetInstanceProcAddr( instance, "vkCreateDescriptorSetLayout" ); 1647 vkDestroyDescriptorSetLayout = cast( PFN_vkDestroyDescriptorSetLayout ) vkGetInstanceProcAddr( instance, "vkDestroyDescriptorSetLayout" ); 1648 vkCreateDescriptorPool = cast( PFN_vkCreateDescriptorPool ) vkGetInstanceProcAddr( instance, "vkCreateDescriptorPool" ); 1649 vkDestroyDescriptorPool = cast( PFN_vkDestroyDescriptorPool ) vkGetInstanceProcAddr( instance, "vkDestroyDescriptorPool" ); 1650 vkResetDescriptorPool = cast( PFN_vkResetDescriptorPool ) vkGetInstanceProcAddr( instance, "vkResetDescriptorPool" ); 1651 vkAllocateDescriptorSets = cast( PFN_vkAllocateDescriptorSets ) vkGetInstanceProcAddr( instance, "vkAllocateDescriptorSets" ); 1652 vkFreeDescriptorSets = cast( PFN_vkFreeDescriptorSets ) vkGetInstanceProcAddr( instance, "vkFreeDescriptorSets" ); 1653 vkUpdateDescriptorSets = cast( PFN_vkUpdateDescriptorSets ) vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSets" ); 1654 vkCreateFramebuffer = cast( PFN_vkCreateFramebuffer ) vkGetInstanceProcAddr( instance, "vkCreateFramebuffer" ); 1655 vkDestroyFramebuffer = cast( PFN_vkDestroyFramebuffer ) vkGetInstanceProcAddr( instance, "vkDestroyFramebuffer" ); 1656 vkCreateRenderPass = cast( PFN_vkCreateRenderPass ) vkGetInstanceProcAddr( instance, "vkCreateRenderPass" ); 1657 vkDestroyRenderPass = cast( PFN_vkDestroyRenderPass ) vkGetInstanceProcAddr( instance, "vkDestroyRenderPass" ); 1658 vkGetRenderAreaGranularity = cast( PFN_vkGetRenderAreaGranularity ) vkGetInstanceProcAddr( instance, "vkGetRenderAreaGranularity" ); 1659 vkCreateCommandPool = cast( PFN_vkCreateCommandPool ) vkGetInstanceProcAddr( instance, "vkCreateCommandPool" ); 1660 vkDestroyCommandPool = cast( PFN_vkDestroyCommandPool ) vkGetInstanceProcAddr( instance, "vkDestroyCommandPool" ); 1661 vkResetCommandPool = cast( PFN_vkResetCommandPool ) vkGetInstanceProcAddr( instance, "vkResetCommandPool" ); 1662 vkAllocateCommandBuffers = cast( PFN_vkAllocateCommandBuffers ) vkGetInstanceProcAddr( instance, "vkAllocateCommandBuffers" ); 1663 vkFreeCommandBuffers = cast( PFN_vkFreeCommandBuffers ) vkGetInstanceProcAddr( instance, "vkFreeCommandBuffers" ); 1664 vkBeginCommandBuffer = cast( PFN_vkBeginCommandBuffer ) vkGetInstanceProcAddr( instance, "vkBeginCommandBuffer" ); 1665 vkEndCommandBuffer = cast( PFN_vkEndCommandBuffer ) vkGetInstanceProcAddr( instance, "vkEndCommandBuffer" ); 1666 vkResetCommandBuffer = cast( PFN_vkResetCommandBuffer ) vkGetInstanceProcAddr( instance, "vkResetCommandBuffer" ); 1667 vkCmdBindPipeline = cast( PFN_vkCmdBindPipeline ) vkGetInstanceProcAddr( instance, "vkCmdBindPipeline" ); 1668 vkCmdSetViewport = cast( PFN_vkCmdSetViewport ) vkGetInstanceProcAddr( instance, "vkCmdSetViewport" ); 1669 vkCmdSetScissor = cast( PFN_vkCmdSetScissor ) vkGetInstanceProcAddr( instance, "vkCmdSetScissor" ); 1670 vkCmdSetLineWidth = cast( PFN_vkCmdSetLineWidth ) vkGetInstanceProcAddr( instance, "vkCmdSetLineWidth" ); 1671 vkCmdSetDepthBias = cast( PFN_vkCmdSetDepthBias ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthBias" ); 1672 vkCmdSetBlendConstants = cast( PFN_vkCmdSetBlendConstants ) vkGetInstanceProcAddr( instance, "vkCmdSetBlendConstants" ); 1673 vkCmdSetDepthBounds = cast( PFN_vkCmdSetDepthBounds ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthBounds" ); 1674 vkCmdSetStencilCompareMask = cast( PFN_vkCmdSetStencilCompareMask ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilCompareMask" ); 1675 vkCmdSetStencilWriteMask = cast( PFN_vkCmdSetStencilWriteMask ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilWriteMask" ); 1676 vkCmdSetStencilReference = cast( PFN_vkCmdSetStencilReference ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilReference" ); 1677 vkCmdBindDescriptorSets = cast( PFN_vkCmdBindDescriptorSets ) vkGetInstanceProcAddr( instance, "vkCmdBindDescriptorSets" ); 1678 vkCmdBindIndexBuffer = cast( PFN_vkCmdBindIndexBuffer ) vkGetInstanceProcAddr( instance, "vkCmdBindIndexBuffer" ); 1679 vkCmdBindVertexBuffers = cast( PFN_vkCmdBindVertexBuffers ) vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers" ); 1680 vkCmdDraw = cast( PFN_vkCmdDraw ) vkGetInstanceProcAddr( instance, "vkCmdDraw" ); 1681 vkCmdDrawIndexed = cast( PFN_vkCmdDrawIndexed ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndexed" ); 1682 vkCmdDrawIndirect = cast( PFN_vkCmdDrawIndirect ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndirect" ); 1683 vkCmdDrawIndexedIndirect = cast( PFN_vkCmdDrawIndexedIndirect ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirect" ); 1684 vkCmdDispatch = cast( PFN_vkCmdDispatch ) vkGetInstanceProcAddr( instance, "vkCmdDispatch" ); 1685 vkCmdDispatchIndirect = cast( PFN_vkCmdDispatchIndirect ) vkGetInstanceProcAddr( instance, "vkCmdDispatchIndirect" ); 1686 vkCmdCopyBuffer = cast( PFN_vkCmdCopyBuffer ) vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer" ); 1687 vkCmdCopyImage = cast( PFN_vkCmdCopyImage ) vkGetInstanceProcAddr( instance, "vkCmdCopyImage" ); 1688 vkCmdBlitImage = cast( PFN_vkCmdBlitImage ) vkGetInstanceProcAddr( instance, "vkCmdBlitImage" ); 1689 vkCmdCopyBufferToImage = cast( PFN_vkCmdCopyBufferToImage ) vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage" ); 1690 vkCmdCopyImageToBuffer = cast( PFN_vkCmdCopyImageToBuffer ) vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer" ); 1691 vkCmdUpdateBuffer = cast( PFN_vkCmdUpdateBuffer ) vkGetInstanceProcAddr( instance, "vkCmdUpdateBuffer" ); 1692 vkCmdFillBuffer = cast( PFN_vkCmdFillBuffer ) vkGetInstanceProcAddr( instance, "vkCmdFillBuffer" ); 1693 vkCmdClearColorImage = cast( PFN_vkCmdClearColorImage ) vkGetInstanceProcAddr( instance, "vkCmdClearColorImage" ); 1694 vkCmdClearDepthStencilImage = cast( PFN_vkCmdClearDepthStencilImage ) vkGetInstanceProcAddr( instance, "vkCmdClearDepthStencilImage" ); 1695 vkCmdClearAttachments = cast( PFN_vkCmdClearAttachments ) vkGetInstanceProcAddr( instance, "vkCmdClearAttachments" ); 1696 vkCmdResolveImage = cast( PFN_vkCmdResolveImage ) vkGetInstanceProcAddr( instance, "vkCmdResolveImage" ); 1697 vkCmdSetEvent = cast( PFN_vkCmdSetEvent ) vkGetInstanceProcAddr( instance, "vkCmdSetEvent" ); 1698 vkCmdResetEvent = cast( PFN_vkCmdResetEvent ) vkGetInstanceProcAddr( instance, "vkCmdResetEvent" ); 1699 vkCmdWaitEvents = cast( PFN_vkCmdWaitEvents ) vkGetInstanceProcAddr( instance, "vkCmdWaitEvents" ); 1700 vkCmdPipelineBarrier = cast( PFN_vkCmdPipelineBarrier ) vkGetInstanceProcAddr( instance, "vkCmdPipelineBarrier" ); 1701 vkCmdBeginQuery = cast( PFN_vkCmdBeginQuery ) vkGetInstanceProcAddr( instance, "vkCmdBeginQuery" ); 1702 vkCmdEndQuery = cast( PFN_vkCmdEndQuery ) vkGetInstanceProcAddr( instance, "vkCmdEndQuery" ); 1703 vkCmdResetQueryPool = cast( PFN_vkCmdResetQueryPool ) vkGetInstanceProcAddr( instance, "vkCmdResetQueryPool" ); 1704 vkCmdWriteTimestamp = cast( PFN_vkCmdWriteTimestamp ) vkGetInstanceProcAddr( instance, "vkCmdWriteTimestamp" ); 1705 vkCmdCopyQueryPoolResults = cast( PFN_vkCmdCopyQueryPoolResults ) vkGetInstanceProcAddr( instance, "vkCmdCopyQueryPoolResults" ); 1706 vkCmdPushConstants = cast( PFN_vkCmdPushConstants ) vkGetInstanceProcAddr( instance, "vkCmdPushConstants" ); 1707 vkCmdBeginRenderPass = cast( PFN_vkCmdBeginRenderPass ) vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass" ); 1708 vkCmdNextSubpass = cast( PFN_vkCmdNextSubpass ) vkGetInstanceProcAddr( instance, "vkCmdNextSubpass" ); 1709 vkCmdEndRenderPass = cast( PFN_vkCmdEndRenderPass ) vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass" ); 1710 vkCmdExecuteCommands = cast( PFN_vkCmdExecuteCommands ) vkGetInstanceProcAddr( instance, "vkCmdExecuteCommands" ); 1711 1712 // VK_VERSION_1_1 1713 vkBindBufferMemory2 = cast( PFN_vkBindBufferMemory2 ) vkGetInstanceProcAddr( instance, "vkBindBufferMemory2" ); 1714 vkBindImageMemory2 = cast( PFN_vkBindImageMemory2 ) vkGetInstanceProcAddr( instance, "vkBindImageMemory2" ); 1715 vkGetDeviceGroupPeerMemoryFeatures = cast( PFN_vkGetDeviceGroupPeerMemoryFeatures ) vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPeerMemoryFeatures" ); 1716 vkCmdSetDeviceMask = cast( PFN_vkCmdSetDeviceMask ) vkGetInstanceProcAddr( instance, "vkCmdSetDeviceMask" ); 1717 vkCmdDispatchBase = cast( PFN_vkCmdDispatchBase ) vkGetInstanceProcAddr( instance, "vkCmdDispatchBase" ); 1718 vkGetImageMemoryRequirements2 = cast( PFN_vkGetImageMemoryRequirements2 ) vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements2" ); 1719 vkGetBufferMemoryRequirements2 = cast( PFN_vkGetBufferMemoryRequirements2 ) vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements2" ); 1720 vkGetImageSparseMemoryRequirements2 = cast( PFN_vkGetImageSparseMemoryRequirements2 ) vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements2" ); 1721 vkTrimCommandPool = cast( PFN_vkTrimCommandPool ) vkGetInstanceProcAddr( instance, "vkTrimCommandPool" ); 1722 vkGetDeviceQueue2 = cast( PFN_vkGetDeviceQueue2 ) vkGetInstanceProcAddr( instance, "vkGetDeviceQueue2" ); 1723 vkCreateSamplerYcbcrConversion = cast( PFN_vkCreateSamplerYcbcrConversion ) vkGetInstanceProcAddr( instance, "vkCreateSamplerYcbcrConversion" ); 1724 vkDestroySamplerYcbcrConversion = cast( PFN_vkDestroySamplerYcbcrConversion ) vkGetInstanceProcAddr( instance, "vkDestroySamplerYcbcrConversion" ); 1725 vkCreateDescriptorUpdateTemplate = cast( PFN_vkCreateDescriptorUpdateTemplate ) vkGetInstanceProcAddr( instance, "vkCreateDescriptorUpdateTemplate" ); 1726 vkDestroyDescriptorUpdateTemplate = cast( PFN_vkDestroyDescriptorUpdateTemplate ) vkGetInstanceProcAddr( instance, "vkDestroyDescriptorUpdateTemplate" ); 1727 vkUpdateDescriptorSetWithTemplate = cast( PFN_vkUpdateDescriptorSetWithTemplate ) vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSetWithTemplate" ); 1728 vkGetDescriptorSetLayoutSupport = cast( PFN_vkGetDescriptorSetLayoutSupport ) vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSupport" ); 1729 1730 // VK_VERSION_1_2 1731 vkCmdDrawIndirectCount = cast( PFN_vkCmdDrawIndirectCount ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCount" ); 1732 vkCmdDrawIndexedIndirectCount = cast( PFN_vkCmdDrawIndexedIndirectCount ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCount" ); 1733 vkCreateRenderPass2 = cast( PFN_vkCreateRenderPass2 ) vkGetInstanceProcAddr( instance, "vkCreateRenderPass2" ); 1734 vkCmdBeginRenderPass2 = cast( PFN_vkCmdBeginRenderPass2 ) vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass2" ); 1735 vkCmdNextSubpass2 = cast( PFN_vkCmdNextSubpass2 ) vkGetInstanceProcAddr( instance, "vkCmdNextSubpass2" ); 1736 vkCmdEndRenderPass2 = cast( PFN_vkCmdEndRenderPass2 ) vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass2" ); 1737 vkResetQueryPool = cast( PFN_vkResetQueryPool ) vkGetInstanceProcAddr( instance, "vkResetQueryPool" ); 1738 vkGetSemaphoreCounterValue = cast( PFN_vkGetSemaphoreCounterValue ) vkGetInstanceProcAddr( instance, "vkGetSemaphoreCounterValue" ); 1739 vkWaitSemaphores = cast( PFN_vkWaitSemaphores ) vkGetInstanceProcAddr( instance, "vkWaitSemaphores" ); 1740 vkSignalSemaphore = cast( PFN_vkSignalSemaphore ) vkGetInstanceProcAddr( instance, "vkSignalSemaphore" ); 1741 vkGetBufferDeviceAddress = cast( PFN_vkGetBufferDeviceAddress ) vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddress" ); 1742 vkGetBufferOpaqueCaptureAddress = cast( PFN_vkGetBufferOpaqueCaptureAddress ) vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureAddress" ); 1743 vkGetDeviceMemoryOpaqueCaptureAddress = cast( PFN_vkGetDeviceMemoryOpaqueCaptureAddress ) vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryOpaqueCaptureAddress" ); 1744 1745 // VK_VERSION_1_3 1746 vkCreatePrivateDataSlot = cast( PFN_vkCreatePrivateDataSlot ) vkGetInstanceProcAddr( instance, "vkCreatePrivateDataSlot" ); 1747 vkDestroyPrivateDataSlot = cast( PFN_vkDestroyPrivateDataSlot ) vkGetInstanceProcAddr( instance, "vkDestroyPrivateDataSlot" ); 1748 vkSetPrivateData = cast( PFN_vkSetPrivateData ) vkGetInstanceProcAddr( instance, "vkSetPrivateData" ); 1749 vkGetPrivateData = cast( PFN_vkGetPrivateData ) vkGetInstanceProcAddr( instance, "vkGetPrivateData" ); 1750 vkCmdSetEvent2 = cast( PFN_vkCmdSetEvent2 ) vkGetInstanceProcAddr( instance, "vkCmdSetEvent2" ); 1751 vkCmdResetEvent2 = cast( PFN_vkCmdResetEvent2 ) vkGetInstanceProcAddr( instance, "vkCmdResetEvent2" ); 1752 vkCmdWaitEvents2 = cast( PFN_vkCmdWaitEvents2 ) vkGetInstanceProcAddr( instance, "vkCmdWaitEvents2" ); 1753 vkCmdPipelineBarrier2 = cast( PFN_vkCmdPipelineBarrier2 ) vkGetInstanceProcAddr( instance, "vkCmdPipelineBarrier2" ); 1754 vkCmdWriteTimestamp2 = cast( PFN_vkCmdWriteTimestamp2 ) vkGetInstanceProcAddr( instance, "vkCmdWriteTimestamp2" ); 1755 vkQueueSubmit2 = cast( PFN_vkQueueSubmit2 ) vkGetInstanceProcAddr( instance, "vkQueueSubmit2" ); 1756 vkCmdCopyBuffer2 = cast( PFN_vkCmdCopyBuffer2 ) vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer2" ); 1757 vkCmdCopyImage2 = cast( PFN_vkCmdCopyImage2 ) vkGetInstanceProcAddr( instance, "vkCmdCopyImage2" ); 1758 vkCmdCopyBufferToImage2 = cast( PFN_vkCmdCopyBufferToImage2 ) vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage2" ); 1759 vkCmdCopyImageToBuffer2 = cast( PFN_vkCmdCopyImageToBuffer2 ) vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer2" ); 1760 vkCmdBlitImage2 = cast( PFN_vkCmdBlitImage2 ) vkGetInstanceProcAddr( instance, "vkCmdBlitImage2" ); 1761 vkCmdResolveImage2 = cast( PFN_vkCmdResolveImage2 ) vkGetInstanceProcAddr( instance, "vkCmdResolveImage2" ); 1762 vkCmdBeginRendering = cast( PFN_vkCmdBeginRendering ) vkGetInstanceProcAddr( instance, "vkCmdBeginRendering" ); 1763 vkCmdEndRendering = cast( PFN_vkCmdEndRendering ) vkGetInstanceProcAddr( instance, "vkCmdEndRendering" ); 1764 vkCmdSetCullMode = cast( PFN_vkCmdSetCullMode ) vkGetInstanceProcAddr( instance, "vkCmdSetCullMode" ); 1765 vkCmdSetFrontFace = cast( PFN_vkCmdSetFrontFace ) vkGetInstanceProcAddr( instance, "vkCmdSetFrontFace" ); 1766 vkCmdSetPrimitiveTopology = cast( PFN_vkCmdSetPrimitiveTopology ) vkGetInstanceProcAddr( instance, "vkCmdSetPrimitiveTopology" ); 1767 vkCmdSetViewportWithCount = cast( PFN_vkCmdSetViewportWithCount ) vkGetInstanceProcAddr( instance, "vkCmdSetViewportWithCount" ); 1768 vkCmdSetScissorWithCount = cast( PFN_vkCmdSetScissorWithCount ) vkGetInstanceProcAddr( instance, "vkCmdSetScissorWithCount" ); 1769 vkCmdBindVertexBuffers2 = cast( PFN_vkCmdBindVertexBuffers2 ) vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers2" ); 1770 vkCmdSetDepthTestEnable = cast( PFN_vkCmdSetDepthTestEnable ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthTestEnable" ); 1771 vkCmdSetDepthWriteEnable = cast( PFN_vkCmdSetDepthWriteEnable ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthWriteEnable" ); 1772 vkCmdSetDepthCompareOp = cast( PFN_vkCmdSetDepthCompareOp ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthCompareOp" ); 1773 vkCmdSetDepthBoundsTestEnable = cast( PFN_vkCmdSetDepthBoundsTestEnable ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthBoundsTestEnable" ); 1774 vkCmdSetStencilTestEnable = cast( PFN_vkCmdSetStencilTestEnable ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilTestEnable" ); 1775 vkCmdSetStencilOp = cast( PFN_vkCmdSetStencilOp ) vkGetInstanceProcAddr( instance, "vkCmdSetStencilOp" ); 1776 vkCmdSetRasterizerDiscardEnable = cast( PFN_vkCmdSetRasterizerDiscardEnable ) vkGetInstanceProcAddr( instance, "vkCmdSetRasterizerDiscardEnable" ); 1777 vkCmdSetDepthBiasEnable = cast( PFN_vkCmdSetDepthBiasEnable ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthBiasEnable" ); 1778 vkCmdSetPrimitiveRestartEnable = cast( PFN_vkCmdSetPrimitiveRestartEnable ) vkGetInstanceProcAddr( instance, "vkCmdSetPrimitiveRestartEnable" ); 1779 vkGetDeviceBufferMemoryRequirements = cast( PFN_vkGetDeviceBufferMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetDeviceBufferMemoryRequirements" ); 1780 vkGetDeviceImageMemoryRequirements = cast( PFN_vkGetDeviceImageMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetDeviceImageMemoryRequirements" ); 1781 vkGetDeviceImageSparseMemoryRequirements = cast( PFN_vkGetDeviceImageSparseMemoryRequirements ) vkGetInstanceProcAddr( instance, "vkGetDeviceImageSparseMemoryRequirements" ); 1782 1783 // VK_KHR_swapchain 1784 vkCreateSwapchainKHR = cast( PFN_vkCreateSwapchainKHR ) vkGetInstanceProcAddr( instance, "vkCreateSwapchainKHR" ); 1785 vkDestroySwapchainKHR = cast( PFN_vkDestroySwapchainKHR ) vkGetInstanceProcAddr( instance, "vkDestroySwapchainKHR" ); 1786 vkGetSwapchainImagesKHR = cast( PFN_vkGetSwapchainImagesKHR ) vkGetInstanceProcAddr( instance, "vkGetSwapchainImagesKHR" ); 1787 vkAcquireNextImageKHR = cast( PFN_vkAcquireNextImageKHR ) vkGetInstanceProcAddr( instance, "vkAcquireNextImageKHR" ); 1788 vkQueuePresentKHR = cast( PFN_vkQueuePresentKHR ) vkGetInstanceProcAddr( instance, "vkQueuePresentKHR" ); 1789 vkGetDeviceGroupPresentCapabilitiesKHR = cast( PFN_vkGetDeviceGroupPresentCapabilitiesKHR ) vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPresentCapabilitiesKHR" ); 1790 vkGetDeviceGroupSurfacePresentModesKHR = cast( PFN_vkGetDeviceGroupSurfacePresentModesKHR ) vkGetInstanceProcAddr( instance, "vkGetDeviceGroupSurfacePresentModesKHR" ); 1791 vkAcquireNextImage2KHR = cast( PFN_vkAcquireNextImage2KHR ) vkGetInstanceProcAddr( instance, "vkAcquireNextImage2KHR" ); 1792 1793 // VK_KHR_display_swapchain 1794 vkCreateSharedSwapchainsKHR = cast( PFN_vkCreateSharedSwapchainsKHR ) vkGetInstanceProcAddr( instance, "vkCreateSharedSwapchainsKHR" ); 1795 1796 // VK_KHR_external_memory_fd 1797 vkGetMemoryFdKHR = cast( PFN_vkGetMemoryFdKHR ) vkGetInstanceProcAddr( instance, "vkGetMemoryFdKHR" ); 1798 vkGetMemoryFdPropertiesKHR = cast( PFN_vkGetMemoryFdPropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetMemoryFdPropertiesKHR" ); 1799 1800 // VK_KHR_external_semaphore_fd 1801 vkImportSemaphoreFdKHR = cast( PFN_vkImportSemaphoreFdKHR ) vkGetInstanceProcAddr( instance, "vkImportSemaphoreFdKHR" ); 1802 vkGetSemaphoreFdKHR = cast( PFN_vkGetSemaphoreFdKHR ) vkGetInstanceProcAddr( instance, "vkGetSemaphoreFdKHR" ); 1803 1804 // VK_KHR_push_descriptor 1805 vkCmdPushDescriptorSetKHR = cast( PFN_vkCmdPushDescriptorSetKHR ) vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetKHR" ); 1806 vkCmdPushDescriptorSetWithTemplateKHR = cast( PFN_vkCmdPushDescriptorSetWithTemplateKHR ) vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetWithTemplateKHR" ); 1807 1808 // VK_KHR_shared_presentable_image 1809 vkGetSwapchainStatusKHR = cast( PFN_vkGetSwapchainStatusKHR ) vkGetInstanceProcAddr( instance, "vkGetSwapchainStatusKHR" ); 1810 1811 // VK_KHR_external_fence_fd 1812 vkImportFenceFdKHR = cast( PFN_vkImportFenceFdKHR ) vkGetInstanceProcAddr( instance, "vkImportFenceFdKHR" ); 1813 vkGetFenceFdKHR = cast( PFN_vkGetFenceFdKHR ) vkGetInstanceProcAddr( instance, "vkGetFenceFdKHR" ); 1814 1815 // VK_KHR_performance_query 1816 vkAcquireProfilingLockKHR = cast( PFN_vkAcquireProfilingLockKHR ) vkGetInstanceProcAddr( instance, "vkAcquireProfilingLockKHR" ); 1817 vkReleaseProfilingLockKHR = cast( PFN_vkReleaseProfilingLockKHR ) vkGetInstanceProcAddr( instance, "vkReleaseProfilingLockKHR" ); 1818 1819 // VK_KHR_fragment_shading_rate 1820 vkCmdSetFragmentShadingRateKHR = cast( PFN_vkCmdSetFragmentShadingRateKHR ) vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateKHR" ); 1821 1822 // VK_KHR_present_wait 1823 vkWaitForPresentKHR = cast( PFN_vkWaitForPresentKHR ) vkGetInstanceProcAddr( instance, "vkWaitForPresentKHR" ); 1824 1825 // VK_KHR_deferred_host_operations 1826 vkCreateDeferredOperationKHR = cast( PFN_vkCreateDeferredOperationKHR ) vkGetInstanceProcAddr( instance, "vkCreateDeferredOperationKHR" ); 1827 vkDestroyDeferredOperationKHR = cast( PFN_vkDestroyDeferredOperationKHR ) vkGetInstanceProcAddr( instance, "vkDestroyDeferredOperationKHR" ); 1828 vkGetDeferredOperationMaxConcurrencyKHR = cast( PFN_vkGetDeferredOperationMaxConcurrencyKHR ) vkGetInstanceProcAddr( instance, "vkGetDeferredOperationMaxConcurrencyKHR" ); 1829 vkGetDeferredOperationResultKHR = cast( PFN_vkGetDeferredOperationResultKHR ) vkGetInstanceProcAddr( instance, "vkGetDeferredOperationResultKHR" ); 1830 vkDeferredOperationJoinKHR = cast( PFN_vkDeferredOperationJoinKHR ) vkGetInstanceProcAddr( instance, "vkDeferredOperationJoinKHR" ); 1831 1832 // VK_KHR_pipeline_executable_properties 1833 vkGetPipelineExecutablePropertiesKHR = cast( PFN_vkGetPipelineExecutablePropertiesKHR ) vkGetInstanceProcAddr( instance, "vkGetPipelineExecutablePropertiesKHR" ); 1834 vkGetPipelineExecutableStatisticsKHR = cast( PFN_vkGetPipelineExecutableStatisticsKHR ) vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableStatisticsKHR" ); 1835 vkGetPipelineExecutableInternalRepresentationsKHR = cast( PFN_vkGetPipelineExecutableInternalRepresentationsKHR ) vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableInternalRepresentationsKHR" ); 1836 1837 // VK_KHR_synchronization2 1838 vkCmdWriteBufferMarker2AMD = cast( PFN_vkCmdWriteBufferMarker2AMD ) vkGetInstanceProcAddr( instance, "vkCmdWriteBufferMarker2AMD" ); 1839 vkGetQueueCheckpointData2NV = cast( PFN_vkGetQueueCheckpointData2NV ) vkGetInstanceProcAddr( instance, "vkGetQueueCheckpointData2NV" ); 1840 1841 // VK_KHR_ray_tracing_maintenance1 1842 vkCmdTraceRaysIndirect2KHR = cast( PFN_vkCmdTraceRaysIndirect2KHR ) vkGetInstanceProcAddr( instance, "vkCmdTraceRaysIndirect2KHR" ); 1843 1844 // VK_EXT_debug_marker 1845 vkDebugMarkerSetObjectTagEXT = cast( PFN_vkDebugMarkerSetObjectTagEXT ) vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectTagEXT" ); 1846 vkDebugMarkerSetObjectNameEXT = cast( PFN_vkDebugMarkerSetObjectNameEXT ) vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectNameEXT" ); 1847 vkCmdDebugMarkerBeginEXT = cast( PFN_vkCmdDebugMarkerBeginEXT ) vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerBeginEXT" ); 1848 vkCmdDebugMarkerEndEXT = cast( PFN_vkCmdDebugMarkerEndEXT ) vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerEndEXT" ); 1849 vkCmdDebugMarkerInsertEXT = cast( PFN_vkCmdDebugMarkerInsertEXT ) vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerInsertEXT" ); 1850 1851 // VK_EXT_transform_feedback 1852 vkCmdBindTransformFeedbackBuffersEXT = cast( PFN_vkCmdBindTransformFeedbackBuffersEXT ) vkGetInstanceProcAddr( instance, "vkCmdBindTransformFeedbackBuffersEXT" ); 1853 vkCmdBeginTransformFeedbackEXT = cast( PFN_vkCmdBeginTransformFeedbackEXT ) vkGetInstanceProcAddr( instance, "vkCmdBeginTransformFeedbackEXT" ); 1854 vkCmdEndTransformFeedbackEXT = cast( PFN_vkCmdEndTransformFeedbackEXT ) vkGetInstanceProcAddr( instance, "vkCmdEndTransformFeedbackEXT" ); 1855 vkCmdBeginQueryIndexedEXT = cast( PFN_vkCmdBeginQueryIndexedEXT ) vkGetInstanceProcAddr( instance, "vkCmdBeginQueryIndexedEXT" ); 1856 vkCmdEndQueryIndexedEXT = cast( PFN_vkCmdEndQueryIndexedEXT ) vkGetInstanceProcAddr( instance, "vkCmdEndQueryIndexedEXT" ); 1857 vkCmdDrawIndirectByteCountEXT = cast( PFN_vkCmdDrawIndirectByteCountEXT ) vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectByteCountEXT" ); 1858 1859 // VK_NVX_binary_import 1860 vkCreateCuModuleNVX = cast( PFN_vkCreateCuModuleNVX ) vkGetInstanceProcAddr( instance, "vkCreateCuModuleNVX" ); 1861 vkCreateCuFunctionNVX = cast( PFN_vkCreateCuFunctionNVX ) vkGetInstanceProcAddr( instance, "vkCreateCuFunctionNVX" ); 1862 vkDestroyCuModuleNVX = cast( PFN_vkDestroyCuModuleNVX ) vkGetInstanceProcAddr( instance, "vkDestroyCuModuleNVX" ); 1863 vkDestroyCuFunctionNVX = cast( PFN_vkDestroyCuFunctionNVX ) vkGetInstanceProcAddr( instance, "vkDestroyCuFunctionNVX" ); 1864 vkCmdCuLaunchKernelNVX = cast( PFN_vkCmdCuLaunchKernelNVX ) vkGetInstanceProcAddr( instance, "vkCmdCuLaunchKernelNVX" ); 1865 1866 // VK_NVX_image_view_handle 1867 vkGetImageViewHandleNVX = cast( PFN_vkGetImageViewHandleNVX ) vkGetInstanceProcAddr( instance, "vkGetImageViewHandleNVX" ); 1868 vkGetImageViewAddressNVX = cast( PFN_vkGetImageViewAddressNVX ) vkGetInstanceProcAddr( instance, "vkGetImageViewAddressNVX" ); 1869 1870 // VK_AMD_shader_info 1871 vkGetShaderInfoAMD = cast( PFN_vkGetShaderInfoAMD ) vkGetInstanceProcAddr( instance, "vkGetShaderInfoAMD" ); 1872 1873 // VK_EXT_conditional_rendering 1874 vkCmdBeginConditionalRenderingEXT = cast( PFN_vkCmdBeginConditionalRenderingEXT ) vkGetInstanceProcAddr( instance, "vkCmdBeginConditionalRenderingEXT" ); 1875 vkCmdEndConditionalRenderingEXT = cast( PFN_vkCmdEndConditionalRenderingEXT ) vkGetInstanceProcAddr( instance, "vkCmdEndConditionalRenderingEXT" ); 1876 1877 // VK_NV_clip_space_w_scaling 1878 vkCmdSetViewportWScalingNV = cast( PFN_vkCmdSetViewportWScalingNV ) vkGetInstanceProcAddr( instance, "vkCmdSetViewportWScalingNV" ); 1879 1880 // VK_EXT_display_control 1881 vkDisplayPowerControlEXT = cast( PFN_vkDisplayPowerControlEXT ) vkGetInstanceProcAddr( instance, "vkDisplayPowerControlEXT" ); 1882 vkRegisterDeviceEventEXT = cast( PFN_vkRegisterDeviceEventEXT ) vkGetInstanceProcAddr( instance, "vkRegisterDeviceEventEXT" ); 1883 vkRegisterDisplayEventEXT = cast( PFN_vkRegisterDisplayEventEXT ) vkGetInstanceProcAddr( instance, "vkRegisterDisplayEventEXT" ); 1884 vkGetSwapchainCounterEXT = cast( PFN_vkGetSwapchainCounterEXT ) vkGetInstanceProcAddr( instance, "vkGetSwapchainCounterEXT" ); 1885 1886 // VK_GOOGLE_display_timing 1887 vkGetRefreshCycleDurationGOOGLE = cast( PFN_vkGetRefreshCycleDurationGOOGLE ) vkGetInstanceProcAddr( instance, "vkGetRefreshCycleDurationGOOGLE" ); 1888 vkGetPastPresentationTimingGOOGLE = cast( PFN_vkGetPastPresentationTimingGOOGLE ) vkGetInstanceProcAddr( instance, "vkGetPastPresentationTimingGOOGLE" ); 1889 1890 // VK_EXT_discard_rectangles 1891 vkCmdSetDiscardRectangleEXT = cast( PFN_vkCmdSetDiscardRectangleEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDiscardRectangleEXT" ); 1892 1893 // VK_EXT_hdr_metadata 1894 vkSetHdrMetadataEXT = cast( PFN_vkSetHdrMetadataEXT ) vkGetInstanceProcAddr( instance, "vkSetHdrMetadataEXT" ); 1895 1896 // VK_EXT_debug_utils 1897 vkSetDebugUtilsObjectNameEXT = cast( PFN_vkSetDebugUtilsObjectNameEXT ) vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectNameEXT" ); 1898 vkSetDebugUtilsObjectTagEXT = cast( PFN_vkSetDebugUtilsObjectTagEXT ) vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectTagEXT" ); 1899 vkQueueBeginDebugUtilsLabelEXT = cast( PFN_vkQueueBeginDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkQueueBeginDebugUtilsLabelEXT" ); 1900 vkQueueEndDebugUtilsLabelEXT = cast( PFN_vkQueueEndDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkQueueEndDebugUtilsLabelEXT" ); 1901 vkQueueInsertDebugUtilsLabelEXT = cast( PFN_vkQueueInsertDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkQueueInsertDebugUtilsLabelEXT" ); 1902 vkCmdBeginDebugUtilsLabelEXT = cast( PFN_vkCmdBeginDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkCmdBeginDebugUtilsLabelEXT" ); 1903 vkCmdEndDebugUtilsLabelEXT = cast( PFN_vkCmdEndDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkCmdEndDebugUtilsLabelEXT" ); 1904 vkCmdInsertDebugUtilsLabelEXT = cast( PFN_vkCmdInsertDebugUtilsLabelEXT ) vkGetInstanceProcAddr( instance, "vkCmdInsertDebugUtilsLabelEXT" ); 1905 1906 // VK_EXT_sample_locations 1907 vkCmdSetSampleLocationsEXT = cast( PFN_vkCmdSetSampleLocationsEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetSampleLocationsEXT" ); 1908 1909 // VK_EXT_image_drm_format_modifier 1910 vkGetImageDrmFormatModifierPropertiesEXT = cast( PFN_vkGetImageDrmFormatModifierPropertiesEXT ) vkGetInstanceProcAddr( instance, "vkGetImageDrmFormatModifierPropertiesEXT" ); 1911 1912 // VK_EXT_validation_cache 1913 vkCreateValidationCacheEXT = cast( PFN_vkCreateValidationCacheEXT ) vkGetInstanceProcAddr( instance, "vkCreateValidationCacheEXT" ); 1914 vkDestroyValidationCacheEXT = cast( PFN_vkDestroyValidationCacheEXT ) vkGetInstanceProcAddr( instance, "vkDestroyValidationCacheEXT" ); 1915 vkMergeValidationCachesEXT = cast( PFN_vkMergeValidationCachesEXT ) vkGetInstanceProcAddr( instance, "vkMergeValidationCachesEXT" ); 1916 vkGetValidationCacheDataEXT = cast( PFN_vkGetValidationCacheDataEXT ) vkGetInstanceProcAddr( instance, "vkGetValidationCacheDataEXT" ); 1917 1918 // VK_NV_shading_rate_image 1919 vkCmdBindShadingRateImageNV = cast( PFN_vkCmdBindShadingRateImageNV ) vkGetInstanceProcAddr( instance, "vkCmdBindShadingRateImageNV" ); 1920 vkCmdSetViewportShadingRatePaletteNV = cast( PFN_vkCmdSetViewportShadingRatePaletteNV ) vkGetInstanceProcAddr( instance, "vkCmdSetViewportShadingRatePaletteNV" ); 1921 vkCmdSetCoarseSampleOrderNV = cast( PFN_vkCmdSetCoarseSampleOrderNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCoarseSampleOrderNV" ); 1922 1923 // VK_NV_ray_tracing 1924 vkCreateAccelerationStructureNV = cast( PFN_vkCreateAccelerationStructureNV ) vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureNV" ); 1925 vkDestroyAccelerationStructureNV = cast( PFN_vkDestroyAccelerationStructureNV ) vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureNV" ); 1926 vkGetAccelerationStructureMemoryRequirementsNV = cast( PFN_vkGetAccelerationStructureMemoryRequirementsNV ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureMemoryRequirementsNV" ); 1927 vkBindAccelerationStructureMemoryNV = cast( PFN_vkBindAccelerationStructureMemoryNV ) vkGetInstanceProcAddr( instance, "vkBindAccelerationStructureMemoryNV" ); 1928 vkCmdBuildAccelerationStructureNV = cast( PFN_vkCmdBuildAccelerationStructureNV ) vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructureNV" ); 1929 vkCmdCopyAccelerationStructureNV = cast( PFN_vkCmdCopyAccelerationStructureNV ) vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureNV" ); 1930 vkCmdTraceRaysNV = cast( PFN_vkCmdTraceRaysNV ) vkGetInstanceProcAddr( instance, "vkCmdTraceRaysNV" ); 1931 vkCreateRayTracingPipelinesNV = cast( PFN_vkCreateRayTracingPipelinesNV ) vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesNV" ); 1932 vkGetRayTracingShaderGroupHandlesKHR = cast( PFN_vkGetRayTracingShaderGroupHandlesKHR ) vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupHandlesKHR" ); 1933 vkGetAccelerationStructureHandleNV = cast( PFN_vkGetAccelerationStructureHandleNV ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureHandleNV" ); 1934 vkCmdWriteAccelerationStructuresPropertiesNV = cast( PFN_vkCmdWriteAccelerationStructuresPropertiesNV ) vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesNV" ); 1935 vkCompileDeferredNV = cast( PFN_vkCompileDeferredNV ) vkGetInstanceProcAddr( instance, "vkCompileDeferredNV" ); 1936 1937 // VK_EXT_external_memory_host 1938 vkGetMemoryHostPointerPropertiesEXT = cast( PFN_vkGetMemoryHostPointerPropertiesEXT ) vkGetInstanceProcAddr( instance, "vkGetMemoryHostPointerPropertiesEXT" ); 1939 1940 // VK_AMD_buffer_marker 1941 vkCmdWriteBufferMarkerAMD = cast( PFN_vkCmdWriteBufferMarkerAMD ) vkGetInstanceProcAddr( instance, "vkCmdWriteBufferMarkerAMD" ); 1942 1943 // VK_EXT_calibrated_timestamps 1944 vkGetCalibratedTimestampsEXT = cast( PFN_vkGetCalibratedTimestampsEXT ) vkGetInstanceProcAddr( instance, "vkGetCalibratedTimestampsEXT" ); 1945 1946 // VK_NV_mesh_shader 1947 vkCmdDrawMeshTasksNV = cast( PFN_vkCmdDrawMeshTasksNV ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksNV" ); 1948 vkCmdDrawMeshTasksIndirectNV = cast( PFN_vkCmdDrawMeshTasksIndirectNV ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectNV" ); 1949 vkCmdDrawMeshTasksIndirectCountNV = cast( PFN_vkCmdDrawMeshTasksIndirectCountNV ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectCountNV" ); 1950 1951 // VK_NV_scissor_exclusive 1952 vkCmdSetExclusiveScissorNV = cast( PFN_vkCmdSetExclusiveScissorNV ) vkGetInstanceProcAddr( instance, "vkCmdSetExclusiveScissorNV" ); 1953 1954 // VK_NV_device_diagnostic_checkpoints 1955 vkCmdSetCheckpointNV = cast( PFN_vkCmdSetCheckpointNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCheckpointNV" ); 1956 vkGetQueueCheckpointDataNV = cast( PFN_vkGetQueueCheckpointDataNV ) vkGetInstanceProcAddr( instance, "vkGetQueueCheckpointDataNV" ); 1957 1958 // VK_INTEL_performance_query 1959 vkInitializePerformanceApiINTEL = cast( PFN_vkInitializePerformanceApiINTEL ) vkGetInstanceProcAddr( instance, "vkInitializePerformanceApiINTEL" ); 1960 vkUninitializePerformanceApiINTEL = cast( PFN_vkUninitializePerformanceApiINTEL ) vkGetInstanceProcAddr( instance, "vkUninitializePerformanceApiINTEL" ); 1961 vkCmdSetPerformanceMarkerINTEL = cast( PFN_vkCmdSetPerformanceMarkerINTEL ) vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceMarkerINTEL" ); 1962 vkCmdSetPerformanceStreamMarkerINTEL = cast( PFN_vkCmdSetPerformanceStreamMarkerINTEL ) vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceStreamMarkerINTEL" ); 1963 vkCmdSetPerformanceOverrideINTEL = cast( PFN_vkCmdSetPerformanceOverrideINTEL ) vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceOverrideINTEL" ); 1964 vkAcquirePerformanceConfigurationINTEL = cast( PFN_vkAcquirePerformanceConfigurationINTEL ) vkGetInstanceProcAddr( instance, "vkAcquirePerformanceConfigurationINTEL" ); 1965 vkReleasePerformanceConfigurationINTEL = cast( PFN_vkReleasePerformanceConfigurationINTEL ) vkGetInstanceProcAddr( instance, "vkReleasePerformanceConfigurationINTEL" ); 1966 vkQueueSetPerformanceConfigurationINTEL = cast( PFN_vkQueueSetPerformanceConfigurationINTEL ) vkGetInstanceProcAddr( instance, "vkQueueSetPerformanceConfigurationINTEL" ); 1967 vkGetPerformanceParameterINTEL = cast( PFN_vkGetPerformanceParameterINTEL ) vkGetInstanceProcAddr( instance, "vkGetPerformanceParameterINTEL" ); 1968 1969 // VK_AMD_display_native_hdr 1970 vkSetLocalDimmingAMD = cast( PFN_vkSetLocalDimmingAMD ) vkGetInstanceProcAddr( instance, "vkSetLocalDimmingAMD" ); 1971 1972 // VK_EXT_line_rasterization 1973 vkCmdSetLineStippleEXT = cast( PFN_vkCmdSetLineStippleEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetLineStippleEXT" ); 1974 1975 // VK_EXT_swapchain_maintenance1 1976 vkReleaseSwapchainImagesEXT = cast( PFN_vkReleaseSwapchainImagesEXT ) vkGetInstanceProcAddr( instance, "vkReleaseSwapchainImagesEXT" ); 1977 1978 // VK_NV_device_generated_commands 1979 vkGetGeneratedCommandsMemoryRequirementsNV = cast( PFN_vkGetGeneratedCommandsMemoryRequirementsNV ) vkGetInstanceProcAddr( instance, "vkGetGeneratedCommandsMemoryRequirementsNV" ); 1980 vkCmdPreprocessGeneratedCommandsNV = cast( PFN_vkCmdPreprocessGeneratedCommandsNV ) vkGetInstanceProcAddr( instance, "vkCmdPreprocessGeneratedCommandsNV" ); 1981 vkCmdExecuteGeneratedCommandsNV = cast( PFN_vkCmdExecuteGeneratedCommandsNV ) vkGetInstanceProcAddr( instance, "vkCmdExecuteGeneratedCommandsNV" ); 1982 vkCmdBindPipelineShaderGroupNV = cast( PFN_vkCmdBindPipelineShaderGroupNV ) vkGetInstanceProcAddr( instance, "vkCmdBindPipelineShaderGroupNV" ); 1983 vkCreateIndirectCommandsLayoutNV = cast( PFN_vkCreateIndirectCommandsLayoutNV ) vkGetInstanceProcAddr( instance, "vkCreateIndirectCommandsLayoutNV" ); 1984 vkDestroyIndirectCommandsLayoutNV = cast( PFN_vkDestroyIndirectCommandsLayoutNV ) vkGetInstanceProcAddr( instance, "vkDestroyIndirectCommandsLayoutNV" ); 1985 1986 // VK_EXT_descriptor_buffer 1987 vkGetDescriptorSetLayoutSizeEXT = cast( PFN_vkGetDescriptorSetLayoutSizeEXT ) vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSizeEXT" ); 1988 vkGetDescriptorSetLayoutBindingOffsetEXT = cast( PFN_vkGetDescriptorSetLayoutBindingOffsetEXT ) vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutBindingOffsetEXT" ); 1989 vkGetDescriptorEXT = cast( PFN_vkGetDescriptorEXT ) vkGetInstanceProcAddr( instance, "vkGetDescriptorEXT" ); 1990 vkCmdBindDescriptorBuffersEXT = cast( PFN_vkCmdBindDescriptorBuffersEXT ) vkGetInstanceProcAddr( instance, "vkCmdBindDescriptorBuffersEXT" ); 1991 vkCmdSetDescriptorBufferOffsetsEXT = cast( PFN_vkCmdSetDescriptorBufferOffsetsEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDescriptorBufferOffsetsEXT" ); 1992 vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast( PFN_vkCmdBindDescriptorBufferEmbeddedSamplersEXT ) vkGetInstanceProcAddr( instance, "vkCmdBindDescriptorBufferEmbeddedSamplersEXT" ); 1993 vkGetBufferOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetBufferOpaqueCaptureDescriptorDataEXT ) vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureDescriptorDataEXT" ); 1994 vkGetImageOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetImageOpaqueCaptureDescriptorDataEXT ) vkGetInstanceProcAddr( instance, "vkGetImageOpaqueCaptureDescriptorDataEXT" ); 1995 vkGetImageViewOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetImageViewOpaqueCaptureDescriptorDataEXT ) vkGetInstanceProcAddr( instance, "vkGetImageViewOpaqueCaptureDescriptorDataEXT" ); 1996 vkGetSamplerOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT ) vkGetInstanceProcAddr( instance, "vkGetSamplerOpaqueCaptureDescriptorDataEXT" ); 1997 vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT" ); 1998 1999 // VK_NV_fragment_shading_rate_enums 2000 vkCmdSetFragmentShadingRateEnumNV = cast( PFN_vkCmdSetFragmentShadingRateEnumNV ) vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateEnumNV" ); 2001 2002 // VK_EXT_image_compression_control 2003 vkGetImageSubresourceLayout2EXT = cast( PFN_vkGetImageSubresourceLayout2EXT ) vkGetInstanceProcAddr( instance, "vkGetImageSubresourceLayout2EXT" ); 2004 2005 // VK_EXT_device_fault 2006 vkGetDeviceFaultInfoEXT = cast( PFN_vkGetDeviceFaultInfoEXT ) vkGetInstanceProcAddr( instance, "vkGetDeviceFaultInfoEXT" ); 2007 2008 // VK_EXT_vertex_input_dynamic_state 2009 vkCmdSetVertexInputEXT = cast( PFN_vkCmdSetVertexInputEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetVertexInputEXT" ); 2010 2011 // VK_HUAWEI_subpass_shading 2012 vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = cast( PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI ) vkGetInstanceProcAddr( instance, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI" ); 2013 vkCmdSubpassShadingHUAWEI = cast( PFN_vkCmdSubpassShadingHUAWEI ) vkGetInstanceProcAddr( instance, "vkCmdSubpassShadingHUAWEI" ); 2014 2015 // VK_HUAWEI_invocation_mask 2016 vkCmdBindInvocationMaskHUAWEI = cast( PFN_vkCmdBindInvocationMaskHUAWEI ) vkGetInstanceProcAddr( instance, "vkCmdBindInvocationMaskHUAWEI" ); 2017 2018 // VK_NV_external_memory_rdma 2019 vkGetMemoryRemoteAddressNV = cast( PFN_vkGetMemoryRemoteAddressNV ) vkGetInstanceProcAddr( instance, "vkGetMemoryRemoteAddressNV" ); 2020 2021 // VK_EXT_pipeline_properties 2022 vkGetPipelinePropertiesEXT = cast( PFN_vkGetPipelinePropertiesEXT ) vkGetInstanceProcAddr( instance, "vkGetPipelinePropertiesEXT" ); 2023 2024 // VK_EXT_extended_dynamic_state2 2025 vkCmdSetPatchControlPointsEXT = cast( PFN_vkCmdSetPatchControlPointsEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetPatchControlPointsEXT" ); 2026 vkCmdSetLogicOpEXT = cast( PFN_vkCmdSetLogicOpEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetLogicOpEXT" ); 2027 2028 // VK_EXT_color_write_enable 2029 vkCmdSetColorWriteEnableEXT = cast( PFN_vkCmdSetColorWriteEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetColorWriteEnableEXT" ); 2030 2031 // VK_EXT_multi_draw 2032 vkCmdDrawMultiEXT = cast( PFN_vkCmdDrawMultiEXT ) vkGetInstanceProcAddr( instance, "vkCmdDrawMultiEXT" ); 2033 vkCmdDrawMultiIndexedEXT = cast( PFN_vkCmdDrawMultiIndexedEXT ) vkGetInstanceProcAddr( instance, "vkCmdDrawMultiIndexedEXT" ); 2034 2035 // VK_EXT_opacity_micromap 2036 vkCreateMicromapEXT = cast( PFN_vkCreateMicromapEXT ) vkGetInstanceProcAddr( instance, "vkCreateMicromapEXT" ); 2037 vkDestroyMicromapEXT = cast( PFN_vkDestroyMicromapEXT ) vkGetInstanceProcAddr( instance, "vkDestroyMicromapEXT" ); 2038 vkCmdBuildMicromapsEXT = cast( PFN_vkCmdBuildMicromapsEXT ) vkGetInstanceProcAddr( instance, "vkCmdBuildMicromapsEXT" ); 2039 vkBuildMicromapsEXT = cast( PFN_vkBuildMicromapsEXT ) vkGetInstanceProcAddr( instance, "vkBuildMicromapsEXT" ); 2040 vkCopyMicromapEXT = cast( PFN_vkCopyMicromapEXT ) vkGetInstanceProcAddr( instance, "vkCopyMicromapEXT" ); 2041 vkCopyMicromapToMemoryEXT = cast( PFN_vkCopyMicromapToMemoryEXT ) vkGetInstanceProcAddr( instance, "vkCopyMicromapToMemoryEXT" ); 2042 vkCopyMemoryToMicromapEXT = cast( PFN_vkCopyMemoryToMicromapEXT ) vkGetInstanceProcAddr( instance, "vkCopyMemoryToMicromapEXT" ); 2043 vkWriteMicromapsPropertiesEXT = cast( PFN_vkWriteMicromapsPropertiesEXT ) vkGetInstanceProcAddr( instance, "vkWriteMicromapsPropertiesEXT" ); 2044 vkCmdCopyMicromapEXT = cast( PFN_vkCmdCopyMicromapEXT ) vkGetInstanceProcAddr( instance, "vkCmdCopyMicromapEXT" ); 2045 vkCmdCopyMicromapToMemoryEXT = cast( PFN_vkCmdCopyMicromapToMemoryEXT ) vkGetInstanceProcAddr( instance, "vkCmdCopyMicromapToMemoryEXT" ); 2046 vkCmdCopyMemoryToMicromapEXT = cast( PFN_vkCmdCopyMemoryToMicromapEXT ) vkGetInstanceProcAddr( instance, "vkCmdCopyMemoryToMicromapEXT" ); 2047 vkCmdWriteMicromapsPropertiesEXT = cast( PFN_vkCmdWriteMicromapsPropertiesEXT ) vkGetInstanceProcAddr( instance, "vkCmdWriteMicromapsPropertiesEXT" ); 2048 vkGetDeviceMicromapCompatibilityEXT = cast( PFN_vkGetDeviceMicromapCompatibilityEXT ) vkGetInstanceProcAddr( instance, "vkGetDeviceMicromapCompatibilityEXT" ); 2049 vkGetMicromapBuildSizesEXT = cast( PFN_vkGetMicromapBuildSizesEXT ) vkGetInstanceProcAddr( instance, "vkGetMicromapBuildSizesEXT" ); 2050 2051 // VK_EXT_pageable_device_local_memory 2052 vkSetDeviceMemoryPriorityEXT = cast( PFN_vkSetDeviceMemoryPriorityEXT ) vkGetInstanceProcAddr( instance, "vkSetDeviceMemoryPriorityEXT" ); 2053 2054 // VK_VALVE_descriptor_set_host_mapping 2055 vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast( PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE ) vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutHostMappingInfoVALVE" ); 2056 vkGetDescriptorSetHostMappingVALVE = cast( PFN_vkGetDescriptorSetHostMappingVALVE ) vkGetInstanceProcAddr( instance, "vkGetDescriptorSetHostMappingVALVE" ); 2057 2058 // VK_NV_copy_memory_indirect 2059 vkCmdCopyMemoryIndirectNV = cast( PFN_vkCmdCopyMemoryIndirectNV ) vkGetInstanceProcAddr( instance, "vkCmdCopyMemoryIndirectNV" ); 2060 vkCmdCopyMemoryToImageIndirectNV = cast( PFN_vkCmdCopyMemoryToImageIndirectNV ) vkGetInstanceProcAddr( instance, "vkCmdCopyMemoryToImageIndirectNV" ); 2061 2062 // VK_NV_memory_decompression 2063 vkCmdDecompressMemoryNV = cast( PFN_vkCmdDecompressMemoryNV ) vkGetInstanceProcAddr( instance, "vkCmdDecompressMemoryNV" ); 2064 vkCmdDecompressMemoryIndirectCountNV = cast( PFN_vkCmdDecompressMemoryIndirectCountNV ) vkGetInstanceProcAddr( instance, "vkCmdDecompressMemoryIndirectCountNV" ); 2065 2066 // VK_EXT_extended_dynamic_state3 2067 vkCmdSetTessellationDomainOriginEXT = cast( PFN_vkCmdSetTessellationDomainOriginEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetTessellationDomainOriginEXT" ); 2068 vkCmdSetDepthClampEnableEXT = cast( PFN_vkCmdSetDepthClampEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthClampEnableEXT" ); 2069 vkCmdSetPolygonModeEXT = cast( PFN_vkCmdSetPolygonModeEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetPolygonModeEXT" ); 2070 vkCmdSetRasterizationSamplesEXT = cast( PFN_vkCmdSetRasterizationSamplesEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetRasterizationSamplesEXT" ); 2071 vkCmdSetSampleMaskEXT = cast( PFN_vkCmdSetSampleMaskEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetSampleMaskEXT" ); 2072 vkCmdSetAlphaToCoverageEnableEXT = cast( PFN_vkCmdSetAlphaToCoverageEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetAlphaToCoverageEnableEXT" ); 2073 vkCmdSetAlphaToOneEnableEXT = cast( PFN_vkCmdSetAlphaToOneEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetAlphaToOneEnableEXT" ); 2074 vkCmdSetLogicOpEnableEXT = cast( PFN_vkCmdSetLogicOpEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetLogicOpEnableEXT" ); 2075 vkCmdSetColorBlendEnableEXT = cast( PFN_vkCmdSetColorBlendEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetColorBlendEnableEXT" ); 2076 vkCmdSetColorBlendEquationEXT = cast( PFN_vkCmdSetColorBlendEquationEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetColorBlendEquationEXT" ); 2077 vkCmdSetColorWriteMaskEXT = cast( PFN_vkCmdSetColorWriteMaskEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetColorWriteMaskEXT" ); 2078 vkCmdSetRasterizationStreamEXT = cast( PFN_vkCmdSetRasterizationStreamEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetRasterizationStreamEXT" ); 2079 vkCmdSetConservativeRasterizationModeEXT = cast( PFN_vkCmdSetConservativeRasterizationModeEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetConservativeRasterizationModeEXT" ); 2080 vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast( PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetExtraPrimitiveOverestimationSizeEXT" ); 2081 vkCmdSetDepthClipEnableEXT = cast( PFN_vkCmdSetDepthClipEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthClipEnableEXT" ); 2082 vkCmdSetSampleLocationsEnableEXT = cast( PFN_vkCmdSetSampleLocationsEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetSampleLocationsEnableEXT" ); 2083 vkCmdSetColorBlendAdvancedEXT = cast( PFN_vkCmdSetColorBlendAdvancedEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetColorBlendAdvancedEXT" ); 2084 vkCmdSetProvokingVertexModeEXT = cast( PFN_vkCmdSetProvokingVertexModeEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetProvokingVertexModeEXT" ); 2085 vkCmdSetLineRasterizationModeEXT = cast( PFN_vkCmdSetLineRasterizationModeEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetLineRasterizationModeEXT" ); 2086 vkCmdSetLineStippleEnableEXT = cast( PFN_vkCmdSetLineStippleEnableEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetLineStippleEnableEXT" ); 2087 vkCmdSetDepthClipNegativeOneToOneEXT = cast( PFN_vkCmdSetDepthClipNegativeOneToOneEXT ) vkGetInstanceProcAddr( instance, "vkCmdSetDepthClipNegativeOneToOneEXT" ); 2088 vkCmdSetViewportWScalingEnableNV = cast( PFN_vkCmdSetViewportWScalingEnableNV ) vkGetInstanceProcAddr( instance, "vkCmdSetViewportWScalingEnableNV" ); 2089 vkCmdSetViewportSwizzleNV = cast( PFN_vkCmdSetViewportSwizzleNV ) vkGetInstanceProcAddr( instance, "vkCmdSetViewportSwizzleNV" ); 2090 vkCmdSetCoverageToColorEnableNV = cast( PFN_vkCmdSetCoverageToColorEnableNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCoverageToColorEnableNV" ); 2091 vkCmdSetCoverageToColorLocationNV = cast( PFN_vkCmdSetCoverageToColorLocationNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCoverageToColorLocationNV" ); 2092 vkCmdSetCoverageModulationModeNV = cast( PFN_vkCmdSetCoverageModulationModeNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCoverageModulationModeNV" ); 2093 vkCmdSetCoverageModulationTableEnableNV = cast( PFN_vkCmdSetCoverageModulationTableEnableNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCoverageModulationTableEnableNV" ); 2094 vkCmdSetCoverageModulationTableNV = cast( PFN_vkCmdSetCoverageModulationTableNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCoverageModulationTableNV" ); 2095 vkCmdSetShadingRateImageEnableNV = cast( PFN_vkCmdSetShadingRateImageEnableNV ) vkGetInstanceProcAddr( instance, "vkCmdSetShadingRateImageEnableNV" ); 2096 vkCmdSetRepresentativeFragmentTestEnableNV = cast( PFN_vkCmdSetRepresentativeFragmentTestEnableNV ) vkGetInstanceProcAddr( instance, "vkCmdSetRepresentativeFragmentTestEnableNV" ); 2097 vkCmdSetCoverageReductionModeNV = cast( PFN_vkCmdSetCoverageReductionModeNV ) vkGetInstanceProcAddr( instance, "vkCmdSetCoverageReductionModeNV" ); 2098 2099 // VK_EXT_shader_module_identifier 2100 vkGetShaderModuleIdentifierEXT = cast( PFN_vkGetShaderModuleIdentifierEXT ) vkGetInstanceProcAddr( instance, "vkGetShaderModuleIdentifierEXT" ); 2101 vkGetShaderModuleCreateInfoIdentifierEXT = cast( PFN_vkGetShaderModuleCreateInfoIdentifierEXT ) vkGetInstanceProcAddr( instance, "vkGetShaderModuleCreateInfoIdentifierEXT" ); 2102 2103 // VK_NV_optical_flow 2104 vkCreateOpticalFlowSessionNV = cast( PFN_vkCreateOpticalFlowSessionNV ) vkGetInstanceProcAddr( instance, "vkCreateOpticalFlowSessionNV" ); 2105 vkDestroyOpticalFlowSessionNV = cast( PFN_vkDestroyOpticalFlowSessionNV ) vkGetInstanceProcAddr( instance, "vkDestroyOpticalFlowSessionNV" ); 2106 vkBindOpticalFlowSessionImageNV = cast( PFN_vkBindOpticalFlowSessionImageNV ) vkGetInstanceProcAddr( instance, "vkBindOpticalFlowSessionImageNV" ); 2107 vkCmdOpticalFlowExecuteNV = cast( PFN_vkCmdOpticalFlowExecuteNV ) vkGetInstanceProcAddr( instance, "vkCmdOpticalFlowExecuteNV" ); 2108 2109 // VK_QCOM_tile_properties 2110 vkGetFramebufferTilePropertiesQCOM = cast( PFN_vkGetFramebufferTilePropertiesQCOM ) vkGetInstanceProcAddr( instance, "vkGetFramebufferTilePropertiesQCOM" ); 2111 vkGetDynamicRenderingTilePropertiesQCOM = cast( PFN_vkGetDynamicRenderingTilePropertiesQCOM ) vkGetInstanceProcAddr( instance, "vkGetDynamicRenderingTilePropertiesQCOM" ); 2112 2113 // VK_KHR_acceleration_structure 2114 vkCreateAccelerationStructureKHR = cast( PFN_vkCreateAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureKHR" ); 2115 vkDestroyAccelerationStructureKHR = cast( PFN_vkDestroyAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureKHR" ); 2116 vkCmdBuildAccelerationStructuresKHR = cast( PFN_vkCmdBuildAccelerationStructuresKHR ) vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresKHR" ); 2117 vkCmdBuildAccelerationStructuresIndirectKHR = cast( PFN_vkCmdBuildAccelerationStructuresIndirectKHR ) vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresIndirectKHR" ); 2118 vkBuildAccelerationStructuresKHR = cast( PFN_vkBuildAccelerationStructuresKHR ) vkGetInstanceProcAddr( instance, "vkBuildAccelerationStructuresKHR" ); 2119 vkCopyAccelerationStructureKHR = cast( PFN_vkCopyAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureKHR" ); 2120 vkCopyAccelerationStructureToMemoryKHR = cast( PFN_vkCopyAccelerationStructureToMemoryKHR ) vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureToMemoryKHR" ); 2121 vkCopyMemoryToAccelerationStructureKHR = cast( PFN_vkCopyMemoryToAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCopyMemoryToAccelerationStructureKHR" ); 2122 vkWriteAccelerationStructuresPropertiesKHR = cast( PFN_vkWriteAccelerationStructuresPropertiesKHR ) vkGetInstanceProcAddr( instance, "vkWriteAccelerationStructuresPropertiesKHR" ); 2123 vkCmdCopyAccelerationStructureKHR = cast( PFN_vkCmdCopyAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureKHR" ); 2124 vkCmdCopyAccelerationStructureToMemoryKHR = cast( PFN_vkCmdCopyAccelerationStructureToMemoryKHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureToMemoryKHR" ); 2125 vkCmdCopyMemoryToAccelerationStructureKHR = cast( PFN_vkCmdCopyMemoryToAccelerationStructureKHR ) vkGetInstanceProcAddr( instance, "vkCmdCopyMemoryToAccelerationStructureKHR" ); 2126 vkGetAccelerationStructureDeviceAddressKHR = cast( PFN_vkGetAccelerationStructureDeviceAddressKHR ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureDeviceAddressKHR" ); 2127 vkCmdWriteAccelerationStructuresPropertiesKHR = cast( PFN_vkCmdWriteAccelerationStructuresPropertiesKHR ) vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesKHR" ); 2128 vkGetDeviceAccelerationStructureCompatibilityKHR = cast( PFN_vkGetDeviceAccelerationStructureCompatibilityKHR ) vkGetInstanceProcAddr( instance, "vkGetDeviceAccelerationStructureCompatibilityKHR" ); 2129 vkGetAccelerationStructureBuildSizesKHR = cast( PFN_vkGetAccelerationStructureBuildSizesKHR ) vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureBuildSizesKHR" ); 2130 2131 // VK_KHR_ray_tracing_pipeline 2132 vkCmdTraceRaysKHR = cast( PFN_vkCmdTraceRaysKHR ) vkGetInstanceProcAddr( instance, "vkCmdTraceRaysKHR" ); 2133 vkCreateRayTracingPipelinesKHR = cast( PFN_vkCreateRayTracingPipelinesKHR ) vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesKHR" ); 2134 vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast( PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR ) vkGetInstanceProcAddr( instance, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ); 2135 vkCmdTraceRaysIndirectKHR = cast( PFN_vkCmdTraceRaysIndirectKHR ) vkGetInstanceProcAddr( instance, "vkCmdTraceRaysIndirectKHR" ); 2136 vkGetRayTracingShaderGroupStackSizeKHR = cast( PFN_vkGetRayTracingShaderGroupStackSizeKHR ) vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupStackSizeKHR" ); 2137 vkCmdSetRayTracingPipelineStackSizeKHR = cast( PFN_vkCmdSetRayTracingPipelineStackSizeKHR ) vkGetInstanceProcAddr( instance, "vkCmdSetRayTracingPipelineStackSizeKHR" ); 2138 2139 // VK_EXT_mesh_shader 2140 vkCmdDrawMeshTasksEXT = cast( PFN_vkCmdDrawMeshTasksEXT ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksEXT" ); 2141 vkCmdDrawMeshTasksIndirectEXT = cast( PFN_vkCmdDrawMeshTasksIndirectEXT ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectEXT" ); 2142 vkCmdDrawMeshTasksIndirectCountEXT = cast( PFN_vkCmdDrawMeshTasksIndirectCountEXT ) vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectCountEXT" ); 2143 } 2144 2145 2146 /// with a valid VkDevice call this function to retrieve VkDevice, VkQueue and VkCommandBuffer related functions 2147 /// the functions call directly VkDevice and related resources and can be retrieved for one and only one VkDevice 2148 /// calling this function again with another VkDevices will overwrite the __gshared functions retrieved previously 2149 /// see module erupted.dispatch_device if multiple VkDevices will be used 2150 void loadDeviceLevelFunctions( VkDevice device ) { 2151 assert( vkGetDeviceProcAddr !is null, "Function pointer vkGetDeviceProcAddr is null!\nCall loadGlobalLevelFunctions -> loadInstanceLevelFunctions -> loadDeviceLevelFunctions( device )" ); 2152 2153 // VK_VERSION_1_0 2154 vkDestroyDevice = cast( PFN_vkDestroyDevice ) vkGetDeviceProcAddr( device, "vkDestroyDevice" ); 2155 vkGetDeviceQueue = cast( PFN_vkGetDeviceQueue ) vkGetDeviceProcAddr( device, "vkGetDeviceQueue" ); 2156 vkQueueSubmit = cast( PFN_vkQueueSubmit ) vkGetDeviceProcAddr( device, "vkQueueSubmit" ); 2157 vkQueueWaitIdle = cast( PFN_vkQueueWaitIdle ) vkGetDeviceProcAddr( device, "vkQueueWaitIdle" ); 2158 vkDeviceWaitIdle = cast( PFN_vkDeviceWaitIdle ) vkGetDeviceProcAddr( device, "vkDeviceWaitIdle" ); 2159 vkAllocateMemory = cast( PFN_vkAllocateMemory ) vkGetDeviceProcAddr( device, "vkAllocateMemory" ); 2160 vkFreeMemory = cast( PFN_vkFreeMemory ) vkGetDeviceProcAddr( device, "vkFreeMemory" ); 2161 vkMapMemory = cast( PFN_vkMapMemory ) vkGetDeviceProcAddr( device, "vkMapMemory" ); 2162 vkUnmapMemory = cast( PFN_vkUnmapMemory ) vkGetDeviceProcAddr( device, "vkUnmapMemory" ); 2163 vkFlushMappedMemoryRanges = cast( PFN_vkFlushMappedMemoryRanges ) vkGetDeviceProcAddr( device, "vkFlushMappedMemoryRanges" ); 2164 vkInvalidateMappedMemoryRanges = cast( PFN_vkInvalidateMappedMemoryRanges ) vkGetDeviceProcAddr( device, "vkInvalidateMappedMemoryRanges" ); 2165 vkGetDeviceMemoryCommitment = cast( PFN_vkGetDeviceMemoryCommitment ) vkGetDeviceProcAddr( device, "vkGetDeviceMemoryCommitment" ); 2166 vkBindBufferMemory = cast( PFN_vkBindBufferMemory ) vkGetDeviceProcAddr( device, "vkBindBufferMemory" ); 2167 vkBindImageMemory = cast( PFN_vkBindImageMemory ) vkGetDeviceProcAddr( device, "vkBindImageMemory" ); 2168 vkGetBufferMemoryRequirements = cast( PFN_vkGetBufferMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements" ); 2169 vkGetImageMemoryRequirements = cast( PFN_vkGetImageMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements" ); 2170 vkGetImageSparseMemoryRequirements = cast( PFN_vkGetImageSparseMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements" ); 2171 vkQueueBindSparse = cast( PFN_vkQueueBindSparse ) vkGetDeviceProcAddr( device, "vkQueueBindSparse" ); 2172 vkCreateFence = cast( PFN_vkCreateFence ) vkGetDeviceProcAddr( device, "vkCreateFence" ); 2173 vkDestroyFence = cast( PFN_vkDestroyFence ) vkGetDeviceProcAddr( device, "vkDestroyFence" ); 2174 vkResetFences = cast( PFN_vkResetFences ) vkGetDeviceProcAddr( device, "vkResetFences" ); 2175 vkGetFenceStatus = cast( PFN_vkGetFenceStatus ) vkGetDeviceProcAddr( device, "vkGetFenceStatus" ); 2176 vkWaitForFences = cast( PFN_vkWaitForFences ) vkGetDeviceProcAddr( device, "vkWaitForFences" ); 2177 vkCreateSemaphore = cast( PFN_vkCreateSemaphore ) vkGetDeviceProcAddr( device, "vkCreateSemaphore" ); 2178 vkDestroySemaphore = cast( PFN_vkDestroySemaphore ) vkGetDeviceProcAddr( device, "vkDestroySemaphore" ); 2179 vkCreateEvent = cast( PFN_vkCreateEvent ) vkGetDeviceProcAddr( device, "vkCreateEvent" ); 2180 vkDestroyEvent = cast( PFN_vkDestroyEvent ) vkGetDeviceProcAddr( device, "vkDestroyEvent" ); 2181 vkGetEventStatus = cast( PFN_vkGetEventStatus ) vkGetDeviceProcAddr( device, "vkGetEventStatus" ); 2182 vkSetEvent = cast( PFN_vkSetEvent ) vkGetDeviceProcAddr( device, "vkSetEvent" ); 2183 vkResetEvent = cast( PFN_vkResetEvent ) vkGetDeviceProcAddr( device, "vkResetEvent" ); 2184 vkCreateQueryPool = cast( PFN_vkCreateQueryPool ) vkGetDeviceProcAddr( device, "vkCreateQueryPool" ); 2185 vkDestroyQueryPool = cast( PFN_vkDestroyQueryPool ) vkGetDeviceProcAddr( device, "vkDestroyQueryPool" ); 2186 vkGetQueryPoolResults = cast( PFN_vkGetQueryPoolResults ) vkGetDeviceProcAddr( device, "vkGetQueryPoolResults" ); 2187 vkCreateBuffer = cast( PFN_vkCreateBuffer ) vkGetDeviceProcAddr( device, "vkCreateBuffer" ); 2188 vkDestroyBuffer = cast( PFN_vkDestroyBuffer ) vkGetDeviceProcAddr( device, "vkDestroyBuffer" ); 2189 vkCreateBufferView = cast( PFN_vkCreateBufferView ) vkGetDeviceProcAddr( device, "vkCreateBufferView" ); 2190 vkDestroyBufferView = cast( PFN_vkDestroyBufferView ) vkGetDeviceProcAddr( device, "vkDestroyBufferView" ); 2191 vkCreateImage = cast( PFN_vkCreateImage ) vkGetDeviceProcAddr( device, "vkCreateImage" ); 2192 vkDestroyImage = cast( PFN_vkDestroyImage ) vkGetDeviceProcAddr( device, "vkDestroyImage" ); 2193 vkGetImageSubresourceLayout = cast( PFN_vkGetImageSubresourceLayout ) vkGetDeviceProcAddr( device, "vkGetImageSubresourceLayout" ); 2194 vkCreateImageView = cast( PFN_vkCreateImageView ) vkGetDeviceProcAddr( device, "vkCreateImageView" ); 2195 vkDestroyImageView = cast( PFN_vkDestroyImageView ) vkGetDeviceProcAddr( device, "vkDestroyImageView" ); 2196 vkCreateShaderModule = cast( PFN_vkCreateShaderModule ) vkGetDeviceProcAddr( device, "vkCreateShaderModule" ); 2197 vkDestroyShaderModule = cast( PFN_vkDestroyShaderModule ) vkGetDeviceProcAddr( device, "vkDestroyShaderModule" ); 2198 vkCreatePipelineCache = cast( PFN_vkCreatePipelineCache ) vkGetDeviceProcAddr( device, "vkCreatePipelineCache" ); 2199 vkDestroyPipelineCache = cast( PFN_vkDestroyPipelineCache ) vkGetDeviceProcAddr( device, "vkDestroyPipelineCache" ); 2200 vkGetPipelineCacheData = cast( PFN_vkGetPipelineCacheData ) vkGetDeviceProcAddr( device, "vkGetPipelineCacheData" ); 2201 vkMergePipelineCaches = cast( PFN_vkMergePipelineCaches ) vkGetDeviceProcAddr( device, "vkMergePipelineCaches" ); 2202 vkCreateGraphicsPipelines = cast( PFN_vkCreateGraphicsPipelines ) vkGetDeviceProcAddr( device, "vkCreateGraphicsPipelines" ); 2203 vkCreateComputePipelines = cast( PFN_vkCreateComputePipelines ) vkGetDeviceProcAddr( device, "vkCreateComputePipelines" ); 2204 vkDestroyPipeline = cast( PFN_vkDestroyPipeline ) vkGetDeviceProcAddr( device, "vkDestroyPipeline" ); 2205 vkCreatePipelineLayout = cast( PFN_vkCreatePipelineLayout ) vkGetDeviceProcAddr( device, "vkCreatePipelineLayout" ); 2206 vkDestroyPipelineLayout = cast( PFN_vkDestroyPipelineLayout ) vkGetDeviceProcAddr( device, "vkDestroyPipelineLayout" ); 2207 vkCreateSampler = cast( PFN_vkCreateSampler ) vkGetDeviceProcAddr( device, "vkCreateSampler" ); 2208 vkDestroySampler = cast( PFN_vkDestroySampler ) vkGetDeviceProcAddr( device, "vkDestroySampler" ); 2209 vkCreateDescriptorSetLayout = cast( PFN_vkCreateDescriptorSetLayout ) vkGetDeviceProcAddr( device, "vkCreateDescriptorSetLayout" ); 2210 vkDestroyDescriptorSetLayout = cast( PFN_vkDestroyDescriptorSetLayout ) vkGetDeviceProcAddr( device, "vkDestroyDescriptorSetLayout" ); 2211 vkCreateDescriptorPool = cast( PFN_vkCreateDescriptorPool ) vkGetDeviceProcAddr( device, "vkCreateDescriptorPool" ); 2212 vkDestroyDescriptorPool = cast( PFN_vkDestroyDescriptorPool ) vkGetDeviceProcAddr( device, "vkDestroyDescriptorPool" ); 2213 vkResetDescriptorPool = cast( PFN_vkResetDescriptorPool ) vkGetDeviceProcAddr( device, "vkResetDescriptorPool" ); 2214 vkAllocateDescriptorSets = cast( PFN_vkAllocateDescriptorSets ) vkGetDeviceProcAddr( device, "vkAllocateDescriptorSets" ); 2215 vkFreeDescriptorSets = cast( PFN_vkFreeDescriptorSets ) vkGetDeviceProcAddr( device, "vkFreeDescriptorSets" ); 2216 vkUpdateDescriptorSets = cast( PFN_vkUpdateDescriptorSets ) vkGetDeviceProcAddr( device, "vkUpdateDescriptorSets" ); 2217 vkCreateFramebuffer = cast( PFN_vkCreateFramebuffer ) vkGetDeviceProcAddr( device, "vkCreateFramebuffer" ); 2218 vkDestroyFramebuffer = cast( PFN_vkDestroyFramebuffer ) vkGetDeviceProcAddr( device, "vkDestroyFramebuffer" ); 2219 vkCreateRenderPass = cast( PFN_vkCreateRenderPass ) vkGetDeviceProcAddr( device, "vkCreateRenderPass" ); 2220 vkDestroyRenderPass = cast( PFN_vkDestroyRenderPass ) vkGetDeviceProcAddr( device, "vkDestroyRenderPass" ); 2221 vkGetRenderAreaGranularity = cast( PFN_vkGetRenderAreaGranularity ) vkGetDeviceProcAddr( device, "vkGetRenderAreaGranularity" ); 2222 vkCreateCommandPool = cast( PFN_vkCreateCommandPool ) vkGetDeviceProcAddr( device, "vkCreateCommandPool" ); 2223 vkDestroyCommandPool = cast( PFN_vkDestroyCommandPool ) vkGetDeviceProcAddr( device, "vkDestroyCommandPool" ); 2224 vkResetCommandPool = cast( PFN_vkResetCommandPool ) vkGetDeviceProcAddr( device, "vkResetCommandPool" ); 2225 vkAllocateCommandBuffers = cast( PFN_vkAllocateCommandBuffers ) vkGetDeviceProcAddr( device, "vkAllocateCommandBuffers" ); 2226 vkFreeCommandBuffers = cast( PFN_vkFreeCommandBuffers ) vkGetDeviceProcAddr( device, "vkFreeCommandBuffers" ); 2227 vkBeginCommandBuffer = cast( PFN_vkBeginCommandBuffer ) vkGetDeviceProcAddr( device, "vkBeginCommandBuffer" ); 2228 vkEndCommandBuffer = cast( PFN_vkEndCommandBuffer ) vkGetDeviceProcAddr( device, "vkEndCommandBuffer" ); 2229 vkResetCommandBuffer = cast( PFN_vkResetCommandBuffer ) vkGetDeviceProcAddr( device, "vkResetCommandBuffer" ); 2230 vkCmdBindPipeline = cast( PFN_vkCmdBindPipeline ) vkGetDeviceProcAddr( device, "vkCmdBindPipeline" ); 2231 vkCmdSetViewport = cast( PFN_vkCmdSetViewport ) vkGetDeviceProcAddr( device, "vkCmdSetViewport" ); 2232 vkCmdSetScissor = cast( PFN_vkCmdSetScissor ) vkGetDeviceProcAddr( device, "vkCmdSetScissor" ); 2233 vkCmdSetLineWidth = cast( PFN_vkCmdSetLineWidth ) vkGetDeviceProcAddr( device, "vkCmdSetLineWidth" ); 2234 vkCmdSetDepthBias = cast( PFN_vkCmdSetDepthBias ) vkGetDeviceProcAddr( device, "vkCmdSetDepthBias" ); 2235 vkCmdSetBlendConstants = cast( PFN_vkCmdSetBlendConstants ) vkGetDeviceProcAddr( device, "vkCmdSetBlendConstants" ); 2236 vkCmdSetDepthBounds = cast( PFN_vkCmdSetDepthBounds ) vkGetDeviceProcAddr( device, "vkCmdSetDepthBounds" ); 2237 vkCmdSetStencilCompareMask = cast( PFN_vkCmdSetStencilCompareMask ) vkGetDeviceProcAddr( device, "vkCmdSetStencilCompareMask" ); 2238 vkCmdSetStencilWriteMask = cast( PFN_vkCmdSetStencilWriteMask ) vkGetDeviceProcAddr( device, "vkCmdSetStencilWriteMask" ); 2239 vkCmdSetStencilReference = cast( PFN_vkCmdSetStencilReference ) vkGetDeviceProcAddr( device, "vkCmdSetStencilReference" ); 2240 vkCmdBindDescriptorSets = cast( PFN_vkCmdBindDescriptorSets ) vkGetDeviceProcAddr( device, "vkCmdBindDescriptorSets" ); 2241 vkCmdBindIndexBuffer = cast( PFN_vkCmdBindIndexBuffer ) vkGetDeviceProcAddr( device, "vkCmdBindIndexBuffer" ); 2242 vkCmdBindVertexBuffers = cast( PFN_vkCmdBindVertexBuffers ) vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers" ); 2243 vkCmdDraw = cast( PFN_vkCmdDraw ) vkGetDeviceProcAddr( device, "vkCmdDraw" ); 2244 vkCmdDrawIndexed = cast( PFN_vkCmdDrawIndexed ) vkGetDeviceProcAddr( device, "vkCmdDrawIndexed" ); 2245 vkCmdDrawIndirect = cast( PFN_vkCmdDrawIndirect ) vkGetDeviceProcAddr( device, "vkCmdDrawIndirect" ); 2246 vkCmdDrawIndexedIndirect = cast( PFN_vkCmdDrawIndexedIndirect ) vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirect" ); 2247 vkCmdDispatch = cast( PFN_vkCmdDispatch ) vkGetDeviceProcAddr( device, "vkCmdDispatch" ); 2248 vkCmdDispatchIndirect = cast( PFN_vkCmdDispatchIndirect ) vkGetDeviceProcAddr( device, "vkCmdDispatchIndirect" ); 2249 vkCmdCopyBuffer = cast( PFN_vkCmdCopyBuffer ) vkGetDeviceProcAddr( device, "vkCmdCopyBuffer" ); 2250 vkCmdCopyImage = cast( PFN_vkCmdCopyImage ) vkGetDeviceProcAddr( device, "vkCmdCopyImage" ); 2251 vkCmdBlitImage = cast( PFN_vkCmdBlitImage ) vkGetDeviceProcAddr( device, "vkCmdBlitImage" ); 2252 vkCmdCopyBufferToImage = cast( PFN_vkCmdCopyBufferToImage ) vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage" ); 2253 vkCmdCopyImageToBuffer = cast( PFN_vkCmdCopyImageToBuffer ) vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer" ); 2254 vkCmdUpdateBuffer = cast( PFN_vkCmdUpdateBuffer ) vkGetDeviceProcAddr( device, "vkCmdUpdateBuffer" ); 2255 vkCmdFillBuffer = cast( PFN_vkCmdFillBuffer ) vkGetDeviceProcAddr( device, "vkCmdFillBuffer" ); 2256 vkCmdClearColorImage = cast( PFN_vkCmdClearColorImage ) vkGetDeviceProcAddr( device, "vkCmdClearColorImage" ); 2257 vkCmdClearDepthStencilImage = cast( PFN_vkCmdClearDepthStencilImage ) vkGetDeviceProcAddr( device, "vkCmdClearDepthStencilImage" ); 2258 vkCmdClearAttachments = cast( PFN_vkCmdClearAttachments ) vkGetDeviceProcAddr( device, "vkCmdClearAttachments" ); 2259 vkCmdResolveImage = cast( PFN_vkCmdResolveImage ) vkGetDeviceProcAddr( device, "vkCmdResolveImage" ); 2260 vkCmdSetEvent = cast( PFN_vkCmdSetEvent ) vkGetDeviceProcAddr( device, "vkCmdSetEvent" ); 2261 vkCmdResetEvent = cast( PFN_vkCmdResetEvent ) vkGetDeviceProcAddr( device, "vkCmdResetEvent" ); 2262 vkCmdWaitEvents = cast( PFN_vkCmdWaitEvents ) vkGetDeviceProcAddr( device, "vkCmdWaitEvents" ); 2263 vkCmdPipelineBarrier = cast( PFN_vkCmdPipelineBarrier ) vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier" ); 2264 vkCmdBeginQuery = cast( PFN_vkCmdBeginQuery ) vkGetDeviceProcAddr( device, "vkCmdBeginQuery" ); 2265 vkCmdEndQuery = cast( PFN_vkCmdEndQuery ) vkGetDeviceProcAddr( device, "vkCmdEndQuery" ); 2266 vkCmdResetQueryPool = cast( PFN_vkCmdResetQueryPool ) vkGetDeviceProcAddr( device, "vkCmdResetQueryPool" ); 2267 vkCmdWriteTimestamp = cast( PFN_vkCmdWriteTimestamp ) vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp" ); 2268 vkCmdCopyQueryPoolResults = cast( PFN_vkCmdCopyQueryPoolResults ) vkGetDeviceProcAddr( device, "vkCmdCopyQueryPoolResults" ); 2269 vkCmdPushConstants = cast( PFN_vkCmdPushConstants ) vkGetDeviceProcAddr( device, "vkCmdPushConstants" ); 2270 vkCmdBeginRenderPass = cast( PFN_vkCmdBeginRenderPass ) vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass" ); 2271 vkCmdNextSubpass = cast( PFN_vkCmdNextSubpass ) vkGetDeviceProcAddr( device, "vkCmdNextSubpass" ); 2272 vkCmdEndRenderPass = cast( PFN_vkCmdEndRenderPass ) vkGetDeviceProcAddr( device, "vkCmdEndRenderPass" ); 2273 vkCmdExecuteCommands = cast( PFN_vkCmdExecuteCommands ) vkGetDeviceProcAddr( device, "vkCmdExecuteCommands" ); 2274 2275 // VK_VERSION_1_1 2276 vkBindBufferMemory2 = cast( PFN_vkBindBufferMemory2 ) vkGetDeviceProcAddr( device, "vkBindBufferMemory2" ); 2277 vkBindImageMemory2 = cast( PFN_vkBindImageMemory2 ) vkGetDeviceProcAddr( device, "vkBindImageMemory2" ); 2278 vkGetDeviceGroupPeerMemoryFeatures = cast( PFN_vkGetDeviceGroupPeerMemoryFeatures ) vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeatures" ); 2279 vkCmdSetDeviceMask = cast( PFN_vkCmdSetDeviceMask ) vkGetDeviceProcAddr( device, "vkCmdSetDeviceMask" ); 2280 vkCmdDispatchBase = cast( PFN_vkCmdDispatchBase ) vkGetDeviceProcAddr( device, "vkCmdDispatchBase" ); 2281 vkGetImageMemoryRequirements2 = cast( PFN_vkGetImageMemoryRequirements2 ) vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2" ); 2282 vkGetBufferMemoryRequirements2 = cast( PFN_vkGetBufferMemoryRequirements2 ) vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2" ); 2283 vkGetImageSparseMemoryRequirements2 = cast( PFN_vkGetImageSparseMemoryRequirements2 ) vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2" ); 2284 vkTrimCommandPool = cast( PFN_vkTrimCommandPool ) vkGetDeviceProcAddr( device, "vkTrimCommandPool" ); 2285 vkGetDeviceQueue2 = cast( PFN_vkGetDeviceQueue2 ) vkGetDeviceProcAddr( device, "vkGetDeviceQueue2" ); 2286 vkCreateSamplerYcbcrConversion = cast( PFN_vkCreateSamplerYcbcrConversion ) vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversion" ); 2287 vkDestroySamplerYcbcrConversion = cast( PFN_vkDestroySamplerYcbcrConversion ) vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversion" ); 2288 vkCreateDescriptorUpdateTemplate = cast( PFN_vkCreateDescriptorUpdateTemplate ) vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplate" ); 2289 vkDestroyDescriptorUpdateTemplate = cast( PFN_vkDestroyDescriptorUpdateTemplate ) vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplate" ); 2290 vkUpdateDescriptorSetWithTemplate = cast( PFN_vkUpdateDescriptorSetWithTemplate ) vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplate" ); 2291 vkGetDescriptorSetLayoutSupport = cast( PFN_vkGetDescriptorSetLayoutSupport ) vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupport" ); 2292 2293 // VK_VERSION_1_2 2294 vkCmdDrawIndirectCount = cast( PFN_vkCmdDrawIndirectCount ) vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCount" ); 2295 vkCmdDrawIndexedIndirectCount = cast( PFN_vkCmdDrawIndexedIndirectCount ) vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCount" ); 2296 vkCreateRenderPass2 = cast( PFN_vkCreateRenderPass2 ) vkGetDeviceProcAddr( device, "vkCreateRenderPass2" ); 2297 vkCmdBeginRenderPass2 = cast( PFN_vkCmdBeginRenderPass2 ) vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2" ); 2298 vkCmdNextSubpass2 = cast( PFN_vkCmdNextSubpass2 ) vkGetDeviceProcAddr( device, "vkCmdNextSubpass2" ); 2299 vkCmdEndRenderPass2 = cast( PFN_vkCmdEndRenderPass2 ) vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2" ); 2300 vkResetQueryPool = cast( PFN_vkResetQueryPool ) vkGetDeviceProcAddr( device, "vkResetQueryPool" ); 2301 vkGetSemaphoreCounterValue = cast( PFN_vkGetSemaphoreCounterValue ) vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValue" ); 2302 vkWaitSemaphores = cast( PFN_vkWaitSemaphores ) vkGetDeviceProcAddr( device, "vkWaitSemaphores" ); 2303 vkSignalSemaphore = cast( PFN_vkSignalSemaphore ) vkGetDeviceProcAddr( device, "vkSignalSemaphore" ); 2304 vkGetBufferDeviceAddress = cast( PFN_vkGetBufferDeviceAddress ) vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddress" ); 2305 vkGetBufferOpaqueCaptureAddress = cast( PFN_vkGetBufferOpaqueCaptureAddress ) vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddress" ); 2306 vkGetDeviceMemoryOpaqueCaptureAddress = cast( PFN_vkGetDeviceMemoryOpaqueCaptureAddress ) vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddress" ); 2307 2308 // VK_VERSION_1_3 2309 vkCreatePrivateDataSlot = cast( PFN_vkCreatePrivateDataSlot ) vkGetDeviceProcAddr( device, "vkCreatePrivateDataSlot" ); 2310 vkDestroyPrivateDataSlot = cast( PFN_vkDestroyPrivateDataSlot ) vkGetDeviceProcAddr( device, "vkDestroyPrivateDataSlot" ); 2311 vkSetPrivateData = cast( PFN_vkSetPrivateData ) vkGetDeviceProcAddr( device, "vkSetPrivateData" ); 2312 vkGetPrivateData = cast( PFN_vkGetPrivateData ) vkGetDeviceProcAddr( device, "vkGetPrivateData" ); 2313 vkCmdSetEvent2 = cast( PFN_vkCmdSetEvent2 ) vkGetDeviceProcAddr( device, "vkCmdSetEvent2" ); 2314 vkCmdResetEvent2 = cast( PFN_vkCmdResetEvent2 ) vkGetDeviceProcAddr( device, "vkCmdResetEvent2" ); 2315 vkCmdWaitEvents2 = cast( PFN_vkCmdWaitEvents2 ) vkGetDeviceProcAddr( device, "vkCmdWaitEvents2" ); 2316 vkCmdPipelineBarrier2 = cast( PFN_vkCmdPipelineBarrier2 ) vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier2" ); 2317 vkCmdWriteTimestamp2 = cast( PFN_vkCmdWriteTimestamp2 ) vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp2" ); 2318 vkQueueSubmit2 = cast( PFN_vkQueueSubmit2 ) vkGetDeviceProcAddr( device, "vkQueueSubmit2" ); 2319 vkCmdCopyBuffer2 = cast( PFN_vkCmdCopyBuffer2 ) vkGetDeviceProcAddr( device, "vkCmdCopyBuffer2" ); 2320 vkCmdCopyImage2 = cast( PFN_vkCmdCopyImage2 ) vkGetDeviceProcAddr( device, "vkCmdCopyImage2" ); 2321 vkCmdCopyBufferToImage2 = cast( PFN_vkCmdCopyBufferToImage2 ) vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage2" ); 2322 vkCmdCopyImageToBuffer2 = cast( PFN_vkCmdCopyImageToBuffer2 ) vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer2" ); 2323 vkCmdBlitImage2 = cast( PFN_vkCmdBlitImage2 ) vkGetDeviceProcAddr( device, "vkCmdBlitImage2" ); 2324 vkCmdResolveImage2 = cast( PFN_vkCmdResolveImage2 ) vkGetDeviceProcAddr( device, "vkCmdResolveImage2" ); 2325 vkCmdBeginRendering = cast( PFN_vkCmdBeginRendering ) vkGetDeviceProcAddr( device, "vkCmdBeginRendering" ); 2326 vkCmdEndRendering = cast( PFN_vkCmdEndRendering ) vkGetDeviceProcAddr( device, "vkCmdEndRendering" ); 2327 vkCmdSetCullMode = cast( PFN_vkCmdSetCullMode ) vkGetDeviceProcAddr( device, "vkCmdSetCullMode" ); 2328 vkCmdSetFrontFace = cast( PFN_vkCmdSetFrontFace ) vkGetDeviceProcAddr( device, "vkCmdSetFrontFace" ); 2329 vkCmdSetPrimitiveTopology = cast( PFN_vkCmdSetPrimitiveTopology ) vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveTopology" ); 2330 vkCmdSetViewportWithCount = cast( PFN_vkCmdSetViewportWithCount ) vkGetDeviceProcAddr( device, "vkCmdSetViewportWithCount" ); 2331 vkCmdSetScissorWithCount = cast( PFN_vkCmdSetScissorWithCount ) vkGetDeviceProcAddr( device, "vkCmdSetScissorWithCount" ); 2332 vkCmdBindVertexBuffers2 = cast( PFN_vkCmdBindVertexBuffers2 ) vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers2" ); 2333 vkCmdSetDepthTestEnable = cast( PFN_vkCmdSetDepthTestEnable ) vkGetDeviceProcAddr( device, "vkCmdSetDepthTestEnable" ); 2334 vkCmdSetDepthWriteEnable = cast( PFN_vkCmdSetDepthWriteEnable ) vkGetDeviceProcAddr( device, "vkCmdSetDepthWriteEnable" ); 2335 vkCmdSetDepthCompareOp = cast( PFN_vkCmdSetDepthCompareOp ) vkGetDeviceProcAddr( device, "vkCmdSetDepthCompareOp" ); 2336 vkCmdSetDepthBoundsTestEnable = cast( PFN_vkCmdSetDepthBoundsTestEnable ) vkGetDeviceProcAddr( device, "vkCmdSetDepthBoundsTestEnable" ); 2337 vkCmdSetStencilTestEnable = cast( PFN_vkCmdSetStencilTestEnable ) vkGetDeviceProcAddr( device, "vkCmdSetStencilTestEnable" ); 2338 vkCmdSetStencilOp = cast( PFN_vkCmdSetStencilOp ) vkGetDeviceProcAddr( device, "vkCmdSetStencilOp" ); 2339 vkCmdSetRasterizerDiscardEnable = cast( PFN_vkCmdSetRasterizerDiscardEnable ) vkGetDeviceProcAddr( device, "vkCmdSetRasterizerDiscardEnable" ); 2340 vkCmdSetDepthBiasEnable = cast( PFN_vkCmdSetDepthBiasEnable ) vkGetDeviceProcAddr( device, "vkCmdSetDepthBiasEnable" ); 2341 vkCmdSetPrimitiveRestartEnable = cast( PFN_vkCmdSetPrimitiveRestartEnable ) vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveRestartEnable" ); 2342 vkGetDeviceBufferMemoryRequirements = cast( PFN_vkGetDeviceBufferMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetDeviceBufferMemoryRequirements" ); 2343 vkGetDeviceImageMemoryRequirements = cast( PFN_vkGetDeviceImageMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetDeviceImageMemoryRequirements" ); 2344 vkGetDeviceImageSparseMemoryRequirements = cast( PFN_vkGetDeviceImageSparseMemoryRequirements ) vkGetDeviceProcAddr( device, "vkGetDeviceImageSparseMemoryRequirements" ); 2345 2346 // VK_KHR_swapchain 2347 vkCreateSwapchainKHR = cast( PFN_vkCreateSwapchainKHR ) vkGetDeviceProcAddr( device, "vkCreateSwapchainKHR" ); 2348 vkDestroySwapchainKHR = cast( PFN_vkDestroySwapchainKHR ) vkGetDeviceProcAddr( device, "vkDestroySwapchainKHR" ); 2349 vkGetSwapchainImagesKHR = cast( PFN_vkGetSwapchainImagesKHR ) vkGetDeviceProcAddr( device, "vkGetSwapchainImagesKHR" ); 2350 vkAcquireNextImageKHR = cast( PFN_vkAcquireNextImageKHR ) vkGetDeviceProcAddr( device, "vkAcquireNextImageKHR" ); 2351 vkQueuePresentKHR = cast( PFN_vkQueuePresentKHR ) vkGetDeviceProcAddr( device, "vkQueuePresentKHR" ); 2352 vkGetDeviceGroupPresentCapabilitiesKHR = cast( PFN_vkGetDeviceGroupPresentCapabilitiesKHR ) vkGetDeviceProcAddr( device, "vkGetDeviceGroupPresentCapabilitiesKHR" ); 2353 vkGetDeviceGroupSurfacePresentModesKHR = cast( PFN_vkGetDeviceGroupSurfacePresentModesKHR ) vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModesKHR" ); 2354 vkAcquireNextImage2KHR = cast( PFN_vkAcquireNextImage2KHR ) vkGetDeviceProcAddr( device, "vkAcquireNextImage2KHR" ); 2355 2356 // VK_KHR_display_swapchain 2357 vkCreateSharedSwapchainsKHR = cast( PFN_vkCreateSharedSwapchainsKHR ) vkGetDeviceProcAddr( device, "vkCreateSharedSwapchainsKHR" ); 2358 2359 // VK_KHR_external_memory_fd 2360 vkGetMemoryFdKHR = cast( PFN_vkGetMemoryFdKHR ) vkGetDeviceProcAddr( device, "vkGetMemoryFdKHR" ); 2361 vkGetMemoryFdPropertiesKHR = cast( PFN_vkGetMemoryFdPropertiesKHR ) vkGetDeviceProcAddr( device, "vkGetMemoryFdPropertiesKHR" ); 2362 2363 // VK_KHR_external_semaphore_fd 2364 vkImportSemaphoreFdKHR = cast( PFN_vkImportSemaphoreFdKHR ) vkGetDeviceProcAddr( device, "vkImportSemaphoreFdKHR" ); 2365 vkGetSemaphoreFdKHR = cast( PFN_vkGetSemaphoreFdKHR ) vkGetDeviceProcAddr( device, "vkGetSemaphoreFdKHR" ); 2366 2367 // VK_KHR_push_descriptor 2368 vkCmdPushDescriptorSetKHR = cast( PFN_vkCmdPushDescriptorSetKHR ) vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetKHR" ); 2369 vkCmdPushDescriptorSetWithTemplateKHR = cast( PFN_vkCmdPushDescriptorSetWithTemplateKHR ) vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetWithTemplateKHR" ); 2370 2371 // VK_KHR_shared_presentable_image 2372 vkGetSwapchainStatusKHR = cast( PFN_vkGetSwapchainStatusKHR ) vkGetDeviceProcAddr( device, "vkGetSwapchainStatusKHR" ); 2373 2374 // VK_KHR_external_fence_fd 2375 vkImportFenceFdKHR = cast( PFN_vkImportFenceFdKHR ) vkGetDeviceProcAddr( device, "vkImportFenceFdKHR" ); 2376 vkGetFenceFdKHR = cast( PFN_vkGetFenceFdKHR ) vkGetDeviceProcAddr( device, "vkGetFenceFdKHR" ); 2377 2378 // VK_KHR_performance_query 2379 vkAcquireProfilingLockKHR = cast( PFN_vkAcquireProfilingLockKHR ) vkGetDeviceProcAddr( device, "vkAcquireProfilingLockKHR" ); 2380 vkReleaseProfilingLockKHR = cast( PFN_vkReleaseProfilingLockKHR ) vkGetDeviceProcAddr( device, "vkReleaseProfilingLockKHR" ); 2381 2382 // VK_KHR_fragment_shading_rate 2383 vkCmdSetFragmentShadingRateKHR = cast( PFN_vkCmdSetFragmentShadingRateKHR ) vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateKHR" ); 2384 2385 // VK_KHR_present_wait 2386 vkWaitForPresentKHR = cast( PFN_vkWaitForPresentKHR ) vkGetDeviceProcAddr( device, "vkWaitForPresentKHR" ); 2387 2388 // VK_KHR_deferred_host_operations 2389 vkCreateDeferredOperationKHR = cast( PFN_vkCreateDeferredOperationKHR ) vkGetDeviceProcAddr( device, "vkCreateDeferredOperationKHR" ); 2390 vkDestroyDeferredOperationKHR = cast( PFN_vkDestroyDeferredOperationKHR ) vkGetDeviceProcAddr( device, "vkDestroyDeferredOperationKHR" ); 2391 vkGetDeferredOperationMaxConcurrencyKHR = cast( PFN_vkGetDeferredOperationMaxConcurrencyKHR ) vkGetDeviceProcAddr( device, "vkGetDeferredOperationMaxConcurrencyKHR" ); 2392 vkGetDeferredOperationResultKHR = cast( PFN_vkGetDeferredOperationResultKHR ) vkGetDeviceProcAddr( device, "vkGetDeferredOperationResultKHR" ); 2393 vkDeferredOperationJoinKHR = cast( PFN_vkDeferredOperationJoinKHR ) vkGetDeviceProcAddr( device, "vkDeferredOperationJoinKHR" ); 2394 2395 // VK_KHR_pipeline_executable_properties 2396 vkGetPipelineExecutablePropertiesKHR = cast( PFN_vkGetPipelineExecutablePropertiesKHR ) vkGetDeviceProcAddr( device, "vkGetPipelineExecutablePropertiesKHR" ); 2397 vkGetPipelineExecutableStatisticsKHR = cast( PFN_vkGetPipelineExecutableStatisticsKHR ) vkGetDeviceProcAddr( device, "vkGetPipelineExecutableStatisticsKHR" ); 2398 vkGetPipelineExecutableInternalRepresentationsKHR = cast( PFN_vkGetPipelineExecutableInternalRepresentationsKHR ) vkGetDeviceProcAddr( device, "vkGetPipelineExecutableInternalRepresentationsKHR" ); 2399 2400 // VK_KHR_synchronization2 2401 vkCmdWriteBufferMarker2AMD = cast( PFN_vkCmdWriteBufferMarker2AMD ) vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarker2AMD" ); 2402 vkGetQueueCheckpointData2NV = cast( PFN_vkGetQueueCheckpointData2NV ) vkGetDeviceProcAddr( device, "vkGetQueueCheckpointData2NV" ); 2403 2404 // VK_KHR_ray_tracing_maintenance1 2405 vkCmdTraceRaysIndirect2KHR = cast( PFN_vkCmdTraceRaysIndirect2KHR ) vkGetDeviceProcAddr( device, "vkCmdTraceRaysIndirect2KHR" ); 2406 2407 // VK_EXT_debug_marker 2408 vkDebugMarkerSetObjectTagEXT = cast( PFN_vkDebugMarkerSetObjectTagEXT ) vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectTagEXT" ); 2409 vkDebugMarkerSetObjectNameEXT = cast( PFN_vkDebugMarkerSetObjectNameEXT ) vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectNameEXT" ); 2410 vkCmdDebugMarkerBeginEXT = cast( PFN_vkCmdDebugMarkerBeginEXT ) vkGetDeviceProcAddr( device, "vkCmdDebugMarkerBeginEXT" ); 2411 vkCmdDebugMarkerEndEXT = cast( PFN_vkCmdDebugMarkerEndEXT ) vkGetDeviceProcAddr( device, "vkCmdDebugMarkerEndEXT" ); 2412 vkCmdDebugMarkerInsertEXT = cast( PFN_vkCmdDebugMarkerInsertEXT ) vkGetDeviceProcAddr( device, "vkCmdDebugMarkerInsertEXT" ); 2413 2414 // VK_EXT_transform_feedback 2415 vkCmdBindTransformFeedbackBuffersEXT = cast( PFN_vkCmdBindTransformFeedbackBuffersEXT ) vkGetDeviceProcAddr( device, "vkCmdBindTransformFeedbackBuffersEXT" ); 2416 vkCmdBeginTransformFeedbackEXT = cast( PFN_vkCmdBeginTransformFeedbackEXT ) vkGetDeviceProcAddr( device, "vkCmdBeginTransformFeedbackEXT" ); 2417 vkCmdEndTransformFeedbackEXT = cast( PFN_vkCmdEndTransformFeedbackEXT ) vkGetDeviceProcAddr( device, "vkCmdEndTransformFeedbackEXT" ); 2418 vkCmdBeginQueryIndexedEXT = cast( PFN_vkCmdBeginQueryIndexedEXT ) vkGetDeviceProcAddr( device, "vkCmdBeginQueryIndexedEXT" ); 2419 vkCmdEndQueryIndexedEXT = cast( PFN_vkCmdEndQueryIndexedEXT ) vkGetDeviceProcAddr( device, "vkCmdEndQueryIndexedEXT" ); 2420 vkCmdDrawIndirectByteCountEXT = cast( PFN_vkCmdDrawIndirectByteCountEXT ) vkGetDeviceProcAddr( device, "vkCmdDrawIndirectByteCountEXT" ); 2421 2422 // VK_NVX_binary_import 2423 vkCreateCuModuleNVX = cast( PFN_vkCreateCuModuleNVX ) vkGetDeviceProcAddr( device, "vkCreateCuModuleNVX" ); 2424 vkCreateCuFunctionNVX = cast( PFN_vkCreateCuFunctionNVX ) vkGetDeviceProcAddr( device, "vkCreateCuFunctionNVX" ); 2425 vkDestroyCuModuleNVX = cast( PFN_vkDestroyCuModuleNVX ) vkGetDeviceProcAddr( device, "vkDestroyCuModuleNVX" ); 2426 vkDestroyCuFunctionNVX = cast( PFN_vkDestroyCuFunctionNVX ) vkGetDeviceProcAddr( device, "vkDestroyCuFunctionNVX" ); 2427 vkCmdCuLaunchKernelNVX = cast( PFN_vkCmdCuLaunchKernelNVX ) vkGetDeviceProcAddr( device, "vkCmdCuLaunchKernelNVX" ); 2428 2429 // VK_NVX_image_view_handle 2430 vkGetImageViewHandleNVX = cast( PFN_vkGetImageViewHandleNVX ) vkGetDeviceProcAddr( device, "vkGetImageViewHandleNVX" ); 2431 vkGetImageViewAddressNVX = cast( PFN_vkGetImageViewAddressNVX ) vkGetDeviceProcAddr( device, "vkGetImageViewAddressNVX" ); 2432 2433 // VK_AMD_shader_info 2434 vkGetShaderInfoAMD = cast( PFN_vkGetShaderInfoAMD ) vkGetDeviceProcAddr( device, "vkGetShaderInfoAMD" ); 2435 2436 // VK_EXT_conditional_rendering 2437 vkCmdBeginConditionalRenderingEXT = cast( PFN_vkCmdBeginConditionalRenderingEXT ) vkGetDeviceProcAddr( device, "vkCmdBeginConditionalRenderingEXT" ); 2438 vkCmdEndConditionalRenderingEXT = cast( PFN_vkCmdEndConditionalRenderingEXT ) vkGetDeviceProcAddr( device, "vkCmdEndConditionalRenderingEXT" ); 2439 2440 // VK_NV_clip_space_w_scaling 2441 vkCmdSetViewportWScalingNV = cast( PFN_vkCmdSetViewportWScalingNV ) vkGetDeviceProcAddr( device, "vkCmdSetViewportWScalingNV" ); 2442 2443 // VK_EXT_display_control 2444 vkDisplayPowerControlEXT = cast( PFN_vkDisplayPowerControlEXT ) vkGetDeviceProcAddr( device, "vkDisplayPowerControlEXT" ); 2445 vkRegisterDeviceEventEXT = cast( PFN_vkRegisterDeviceEventEXT ) vkGetDeviceProcAddr( device, "vkRegisterDeviceEventEXT" ); 2446 vkRegisterDisplayEventEXT = cast( PFN_vkRegisterDisplayEventEXT ) vkGetDeviceProcAddr( device, "vkRegisterDisplayEventEXT" ); 2447 vkGetSwapchainCounterEXT = cast( PFN_vkGetSwapchainCounterEXT ) vkGetDeviceProcAddr( device, "vkGetSwapchainCounterEXT" ); 2448 2449 // VK_GOOGLE_display_timing 2450 vkGetRefreshCycleDurationGOOGLE = cast( PFN_vkGetRefreshCycleDurationGOOGLE ) vkGetDeviceProcAddr( device, "vkGetRefreshCycleDurationGOOGLE" ); 2451 vkGetPastPresentationTimingGOOGLE = cast( PFN_vkGetPastPresentationTimingGOOGLE ) vkGetDeviceProcAddr( device, "vkGetPastPresentationTimingGOOGLE" ); 2452 2453 // VK_EXT_discard_rectangles 2454 vkCmdSetDiscardRectangleEXT = cast( PFN_vkCmdSetDiscardRectangleEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDiscardRectangleEXT" ); 2455 2456 // VK_EXT_hdr_metadata 2457 vkSetHdrMetadataEXT = cast( PFN_vkSetHdrMetadataEXT ) vkGetDeviceProcAddr( device, "vkSetHdrMetadataEXT" ); 2458 2459 // VK_EXT_debug_utils 2460 vkSetDebugUtilsObjectNameEXT = cast( PFN_vkSetDebugUtilsObjectNameEXT ) vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectNameEXT" ); 2461 vkSetDebugUtilsObjectTagEXT = cast( PFN_vkSetDebugUtilsObjectTagEXT ) vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectTagEXT" ); 2462 vkQueueBeginDebugUtilsLabelEXT = cast( PFN_vkQueueBeginDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkQueueBeginDebugUtilsLabelEXT" ); 2463 vkQueueEndDebugUtilsLabelEXT = cast( PFN_vkQueueEndDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkQueueEndDebugUtilsLabelEXT" ); 2464 vkQueueInsertDebugUtilsLabelEXT = cast( PFN_vkQueueInsertDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkQueueInsertDebugUtilsLabelEXT" ); 2465 vkCmdBeginDebugUtilsLabelEXT = cast( PFN_vkCmdBeginDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkCmdBeginDebugUtilsLabelEXT" ); 2466 vkCmdEndDebugUtilsLabelEXT = cast( PFN_vkCmdEndDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkCmdEndDebugUtilsLabelEXT" ); 2467 vkCmdInsertDebugUtilsLabelEXT = cast( PFN_vkCmdInsertDebugUtilsLabelEXT ) vkGetDeviceProcAddr( device, "vkCmdInsertDebugUtilsLabelEXT" ); 2468 2469 // VK_EXT_sample_locations 2470 vkCmdSetSampleLocationsEXT = cast( PFN_vkCmdSetSampleLocationsEXT ) vkGetDeviceProcAddr( device, "vkCmdSetSampleLocationsEXT" ); 2471 2472 // VK_EXT_image_drm_format_modifier 2473 vkGetImageDrmFormatModifierPropertiesEXT = cast( PFN_vkGetImageDrmFormatModifierPropertiesEXT ) vkGetDeviceProcAddr( device, "vkGetImageDrmFormatModifierPropertiesEXT" ); 2474 2475 // VK_EXT_validation_cache 2476 vkCreateValidationCacheEXT = cast( PFN_vkCreateValidationCacheEXT ) vkGetDeviceProcAddr( device, "vkCreateValidationCacheEXT" ); 2477 vkDestroyValidationCacheEXT = cast( PFN_vkDestroyValidationCacheEXT ) vkGetDeviceProcAddr( device, "vkDestroyValidationCacheEXT" ); 2478 vkMergeValidationCachesEXT = cast( PFN_vkMergeValidationCachesEXT ) vkGetDeviceProcAddr( device, "vkMergeValidationCachesEXT" ); 2479 vkGetValidationCacheDataEXT = cast( PFN_vkGetValidationCacheDataEXT ) vkGetDeviceProcAddr( device, "vkGetValidationCacheDataEXT" ); 2480 2481 // VK_NV_shading_rate_image 2482 vkCmdBindShadingRateImageNV = cast( PFN_vkCmdBindShadingRateImageNV ) vkGetDeviceProcAddr( device, "vkCmdBindShadingRateImageNV" ); 2483 vkCmdSetViewportShadingRatePaletteNV = cast( PFN_vkCmdSetViewportShadingRatePaletteNV ) vkGetDeviceProcAddr( device, "vkCmdSetViewportShadingRatePaletteNV" ); 2484 vkCmdSetCoarseSampleOrderNV = cast( PFN_vkCmdSetCoarseSampleOrderNV ) vkGetDeviceProcAddr( device, "vkCmdSetCoarseSampleOrderNV" ); 2485 2486 // VK_NV_ray_tracing 2487 vkCreateAccelerationStructureNV = cast( PFN_vkCreateAccelerationStructureNV ) vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureNV" ); 2488 vkDestroyAccelerationStructureNV = cast( PFN_vkDestroyAccelerationStructureNV ) vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureNV" ); 2489 vkGetAccelerationStructureMemoryRequirementsNV = cast( PFN_vkGetAccelerationStructureMemoryRequirementsNV ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureMemoryRequirementsNV" ); 2490 vkBindAccelerationStructureMemoryNV = cast( PFN_vkBindAccelerationStructureMemoryNV ) vkGetDeviceProcAddr( device, "vkBindAccelerationStructureMemoryNV" ); 2491 vkCmdBuildAccelerationStructureNV = cast( PFN_vkCmdBuildAccelerationStructureNV ) vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructureNV" ); 2492 vkCmdCopyAccelerationStructureNV = cast( PFN_vkCmdCopyAccelerationStructureNV ) vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureNV" ); 2493 vkCmdTraceRaysNV = cast( PFN_vkCmdTraceRaysNV ) vkGetDeviceProcAddr( device, "vkCmdTraceRaysNV" ); 2494 vkCreateRayTracingPipelinesNV = cast( PFN_vkCreateRayTracingPipelinesNV ) vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesNV" ); 2495 vkGetRayTracingShaderGroupHandlesKHR = cast( PFN_vkGetRayTracingShaderGroupHandlesKHR ) vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesKHR" ); 2496 vkGetAccelerationStructureHandleNV = cast( PFN_vkGetAccelerationStructureHandleNV ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureHandleNV" ); 2497 vkCmdWriteAccelerationStructuresPropertiesNV = cast( PFN_vkCmdWriteAccelerationStructuresPropertiesNV ) vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesNV" ); 2498 vkCompileDeferredNV = cast( PFN_vkCompileDeferredNV ) vkGetDeviceProcAddr( device, "vkCompileDeferredNV" ); 2499 2500 // VK_EXT_external_memory_host 2501 vkGetMemoryHostPointerPropertiesEXT = cast( PFN_vkGetMemoryHostPointerPropertiesEXT ) vkGetDeviceProcAddr( device, "vkGetMemoryHostPointerPropertiesEXT" ); 2502 2503 // VK_AMD_buffer_marker 2504 vkCmdWriteBufferMarkerAMD = cast( PFN_vkCmdWriteBufferMarkerAMD ) vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarkerAMD" ); 2505 2506 // VK_EXT_calibrated_timestamps 2507 vkGetCalibratedTimestampsEXT = cast( PFN_vkGetCalibratedTimestampsEXT ) vkGetDeviceProcAddr( device, "vkGetCalibratedTimestampsEXT" ); 2508 2509 // VK_NV_mesh_shader 2510 vkCmdDrawMeshTasksNV = cast( PFN_vkCmdDrawMeshTasksNV ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksNV" ); 2511 vkCmdDrawMeshTasksIndirectNV = cast( PFN_vkCmdDrawMeshTasksIndirectNV ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectNV" ); 2512 vkCmdDrawMeshTasksIndirectCountNV = cast( PFN_vkCmdDrawMeshTasksIndirectCountNV ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectCountNV" ); 2513 2514 // VK_NV_scissor_exclusive 2515 vkCmdSetExclusiveScissorNV = cast( PFN_vkCmdSetExclusiveScissorNV ) vkGetDeviceProcAddr( device, "vkCmdSetExclusiveScissorNV" ); 2516 2517 // VK_NV_device_diagnostic_checkpoints 2518 vkCmdSetCheckpointNV = cast( PFN_vkCmdSetCheckpointNV ) vkGetDeviceProcAddr( device, "vkCmdSetCheckpointNV" ); 2519 vkGetQueueCheckpointDataNV = cast( PFN_vkGetQueueCheckpointDataNV ) vkGetDeviceProcAddr( device, "vkGetQueueCheckpointDataNV" ); 2520 2521 // VK_INTEL_performance_query 2522 vkInitializePerformanceApiINTEL = cast( PFN_vkInitializePerformanceApiINTEL ) vkGetDeviceProcAddr( device, "vkInitializePerformanceApiINTEL" ); 2523 vkUninitializePerformanceApiINTEL = cast( PFN_vkUninitializePerformanceApiINTEL ) vkGetDeviceProcAddr( device, "vkUninitializePerformanceApiINTEL" ); 2524 vkCmdSetPerformanceMarkerINTEL = cast( PFN_vkCmdSetPerformanceMarkerINTEL ) vkGetDeviceProcAddr( device, "vkCmdSetPerformanceMarkerINTEL" ); 2525 vkCmdSetPerformanceStreamMarkerINTEL = cast( PFN_vkCmdSetPerformanceStreamMarkerINTEL ) vkGetDeviceProcAddr( device, "vkCmdSetPerformanceStreamMarkerINTEL" ); 2526 vkCmdSetPerformanceOverrideINTEL = cast( PFN_vkCmdSetPerformanceOverrideINTEL ) vkGetDeviceProcAddr( device, "vkCmdSetPerformanceOverrideINTEL" ); 2527 vkAcquirePerformanceConfigurationINTEL = cast( PFN_vkAcquirePerformanceConfigurationINTEL ) vkGetDeviceProcAddr( device, "vkAcquirePerformanceConfigurationINTEL" ); 2528 vkReleasePerformanceConfigurationINTEL = cast( PFN_vkReleasePerformanceConfigurationINTEL ) vkGetDeviceProcAddr( device, "vkReleasePerformanceConfigurationINTEL" ); 2529 vkQueueSetPerformanceConfigurationINTEL = cast( PFN_vkQueueSetPerformanceConfigurationINTEL ) vkGetDeviceProcAddr( device, "vkQueueSetPerformanceConfigurationINTEL" ); 2530 vkGetPerformanceParameterINTEL = cast( PFN_vkGetPerformanceParameterINTEL ) vkGetDeviceProcAddr( device, "vkGetPerformanceParameterINTEL" ); 2531 2532 // VK_AMD_display_native_hdr 2533 vkSetLocalDimmingAMD = cast( PFN_vkSetLocalDimmingAMD ) vkGetDeviceProcAddr( device, "vkSetLocalDimmingAMD" ); 2534 2535 // VK_EXT_line_rasterization 2536 vkCmdSetLineStippleEXT = cast( PFN_vkCmdSetLineStippleEXT ) vkGetDeviceProcAddr( device, "vkCmdSetLineStippleEXT" ); 2537 2538 // VK_EXT_swapchain_maintenance1 2539 vkReleaseSwapchainImagesEXT = cast( PFN_vkReleaseSwapchainImagesEXT ) vkGetDeviceProcAddr( device, "vkReleaseSwapchainImagesEXT" ); 2540 2541 // VK_NV_device_generated_commands 2542 vkGetGeneratedCommandsMemoryRequirementsNV = cast( PFN_vkGetGeneratedCommandsMemoryRequirementsNV ) vkGetDeviceProcAddr( device, "vkGetGeneratedCommandsMemoryRequirementsNV" ); 2543 vkCmdPreprocessGeneratedCommandsNV = cast( PFN_vkCmdPreprocessGeneratedCommandsNV ) vkGetDeviceProcAddr( device, "vkCmdPreprocessGeneratedCommandsNV" ); 2544 vkCmdExecuteGeneratedCommandsNV = cast( PFN_vkCmdExecuteGeneratedCommandsNV ) vkGetDeviceProcAddr( device, "vkCmdExecuteGeneratedCommandsNV" ); 2545 vkCmdBindPipelineShaderGroupNV = cast( PFN_vkCmdBindPipelineShaderGroupNV ) vkGetDeviceProcAddr( device, "vkCmdBindPipelineShaderGroupNV" ); 2546 vkCreateIndirectCommandsLayoutNV = cast( PFN_vkCreateIndirectCommandsLayoutNV ) vkGetDeviceProcAddr( device, "vkCreateIndirectCommandsLayoutNV" ); 2547 vkDestroyIndirectCommandsLayoutNV = cast( PFN_vkDestroyIndirectCommandsLayoutNV ) vkGetDeviceProcAddr( device, "vkDestroyIndirectCommandsLayoutNV" ); 2548 2549 // VK_EXT_descriptor_buffer 2550 vkGetDescriptorSetLayoutSizeEXT = cast( PFN_vkGetDescriptorSetLayoutSizeEXT ) vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSizeEXT" ); 2551 vkGetDescriptorSetLayoutBindingOffsetEXT = cast( PFN_vkGetDescriptorSetLayoutBindingOffsetEXT ) vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutBindingOffsetEXT" ); 2552 vkGetDescriptorEXT = cast( PFN_vkGetDescriptorEXT ) vkGetDeviceProcAddr( device, "vkGetDescriptorEXT" ); 2553 vkCmdBindDescriptorBuffersEXT = cast( PFN_vkCmdBindDescriptorBuffersEXT ) vkGetDeviceProcAddr( device, "vkCmdBindDescriptorBuffersEXT" ); 2554 vkCmdSetDescriptorBufferOffsetsEXT = cast( PFN_vkCmdSetDescriptorBufferOffsetsEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDescriptorBufferOffsetsEXT" ); 2555 vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast( PFN_vkCmdBindDescriptorBufferEmbeddedSamplersEXT ) vkGetDeviceProcAddr( device, "vkCmdBindDescriptorBufferEmbeddedSamplersEXT" ); 2556 vkGetBufferOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetBufferOpaqueCaptureDescriptorDataEXT ) vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureDescriptorDataEXT" ); 2557 vkGetImageOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetImageOpaqueCaptureDescriptorDataEXT ) vkGetDeviceProcAddr( device, "vkGetImageOpaqueCaptureDescriptorDataEXT" ); 2558 vkGetImageViewOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetImageViewOpaqueCaptureDescriptorDataEXT ) vkGetDeviceProcAddr( device, "vkGetImageViewOpaqueCaptureDescriptorDataEXT" ); 2559 vkGetSamplerOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT ) vkGetDeviceProcAddr( device, "vkGetSamplerOpaqueCaptureDescriptorDataEXT" ); 2560 vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT = cast( PFN_vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT" ); 2561 2562 // VK_NV_fragment_shading_rate_enums 2563 vkCmdSetFragmentShadingRateEnumNV = cast( PFN_vkCmdSetFragmentShadingRateEnumNV ) vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateEnumNV" ); 2564 2565 // VK_EXT_image_compression_control 2566 vkGetImageSubresourceLayout2EXT = cast( PFN_vkGetImageSubresourceLayout2EXT ) vkGetDeviceProcAddr( device, "vkGetImageSubresourceLayout2EXT" ); 2567 2568 // VK_EXT_device_fault 2569 vkGetDeviceFaultInfoEXT = cast( PFN_vkGetDeviceFaultInfoEXT ) vkGetDeviceProcAddr( device, "vkGetDeviceFaultInfoEXT" ); 2570 2571 // VK_EXT_vertex_input_dynamic_state 2572 vkCmdSetVertexInputEXT = cast( PFN_vkCmdSetVertexInputEXT ) vkGetDeviceProcAddr( device, "vkCmdSetVertexInputEXT" ); 2573 2574 // VK_HUAWEI_subpass_shading 2575 vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = cast( PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI ) vkGetDeviceProcAddr( device, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI" ); 2576 vkCmdSubpassShadingHUAWEI = cast( PFN_vkCmdSubpassShadingHUAWEI ) vkGetDeviceProcAddr( device, "vkCmdSubpassShadingHUAWEI" ); 2577 2578 // VK_HUAWEI_invocation_mask 2579 vkCmdBindInvocationMaskHUAWEI = cast( PFN_vkCmdBindInvocationMaskHUAWEI ) vkGetDeviceProcAddr( device, "vkCmdBindInvocationMaskHUAWEI" ); 2580 2581 // VK_NV_external_memory_rdma 2582 vkGetMemoryRemoteAddressNV = cast( PFN_vkGetMemoryRemoteAddressNV ) vkGetDeviceProcAddr( device, "vkGetMemoryRemoteAddressNV" ); 2583 2584 // VK_EXT_pipeline_properties 2585 vkGetPipelinePropertiesEXT = cast( PFN_vkGetPipelinePropertiesEXT ) vkGetDeviceProcAddr( device, "vkGetPipelinePropertiesEXT" ); 2586 2587 // VK_EXT_extended_dynamic_state2 2588 vkCmdSetPatchControlPointsEXT = cast( PFN_vkCmdSetPatchControlPointsEXT ) vkGetDeviceProcAddr( device, "vkCmdSetPatchControlPointsEXT" ); 2589 vkCmdSetLogicOpEXT = cast( PFN_vkCmdSetLogicOpEXT ) vkGetDeviceProcAddr( device, "vkCmdSetLogicOpEXT" ); 2590 2591 // VK_EXT_color_write_enable 2592 vkCmdSetColorWriteEnableEXT = cast( PFN_vkCmdSetColorWriteEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetColorWriteEnableEXT" ); 2593 2594 // VK_EXT_multi_draw 2595 vkCmdDrawMultiEXT = cast( PFN_vkCmdDrawMultiEXT ) vkGetDeviceProcAddr( device, "vkCmdDrawMultiEXT" ); 2596 vkCmdDrawMultiIndexedEXT = cast( PFN_vkCmdDrawMultiIndexedEXT ) vkGetDeviceProcAddr( device, "vkCmdDrawMultiIndexedEXT" ); 2597 2598 // VK_EXT_opacity_micromap 2599 vkCreateMicromapEXT = cast( PFN_vkCreateMicromapEXT ) vkGetDeviceProcAddr( device, "vkCreateMicromapEXT" ); 2600 vkDestroyMicromapEXT = cast( PFN_vkDestroyMicromapEXT ) vkGetDeviceProcAddr( device, "vkDestroyMicromapEXT" ); 2601 vkCmdBuildMicromapsEXT = cast( PFN_vkCmdBuildMicromapsEXT ) vkGetDeviceProcAddr( device, "vkCmdBuildMicromapsEXT" ); 2602 vkBuildMicromapsEXT = cast( PFN_vkBuildMicromapsEXT ) vkGetDeviceProcAddr( device, "vkBuildMicromapsEXT" ); 2603 vkCopyMicromapEXT = cast( PFN_vkCopyMicromapEXT ) vkGetDeviceProcAddr( device, "vkCopyMicromapEXT" ); 2604 vkCopyMicromapToMemoryEXT = cast( PFN_vkCopyMicromapToMemoryEXT ) vkGetDeviceProcAddr( device, "vkCopyMicromapToMemoryEXT" ); 2605 vkCopyMemoryToMicromapEXT = cast( PFN_vkCopyMemoryToMicromapEXT ) vkGetDeviceProcAddr( device, "vkCopyMemoryToMicromapEXT" ); 2606 vkWriteMicromapsPropertiesEXT = cast( PFN_vkWriteMicromapsPropertiesEXT ) vkGetDeviceProcAddr( device, "vkWriteMicromapsPropertiesEXT" ); 2607 vkCmdCopyMicromapEXT = cast( PFN_vkCmdCopyMicromapEXT ) vkGetDeviceProcAddr( device, "vkCmdCopyMicromapEXT" ); 2608 vkCmdCopyMicromapToMemoryEXT = cast( PFN_vkCmdCopyMicromapToMemoryEXT ) vkGetDeviceProcAddr( device, "vkCmdCopyMicromapToMemoryEXT" ); 2609 vkCmdCopyMemoryToMicromapEXT = cast( PFN_vkCmdCopyMemoryToMicromapEXT ) vkGetDeviceProcAddr( device, "vkCmdCopyMemoryToMicromapEXT" ); 2610 vkCmdWriteMicromapsPropertiesEXT = cast( PFN_vkCmdWriteMicromapsPropertiesEXT ) vkGetDeviceProcAddr( device, "vkCmdWriteMicromapsPropertiesEXT" ); 2611 vkGetDeviceMicromapCompatibilityEXT = cast( PFN_vkGetDeviceMicromapCompatibilityEXT ) vkGetDeviceProcAddr( device, "vkGetDeviceMicromapCompatibilityEXT" ); 2612 vkGetMicromapBuildSizesEXT = cast( PFN_vkGetMicromapBuildSizesEXT ) vkGetDeviceProcAddr( device, "vkGetMicromapBuildSizesEXT" ); 2613 2614 // VK_EXT_pageable_device_local_memory 2615 vkSetDeviceMemoryPriorityEXT = cast( PFN_vkSetDeviceMemoryPriorityEXT ) vkGetDeviceProcAddr( device, "vkSetDeviceMemoryPriorityEXT" ); 2616 2617 // VK_VALVE_descriptor_set_host_mapping 2618 vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast( PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE ) vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutHostMappingInfoVALVE" ); 2619 vkGetDescriptorSetHostMappingVALVE = cast( PFN_vkGetDescriptorSetHostMappingVALVE ) vkGetDeviceProcAddr( device, "vkGetDescriptorSetHostMappingVALVE" ); 2620 2621 // VK_NV_copy_memory_indirect 2622 vkCmdCopyMemoryIndirectNV = cast( PFN_vkCmdCopyMemoryIndirectNV ) vkGetDeviceProcAddr( device, "vkCmdCopyMemoryIndirectNV" ); 2623 vkCmdCopyMemoryToImageIndirectNV = cast( PFN_vkCmdCopyMemoryToImageIndirectNV ) vkGetDeviceProcAddr( device, "vkCmdCopyMemoryToImageIndirectNV" ); 2624 2625 // VK_NV_memory_decompression 2626 vkCmdDecompressMemoryNV = cast( PFN_vkCmdDecompressMemoryNV ) vkGetDeviceProcAddr( device, "vkCmdDecompressMemoryNV" ); 2627 vkCmdDecompressMemoryIndirectCountNV = cast( PFN_vkCmdDecompressMemoryIndirectCountNV ) vkGetDeviceProcAddr( device, "vkCmdDecompressMemoryIndirectCountNV" ); 2628 2629 // VK_EXT_extended_dynamic_state3 2630 vkCmdSetTessellationDomainOriginEXT = cast( PFN_vkCmdSetTessellationDomainOriginEXT ) vkGetDeviceProcAddr( device, "vkCmdSetTessellationDomainOriginEXT" ); 2631 vkCmdSetDepthClampEnableEXT = cast( PFN_vkCmdSetDepthClampEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDepthClampEnableEXT" ); 2632 vkCmdSetPolygonModeEXT = cast( PFN_vkCmdSetPolygonModeEXT ) vkGetDeviceProcAddr( device, "vkCmdSetPolygonModeEXT" ); 2633 vkCmdSetRasterizationSamplesEXT = cast( PFN_vkCmdSetRasterizationSamplesEXT ) vkGetDeviceProcAddr( device, "vkCmdSetRasterizationSamplesEXT" ); 2634 vkCmdSetSampleMaskEXT = cast( PFN_vkCmdSetSampleMaskEXT ) vkGetDeviceProcAddr( device, "vkCmdSetSampleMaskEXT" ); 2635 vkCmdSetAlphaToCoverageEnableEXT = cast( PFN_vkCmdSetAlphaToCoverageEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetAlphaToCoverageEnableEXT" ); 2636 vkCmdSetAlphaToOneEnableEXT = cast( PFN_vkCmdSetAlphaToOneEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetAlphaToOneEnableEXT" ); 2637 vkCmdSetLogicOpEnableEXT = cast( PFN_vkCmdSetLogicOpEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetLogicOpEnableEXT" ); 2638 vkCmdSetColorBlendEnableEXT = cast( PFN_vkCmdSetColorBlendEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetColorBlendEnableEXT" ); 2639 vkCmdSetColorBlendEquationEXT = cast( PFN_vkCmdSetColorBlendEquationEXT ) vkGetDeviceProcAddr( device, "vkCmdSetColorBlendEquationEXT" ); 2640 vkCmdSetColorWriteMaskEXT = cast( PFN_vkCmdSetColorWriteMaskEXT ) vkGetDeviceProcAddr( device, "vkCmdSetColorWriteMaskEXT" ); 2641 vkCmdSetRasterizationStreamEXT = cast( PFN_vkCmdSetRasterizationStreamEXT ) vkGetDeviceProcAddr( device, "vkCmdSetRasterizationStreamEXT" ); 2642 vkCmdSetConservativeRasterizationModeEXT = cast( PFN_vkCmdSetConservativeRasterizationModeEXT ) vkGetDeviceProcAddr( device, "vkCmdSetConservativeRasterizationModeEXT" ); 2643 vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast( PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT ) vkGetDeviceProcAddr( device, "vkCmdSetExtraPrimitiveOverestimationSizeEXT" ); 2644 vkCmdSetDepthClipEnableEXT = cast( PFN_vkCmdSetDepthClipEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDepthClipEnableEXT" ); 2645 vkCmdSetSampleLocationsEnableEXT = cast( PFN_vkCmdSetSampleLocationsEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetSampleLocationsEnableEXT" ); 2646 vkCmdSetColorBlendAdvancedEXT = cast( PFN_vkCmdSetColorBlendAdvancedEXT ) vkGetDeviceProcAddr( device, "vkCmdSetColorBlendAdvancedEXT" ); 2647 vkCmdSetProvokingVertexModeEXT = cast( PFN_vkCmdSetProvokingVertexModeEXT ) vkGetDeviceProcAddr( device, "vkCmdSetProvokingVertexModeEXT" ); 2648 vkCmdSetLineRasterizationModeEXT = cast( PFN_vkCmdSetLineRasterizationModeEXT ) vkGetDeviceProcAddr( device, "vkCmdSetLineRasterizationModeEXT" ); 2649 vkCmdSetLineStippleEnableEXT = cast( PFN_vkCmdSetLineStippleEnableEXT ) vkGetDeviceProcAddr( device, "vkCmdSetLineStippleEnableEXT" ); 2650 vkCmdSetDepthClipNegativeOneToOneEXT = cast( PFN_vkCmdSetDepthClipNegativeOneToOneEXT ) vkGetDeviceProcAddr( device, "vkCmdSetDepthClipNegativeOneToOneEXT" ); 2651 vkCmdSetViewportWScalingEnableNV = cast( PFN_vkCmdSetViewportWScalingEnableNV ) vkGetDeviceProcAddr( device, "vkCmdSetViewportWScalingEnableNV" ); 2652 vkCmdSetViewportSwizzleNV = cast( PFN_vkCmdSetViewportSwizzleNV ) vkGetDeviceProcAddr( device, "vkCmdSetViewportSwizzleNV" ); 2653 vkCmdSetCoverageToColorEnableNV = cast( PFN_vkCmdSetCoverageToColorEnableNV ) vkGetDeviceProcAddr( device, "vkCmdSetCoverageToColorEnableNV" ); 2654 vkCmdSetCoverageToColorLocationNV = cast( PFN_vkCmdSetCoverageToColorLocationNV ) vkGetDeviceProcAddr( device, "vkCmdSetCoverageToColorLocationNV" ); 2655 vkCmdSetCoverageModulationModeNV = cast( PFN_vkCmdSetCoverageModulationModeNV ) vkGetDeviceProcAddr( device, "vkCmdSetCoverageModulationModeNV" ); 2656 vkCmdSetCoverageModulationTableEnableNV = cast( PFN_vkCmdSetCoverageModulationTableEnableNV ) vkGetDeviceProcAddr( device, "vkCmdSetCoverageModulationTableEnableNV" ); 2657 vkCmdSetCoverageModulationTableNV = cast( PFN_vkCmdSetCoverageModulationTableNV ) vkGetDeviceProcAddr( device, "vkCmdSetCoverageModulationTableNV" ); 2658 vkCmdSetShadingRateImageEnableNV = cast( PFN_vkCmdSetShadingRateImageEnableNV ) vkGetDeviceProcAddr( device, "vkCmdSetShadingRateImageEnableNV" ); 2659 vkCmdSetRepresentativeFragmentTestEnableNV = cast( PFN_vkCmdSetRepresentativeFragmentTestEnableNV ) vkGetDeviceProcAddr( device, "vkCmdSetRepresentativeFragmentTestEnableNV" ); 2660 vkCmdSetCoverageReductionModeNV = cast( PFN_vkCmdSetCoverageReductionModeNV ) vkGetDeviceProcAddr( device, "vkCmdSetCoverageReductionModeNV" ); 2661 2662 // VK_EXT_shader_module_identifier 2663 vkGetShaderModuleIdentifierEXT = cast( PFN_vkGetShaderModuleIdentifierEXT ) vkGetDeviceProcAddr( device, "vkGetShaderModuleIdentifierEXT" ); 2664 vkGetShaderModuleCreateInfoIdentifierEXT = cast( PFN_vkGetShaderModuleCreateInfoIdentifierEXT ) vkGetDeviceProcAddr( device, "vkGetShaderModuleCreateInfoIdentifierEXT" ); 2665 2666 // VK_NV_optical_flow 2667 vkCreateOpticalFlowSessionNV = cast( PFN_vkCreateOpticalFlowSessionNV ) vkGetDeviceProcAddr( device, "vkCreateOpticalFlowSessionNV" ); 2668 vkDestroyOpticalFlowSessionNV = cast( PFN_vkDestroyOpticalFlowSessionNV ) vkGetDeviceProcAddr( device, "vkDestroyOpticalFlowSessionNV" ); 2669 vkBindOpticalFlowSessionImageNV = cast( PFN_vkBindOpticalFlowSessionImageNV ) vkGetDeviceProcAddr( device, "vkBindOpticalFlowSessionImageNV" ); 2670 vkCmdOpticalFlowExecuteNV = cast( PFN_vkCmdOpticalFlowExecuteNV ) vkGetDeviceProcAddr( device, "vkCmdOpticalFlowExecuteNV" ); 2671 2672 // VK_QCOM_tile_properties 2673 vkGetFramebufferTilePropertiesQCOM = cast( PFN_vkGetFramebufferTilePropertiesQCOM ) vkGetDeviceProcAddr( device, "vkGetFramebufferTilePropertiesQCOM" ); 2674 vkGetDynamicRenderingTilePropertiesQCOM = cast( PFN_vkGetDynamicRenderingTilePropertiesQCOM ) vkGetDeviceProcAddr( device, "vkGetDynamicRenderingTilePropertiesQCOM" ); 2675 2676 // VK_KHR_acceleration_structure 2677 vkCreateAccelerationStructureKHR = cast( PFN_vkCreateAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureKHR" ); 2678 vkDestroyAccelerationStructureKHR = cast( PFN_vkDestroyAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureKHR" ); 2679 vkCmdBuildAccelerationStructuresKHR = cast( PFN_vkCmdBuildAccelerationStructuresKHR ) vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresKHR" ); 2680 vkCmdBuildAccelerationStructuresIndirectKHR = cast( PFN_vkCmdBuildAccelerationStructuresIndirectKHR ) vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresIndirectKHR" ); 2681 vkBuildAccelerationStructuresKHR = cast( PFN_vkBuildAccelerationStructuresKHR ) vkGetDeviceProcAddr( device, "vkBuildAccelerationStructuresKHR" ); 2682 vkCopyAccelerationStructureKHR = cast( PFN_vkCopyAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureKHR" ); 2683 vkCopyAccelerationStructureToMemoryKHR = cast( PFN_vkCopyAccelerationStructureToMemoryKHR ) vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureToMemoryKHR" ); 2684 vkCopyMemoryToAccelerationStructureKHR = cast( PFN_vkCopyMemoryToAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCopyMemoryToAccelerationStructureKHR" ); 2685 vkWriteAccelerationStructuresPropertiesKHR = cast( PFN_vkWriteAccelerationStructuresPropertiesKHR ) vkGetDeviceProcAddr( device, "vkWriteAccelerationStructuresPropertiesKHR" ); 2686 vkCmdCopyAccelerationStructureKHR = cast( PFN_vkCmdCopyAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureKHR" ); 2687 vkCmdCopyAccelerationStructureToMemoryKHR = cast( PFN_vkCmdCopyAccelerationStructureToMemoryKHR ) vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureToMemoryKHR" ); 2688 vkCmdCopyMemoryToAccelerationStructureKHR = cast( PFN_vkCmdCopyMemoryToAccelerationStructureKHR ) vkGetDeviceProcAddr( device, "vkCmdCopyMemoryToAccelerationStructureKHR" ); 2689 vkGetAccelerationStructureDeviceAddressKHR = cast( PFN_vkGetAccelerationStructureDeviceAddressKHR ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureDeviceAddressKHR" ); 2690 vkCmdWriteAccelerationStructuresPropertiesKHR = cast( PFN_vkCmdWriteAccelerationStructuresPropertiesKHR ) vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesKHR" ); 2691 vkGetDeviceAccelerationStructureCompatibilityKHR = cast( PFN_vkGetDeviceAccelerationStructureCompatibilityKHR ) vkGetDeviceProcAddr( device, "vkGetDeviceAccelerationStructureCompatibilityKHR" ); 2692 vkGetAccelerationStructureBuildSizesKHR = cast( PFN_vkGetAccelerationStructureBuildSizesKHR ) vkGetDeviceProcAddr( device, "vkGetAccelerationStructureBuildSizesKHR" ); 2693 2694 // VK_KHR_ray_tracing_pipeline 2695 vkCmdTraceRaysKHR = cast( PFN_vkCmdTraceRaysKHR ) vkGetDeviceProcAddr( device, "vkCmdTraceRaysKHR" ); 2696 vkCreateRayTracingPipelinesKHR = cast( PFN_vkCreateRayTracingPipelinesKHR ) vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesKHR" ); 2697 vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast( PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR ) vkGetDeviceProcAddr( device, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ); 2698 vkCmdTraceRaysIndirectKHR = cast( PFN_vkCmdTraceRaysIndirectKHR ) vkGetDeviceProcAddr( device, "vkCmdTraceRaysIndirectKHR" ); 2699 vkGetRayTracingShaderGroupStackSizeKHR = cast( PFN_vkGetRayTracingShaderGroupStackSizeKHR ) vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupStackSizeKHR" ); 2700 vkCmdSetRayTracingPipelineStackSizeKHR = cast( PFN_vkCmdSetRayTracingPipelineStackSizeKHR ) vkGetDeviceProcAddr( device, "vkCmdSetRayTracingPipelineStackSizeKHR" ); 2701 2702 // VK_EXT_mesh_shader 2703 vkCmdDrawMeshTasksEXT = cast( PFN_vkCmdDrawMeshTasksEXT ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksEXT" ); 2704 vkCmdDrawMeshTasksIndirectEXT = cast( PFN_vkCmdDrawMeshTasksIndirectEXT ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectEXT" ); 2705 vkCmdDrawMeshTasksIndirectCountEXT = cast( PFN_vkCmdDrawMeshTasksIndirectCountEXT ) vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectCountEXT" ); 2706 } 2707