summaryrefslogtreecommitdiff
path: root/src/renderer/backends/backend_vulkan.h
diff options
context:
space:
mode:
authoromnisci3nce <omniscient.oce@gmail.com>2024-04-28 09:14:22 +1000
committeromnisci3nce <omniscient.oce@gmail.com>2024-04-28 09:14:22 +1000
commit411520b240446f878a27c5d89812000774cc3c15 (patch)
tree989f442fdffcc85e45f665f8f22102fe6f6bae19 /src/renderer/backends/backend_vulkan.h
parentefea29ed9059303a5bb609ba0ce79c20ba894a23 (diff)
getting vulkan working on windows
Diffstat (limited to 'src/renderer/backends/backend_vulkan.h')
-rw-r--r--src/renderer/backends/backend_vulkan.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/renderer/backends/backend_vulkan.h b/src/renderer/backends/backend_vulkan.h
new file mode 100644
index 0000000..05f043e
--- /dev/null
+++ b/src/renderer/backends/backend_vulkan.h
@@ -0,0 +1,27 @@
+#pragma once
+#include "defines.h"
+
+#define GPU_SWAPCHAIN_IMG_COUNT 2
+
+typedef struct gpu_swapchain {
+} gpu_swapchain;
+typedef struct gpu_device {
+ // In Vulkan we store both physical and logical device here
+ VkPhysicalDevice physical_device;
+ VkDevice logical_device;
+ VkPhysicalDeviceProperties properties;
+ VkPhysicalDeviceFeatures features;
+ VkPhysicalDeviceMemoryProperties memory;
+ VkCommandPool pool;
+} gpu_device;
+typedef struct gpu_pipeline {
+} gpu_pipeline;
+
+typedef struct gpu_renderpass {
+ VkRenderPass vk_handle;
+ VkFramebuffer framebuffers[GPU_SWAPCHAIN_IMG_COUNT];
+} gpu_renderpass;
+
+typedef struct gpu_cmd_encoder {
+ VkCommandBuffer cmd_buffer;
+} gpu_cmd_encoder; \ No newline at end of file