mirror of
https://github.com/Karaka-Management/cOMS.git
synced 2026-01-11 03:08:41 +00:00
38 lines
1.0 KiB
C
38 lines
1.0 KiB
C
/**
|
|
* Jingga
|
|
*
|
|
* @copyright Jingga
|
|
* @license OMS License 2.0
|
|
* @version 1.0.0
|
|
* @link https://jingga.app
|
|
*/
|
|
#ifndef TOS_GPUAPI_VULKAN_GPU_API_CONTAINER_H
|
|
#define TOS_GPUAPI_VULKAN_GPU_API_CONTAINER_H
|
|
|
|
#include "../../stdlib/Types.h"
|
|
#include <vulkan/vulkan.h>
|
|
|
|
struct GpuApiContainer {
|
|
VkInstance instance;
|
|
VkSurfaceKHR surface;
|
|
VkDevice device;
|
|
VkSwapchainKHR swapchain;
|
|
uint32 swapchain_image_count;
|
|
VkFormat swapchain_image_format;
|
|
VkImage* swapchain_images; // swapchain_image_count
|
|
VkImageView* swapchain_image_views; // swapchain_image_count
|
|
VkFramebuffer* swapchain_framebuffers; // swapchain_image_count
|
|
VkExtent2D swapchain_extent;
|
|
VkPipelineLayout pipelineLayout;
|
|
VkQueue graphics_queue;
|
|
VkQueue present_queue;
|
|
VkRenderPass render_pass;
|
|
VkPipeline pipeline;
|
|
VkCommandPool command_pool;
|
|
VkCommandBuffer command_buffer;
|
|
VkSemaphore image_available_semaphore;
|
|
VkSemaphore render_finished_semaphore;
|
|
VkFence in_flight_fence;
|
|
};
|
|
|
|
#endif |