Support rendering windowless (tested on the Vulkan backend)

This commit is contained in:
DrChat
2017-12-19 16:02:09 -06:00
parent 8fc71f6f7c
commit 09b3a07e3c
14 changed files with 156 additions and 146 deletions

View File

@@ -70,10 +70,10 @@ class VulkanDevice {
// returns null the primary_queue should be used with the
// primary_queue_mutex.
// This method is thread safe.
VkQueue AcquireQueue();
VkQueue AcquireQueue(uint32_t queue_family_index);
// Releases a queue back to the device pool.
// This method is thread safe.
void ReleaseQueue(VkQueue queue);
void ReleaseQueue(VkQueue queue, uint32_t queue_family_index);
static void DbgSetObjectName(VkDevice device, uint64_t object,
VkDebugReportObjectTypeEXT object_type,
@@ -108,7 +108,7 @@ class VulkanDevice {
uint32_t queue_family_index_ = 0;
std::mutex queue_mutex_;
VkQueue primary_queue_ = nullptr;
std::vector<VkQueue> free_queues_;
std::vector<std::vector<VkQueue>> free_queues_;
};
} // namespace vulkan