struct Vulkan_Swapchain
{
uint32_t imageIndex;
VkSemaphore semaphoreNextImage;
VkImageView view;
VkFramebuffer frameBuffer;
VkImage primaryBuffer;
};
struct Vulkan_Queue
{
VkQueue queue;
VkSemaphore semaphoreSubmit;
};
struct VulkanSystem
{
VkInstance instance;
VkPhysicalDevice physicalDevice;
VkDevice device;
VkSurfaceKHR surfaceKHR;
VkSwapchainKHR swapchainKHR;
VkCommandBuffer commandBuffer;
VkCommandPool commandPool;
Vulkan_Swapchain frameBuffers;
Vulkan_Queue queue;
VkRenderPass renderPass;
};