diff options
author | omniscient <17525998+omnisci3nce@users.noreply.github.com> | 2024-03-31 17:37:40 +1100 |
---|---|---|
committer | omniscient <17525998+omnisci3nce@users.noreply.github.com> | 2024-03-31 17:37:40 +1100 |
commit | 1a55bc92eaae3509a18e468198772b8888397492 (patch) | |
tree | 25b75d8b0f62d76c815af2e1dc096827a84b0248 /src/renderer/cleanroom/backend_vulkan.h | |
parent | 1b4c27d514423c9e27a93742b8c8e9eb9f588e27 (diff) |
redesigning the renderer backend
Diffstat (limited to 'src/renderer/cleanroom/backend_vulkan.h')
-rw-r--r-- | src/renderer/cleanroom/backend_vulkan.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/renderer/cleanroom/backend_vulkan.h b/src/renderer/cleanroom/backend_vulkan.h new file mode 100644 index 0000000..6798b13 --- /dev/null +++ b/src/renderer/cleanroom/backend_vulkan.h @@ -0,0 +1,27 @@ +#pragma once +#include "cleanroom/ral.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]; + u32 +} gpu_renderpass; + + +typedef struct gpu_cmd_encoder { + VkCommandBuffer cmd_buffer; +} gpu_cmd_encoder;
\ No newline at end of file |