From e1b0ea16142beb29d2fbfdf4f02524eb117aee6d Mon Sep 17 00:00:00 2001 From: onelin Date: Thu, 18 Dec 2025 21:52:13 +0100 Subject: Add instance to window_init And make a mess in the meantime:( --- src/daw.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'src/daw.c') diff --git a/src/daw.c b/src/daw.c index 25091c5..67b9178 100644 --- a/src/daw.c +++ b/src/daw.c @@ -113,6 +113,10 @@ Instance* engine_init(const char* windowtitle, i32 windowWidth, i32 windowHeight /* initialize resources */ Resources* resources = calloc(1, sizeof(Resources)); + // Until we've gotten rid of this global, it is important to set it before + // `window_new`. + GLOBAL_PLATFORM = p; + w = Window_new(&Platform_GLFW, windowtitle, WINDOW_FRAMEWORK_GLFW, WINDOW_RENDERER_OPENGL, (ivec2){windowsize[0], windowsize[1]}, flags); @@ -133,8 +137,6 @@ Instance* engine_init(const char* windowtitle, i32 windowWidth, i32 windowHeight INFO("Available cores: %d", nproc()); - GLOBAL_PLATFORM = p; - #ifdef DAW_BUILD_HOTRELOAD #define State(name) \ @@ -213,8 +215,7 @@ void framebuffer_size_callback_default(ivec3* dst,ivec2 src) { } void camera_reset_callback_default(Camera* dst, void* state, ivec2 src) { - *dst = (Camera)DEFAULT_CAMERA; - glm_ortho_default(45.f, dst->per); + r_perspective_ortho(dst, 45.f, src); } @@ -268,7 +269,7 @@ i32 engine_run(Instance* p, StateType initial_state, void* state_arg) { w->render_targets->framebuffer_size_callback[0] = &framebuffer_size_callback_default; w->render_targets->camera_reset_callback[0] = &camera_reset_callback_default; - camera_reset_callback_default(&default_camera, wsz); + camera_reset_callback_default(&default_camera, mem->data, wsz); w->render_targets->cam[0] = &default_camera; } @@ -369,7 +370,7 @@ i32 engine_run(Instance* p, StateType initial_state, void* state_arg) { // TODO set if null ..? w->render_targets->framebuffer_size_callback[0] = &framebuffer_size_callback_default; w->render_targets->camera_reset_callback[0] = &camera_reset_callback_default; - camera_reset_callback_default(&default_camera, (void*)(mem->data), wsz); + camera_reset_callback_default(&default_camera, mem->data, wsz); w->render_targets->cam[0] = &default_camera; } -- cgit v1.3