diff --git a/src/video_core/renderer_vulkan/vk_command_pool.cpp b/src/video_core/renderer_vulkan/vk_command_pool.cpp index d0dbf7ca54..ea95082849 100644 --- a/src/video_core/renderer_vulkan/vk_command_pool.cpp +++ b/src/video_core/renderer_vulkan/vk_command_pool.cpp @@ -35,11 +35,11 @@ void CommandPool::Allocate(size_t begin, size_t end) { pool.cmdbufs = pool.handle.Allocate(COMMAND_BUFFER_POOL_SIZE); } -VkCommandBuffer CommandPool::Commit() { +vk::CommandBuffer CommandPool::Commit() { const size_t index = CommitResource(); const auto pool_index = index / COMMAND_BUFFER_POOL_SIZE; const auto sub_index = index % COMMAND_BUFFER_POOL_SIZE; - return pools[pool_index].cmdbufs[sub_index]; + return vk::CommandBuffer(pools[pool_index].cmdbufs[sub_index], device.GetDispatchLoader()); } } // namespace Vulkan diff --git a/src/video_core/renderer_vulkan/vk_command_pool.h b/src/video_core/renderer_vulkan/vk_command_pool.h index ec1647f012..df352fa72d 100644 --- a/src/video_core/renderer_vulkan/vk_command_pool.h +++ b/src/video_core/renderer_vulkan/vk_command_pool.h @@ -21,7 +21,7 @@ public: void Allocate(size_t begin, size_t end) override; - VkCommandBuffer Commit(); + vk::CommandBuffer Commit(); private: struct Pool; diff --git a/src/video_core/renderer_vulkan/vk_scheduler.cpp b/src/video_core/renderer_vulkan/vk_scheduler.cpp index d109d22cab..d380723a9a 100644 --- a/src/video_core/renderer_vulkan/vk_scheduler.cpp +++ b/src/video_core/renderer_vulkan/vk_scheduler.cpp @@ -199,14 +199,14 @@ void Scheduler::WorkerThread(std::stop_token stop_token) { } void Scheduler::AllocateWorkerCommandBuffer() { - current_cmdbuf = vk::CommandBuffer(command_pool->Commit(), device.GetDispatchLoader()); + current_cmdbuf = command_pool->Commit(); current_cmdbuf.Begin({ .sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, .pNext = nullptr, .flags = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT, .pInheritanceInfo = nullptr, }); - current_upload_cmdbuf = vk::CommandBuffer(command_pool->Commit(), device.GetDispatchLoader()); + current_upload_cmdbuf = command_pool->Commit(); current_upload_cmdbuf.Begin({ .sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, .pNext = nullptr,