summaryrefslogtreecommitdiff
path: root/src/renderer/backends/backend_vulkan.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/renderer/backends/backend_vulkan.h')
-rw-r--r--src/renderer/backends/backend_vulkan.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/renderer/backends/backend_vulkan.h b/src/renderer/backends/backend_vulkan.h
index 9802311..8c6b772 100644
--- a/src/renderer/backends/backend_vulkan.h
+++ b/src/renderer/backends/backend_vulkan.h
@@ -5,6 +5,7 @@
#include "defines.h"
#include "ral.h"
+// #include "vulkan_helpers.h"
#define GPU_SWAPCHAIN_IMG_COUNT 2
@@ -14,6 +15,17 @@ Conventions:
- Vulkan specific data goes at the top, followed by our internal data
*/
+typedef struct queue_family_indices {
+ u32 graphics_family_index;
+ u32 present_family_index;
+ u32 compute_family_index;
+ u32 transfer_family_index;
+ bool has_graphics;
+ bool has_present;
+ bool has_compute;
+ bool has_transfer;
+} queue_family_indices;
+
typedef struct gpu_swapchain {
VkSwapchainKHR handle;
} gpu_swapchain;
@@ -25,6 +37,11 @@ typedef struct gpu_device {
VkPhysicalDeviceProperties properties;
VkPhysicalDeviceFeatures features;
VkPhysicalDeviceMemoryProperties memory;
+ queue_family_indices queue_family_indicies;
+ VkQueue graphics_queue;
+ VkQueue present_queue;
+ VkQueue compute_queue;
+ VkQueue transfer_queue;
VkCommandPool pool;
} gpu_device;