From b71eac2069a30349435c192d682e865718c86a15 Mon Sep 17 00:00:00 2001 From: Clement Sibille Date: Mon, 5 May 2025 08:32:33 +0200 Subject: Add a vulkan renderer that renders an OBJ --- src/main.c | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index d2ea49d..d518632 100644 --- a/src/main.c +++ b/src/main.c @@ -1,43 +1,39 @@ +#include "engine.h" #include "log.h" #include "platform.h" -#include "renderer.h" int main(void) { struct vgltf_platform platform = {}; if (!vgltf_platform_init(&platform)) { - VGLTF_LOG_ERR("Couldn't initialize the platform layer"); + VGLTF_LOG_ERR("Platform initialization failed"); goto err; } - struct vgltf_renderer renderer = {}; - if (!vgltf_renderer_init(&renderer, &platform)) { - VGLTF_LOG_ERR("Couldn't initialize the renderer"); + struct vgltf_engine engine = {}; + if (!vgltf_engine_init(&engine, &platform)) { + VGLTF_LOG_ERR("Couldn't initialize the engine"); goto deinit_platform; } + VGLTF_LOG_INFO("Starting main loop"); while (true) { struct vgltf_event event; while (vgltf_platform_poll_event(&platform, &event)) { - if (event.type == VGLTF_EVENT_QUIT || - (event.type == VGLTF_EVENT_KEY_DOWN && - event.key.key == VGLTF_KEY_ESCAPE)) { + if (event.type == VGLTF_EVENT_QUIT || (event.type == VGLTF_EVENT_KEY_DOWN && + event.key.key == VGLTF_KEY_ESCAPE)) { goto out_main_loop; - } else if (event.type == VGLTF_EVENT_WINDOW_RESIZED) { - vgltf_renderer_on_window_resized( - &renderer, - (struct vgltf_window_size){.width = event.window_resized.width, - .height = event.window_resized.height}); } } - vgltf_renderer_triangle_pass(&renderer); + vgltf_engine_run_frame(&engine); } out_main_loop: - vgltf_renderer_deinit(&renderer); + VGLTF_LOG_INFO("Exiting main loop"); + vgltf_engine_deinit(&engine); vgltf_platform_deinit(&platform); return 0; deinit_platform: vgltf_platform_deinit(&platform); err: - return 1; + return -1; } -- cgit v1.2.3