From a33f692a0a0d3d4210044bdd93ec6d067a17c8b5 Mon Sep 17 00:00:00 2001 From: Clément Sibille Date: Tue, 25 Mar 2025 07:31:37 +0100 Subject: Render hello triangle --- src/renderer.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/renderer.h') diff --git a/src/renderer.h b/src/renderer.h index c5e5adc..17897b6 100644 --- a/src/renderer.h +++ b/src/renderer.h @@ -4,6 +4,7 @@ #include "platform.h" #include +constexpr int VGLTF_RENDERER_MAX_FRAME_IN_FLIGHT_COUNT = 2; constexpr int VGLTF_RENDERER_MAX_SWAPCHAIN_IMAGE_COUNT = 32; struct vgltf_renderer { VkInstance instance; @@ -25,10 +26,16 @@ struct vgltf_renderer { VkFramebuffer swapchain_framebuffers[VGLTF_RENDERER_MAX_SWAPCHAIN_IMAGE_COUNT]; VkCommandPool command_pool; - VkCommandBuffer command_buffer; + VkCommandBuffer command_buffer[VGLTF_RENDERER_MAX_FRAME_IN_FLIGHT_COUNT]; + VkSemaphore + image_available_semaphores[VGLTF_RENDERER_MAX_FRAME_IN_FLIGHT_COUNT]; + VkSemaphore + render_finished_semaphores[VGLTF_RENDERER_MAX_FRAME_IN_FLIGHT_COUNT]; + VkFence in_flight_fences[VGLTF_RENDERER_MAX_FRAME_IN_FLIGHT_COUNT]; + uint32_t current_frame; }; bool vgltf_renderer_init(struct vgltf_renderer *renderer, struct vgltf_platform *platform); void vgltf_renderer_deinit(struct vgltf_renderer *renderer); - +bool vgltf_renderer_triangle_pass(struct vgltf_renderer *renderer); #endif // VGLTF_RENDERER_H -- cgit v1.2.3