From 53cba1d004451f0782312cb203afb7da47a29c5f Mon Sep 17 00:00:00 2001 From: Xander Swan Date: Wed, 3 Dec 2025 09:52:13 -0500 Subject: update renderer structure a lil --- src/main.odin | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) (limited to 'src/main.odin') diff --git a/src/main.odin b/src/main.odin index 41af6e3..95ddbcd 100644 --- a/src/main.odin +++ b/src/main.odin @@ -6,9 +6,12 @@ package demonchime import "base:runtime" +import "core:log" + import sg "shared:sokol/gfx" import sapp "shared:sokol/app" import sglue "shared:sokol/glue" +import stime "shared:sokol/time" import slog "shared:sokol/log" import "draw" @@ -23,8 +26,18 @@ state: struct { input: Input, } +logger: log.Logger + +default_context :: proc "contextless" () -> runtime.Context { + ctx := runtime.default_context() + ctx.logger = logger + return ctx +} + init :: proc "c" () { - context = runtime.default_context() + context = default_context() + + stime.setup() sg.setup({ environment = sglue.environment(), @@ -39,7 +52,7 @@ init :: proc "c" () { } frame :: proc "c" () { - context = runtime.default_context() + context = default_context() update_player(&state.player, f32(sapp.frame_duration())) @@ -48,10 +61,12 @@ frame :: proc "c" () { draw_player(state.player) draw.end_frame(&state.renderer) + + free_all(context.temp_allocator) } event :: proc "c" (event: ^sapp.Event) { - context = runtime.default_context() + context = default_context() if event.type == .KEY_DOWN && event.key_code == .ESCAPE { sapp.quit() @@ -61,11 +76,14 @@ event :: proc "c" (event: ^sapp.Event) { } cleanup :: proc "c" () { - context = runtime.default_context() + context = default_context() sg.shutdown() } main :: proc() { + logger = log.create_console_logger() + context.logger = logger + sapp.run({ init_cb = init, frame_cb = frame, @@ -77,4 +95,6 @@ main :: proc() { icon = {sokol_default = true}, logger = {func=slog.func}, }) + + log.destroy_console_logger(logger) } -- cgit v1.3-2-g0d8e