diff options
| author | Clément Sibille <clements@lisible.xyz> | 2025-03-25 07:31:37 +0100 |
|---|---|---|
| committer | Clément Sibille <clements@lisible.xyz> | 2025-03-25 07:31:37 +0100 |
| commit | a33f692a0a0d3d4210044bdd93ec6d067a17c8b5 (patch) | |
| tree | 8fa34185bf3c184b67077044fceaceb957c9d7a1 /src/renderer.h | |
| parent | 979ec073d45f4111da8060f4ac081101c85d4a0e (diff) | |
Render hello triangle
Diffstat (limited to 'src/renderer.h')
| -rw-r--r-- | src/renderer.h | 11 |
1 files changed, 9 insertions, 2 deletions
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 <vulkan/vulkan.h> +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 |
