From cb74ffacedb3c1bc4a5398d665d1f4dc12f69a4a Mon Sep 17 00:00:00 2001 From: Clément Sibille Date: Sun, 16 Mar 2025 19:13:09 +0100 Subject: Add the renderer's foundations --- src/renderer.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/renderer.h (limited to 'src/renderer.h') diff --git a/src/renderer.h b/src/renderer.h new file mode 100644 index 0000000..5e08762 --- /dev/null +++ b/src/renderer.h @@ -0,0 +1,27 @@ +#ifndef VGLTF_RENDERER_H +#define VGLTF_RENDERER_H + +#include "platform.h" +#include + +constexpr int VGLTF_RENDERER_MAX_SWAPCHAIN_IMAGE_COUNT = 32; +struct vgltf_renderer { + VkInstance instance; + VkPhysicalDevice physical_device; + VkDevice device; + VkQueue graphics_queue; + VkQueue present_queue; + VkDebugUtilsMessengerEXT debug_messenger; + VkSurfaceKHR surface; + VkSwapchainKHR swapchain; + VkImage swapchain_images[VGLTF_RENDERER_MAX_SWAPCHAIN_IMAGE_COUNT]; + VkImageView swapchain_image_views[VGLTF_RENDERER_MAX_SWAPCHAIN_IMAGE_COUNT]; + VkFormat swapchain_image_format; + VkExtent2D swapchain_extent; + uint32_t swapchain_image_count; +}; +bool vgltf_renderer_init(struct vgltf_renderer *renderer, + struct vgltf_platform *platform); +void vgltf_renderer_deinit(struct vgltf_renderer *renderer); + +#endif // VGLTF_RENDERER_H -- cgit v1.2.3