]> git.tdb.fi Git - libs/gl.git/blobdiff - source/backends/vulkan/vulkan.h
Use secondary command buffers to record render pass contents
[libs/gl.git] / source / backends / vulkan / vulkan.h
index 60de01d18ba103006275f0605793dc2b2851306a..a862acfe50a710e56ac9adbf117f83b32ae57471 100644 (file)
@@ -106,6 +106,7 @@ private:
        PFN_vkBeginCommandBuffer vkBeginCommandBuffer = 0;  // 6.4
        PFN_vkEndCommandBuffer vkEndCommandBuffer = 0;  // 6.4
        PFN_vkQueueSubmit vkQueueSubmit = 0;  // 6.5
+       PFN_vkCmdExecuteCommands vkCmdExecuteCommands = 0;  // 6.7
        PFN_vkCreateFence vkCreateFence = 0;  // 7.3
        PFN_vkDestroyFence vkDestroyFence = 0;  // 7.3
        PFN_vkGetFenceStatus vkGetFenceStatus = 0;  // 7.3
@@ -201,6 +202,9 @@ public:
        Result QueueSubmit(std::uint32_t submitCount, const VkSubmitInfo *pSubmits, VkFence fence) const
        { return { vkQueueSubmit(graphicsQueue, submitCount, pSubmits, handle_cast<::VkFence>(fence)), "vkQueueSubmit" }; }
 
+       void CmdExecuteCommands(VkCommandBuffer commandBuffer, std::uint32_t commandBufferCount, const VkCommandBuffer *pCommandBuffers) const
+       { vkCmdExecuteCommands(handle_cast<::VkCommandBuffer>(commandBuffer), commandBufferCount, handle_cast<const ::VkCommandBuffer *>(pCommandBuffers)); }
+
        // Chapter 7: Synchronization and Cache Control
        Result CreateFence(const VkFenceCreateInfo &rCreateInfo, VkFence &rFence) const
        { return { vkCreateFence(device, &rCreateInfo, 0, handle_cast<::VkFence *>(&rFence)), "vkCreateFence" }; }