summaryrefslogtreecommitdiffstats
path: root/src/main.c
diff options
context:
space:
mode:
authorClement Sibille <clements@lisible.xyz>2025-05-05 08:32:33 +0200
committerClement Sibille <clements@lisible.xyz>2025-05-05 12:24:27 +0200
commitb71eac2069a30349435c192d682e865718c86a15 (patch)
tree33754245a23533e31e6a83390bf190c11dfe2bb9 /src/main.c
parent6017db0069977ae85e698a1234f4a2b7632ee495 (diff)
Add a vulkan renderer that renders an OBJ
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c28
1 files changed, 12 insertions, 16 deletions
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;
}
Go back to lisible.xyz