diff options
Diffstat (limited to 'src/graphics.cc')
| -rw-r--r-- | src/graphics.cc | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/src/graphics.cc b/src/graphics.cc index cd606b2..23a5ee5 100644 --- a/src/graphics.cc +++ b/src/graphics.cc @@ -4,6 +4,7 @@ #include <EGL/eglplatform.h> #include <glad.h> +#include <cstdio> #include <cstring> #include "cglm/vec4.h" @@ -44,6 +45,18 @@ static bool wayc_graphics_config(EGLDisplay display, EGLConfig* config) { return nconfs > 0; } +static void wayc_sokol_log(const char* msg, uint32_t x, uint32_t y, + const char* file, uint32_t line, const char* func, + void* user) { + wayc_notnull(msg); + wayc_notnull(file); + wayc_notnull(func); + + (void)user; + + fprintf(stderr, "[%s:%d:%s] %s (%d, %d)\n", file, line, func, msg, x, y); +} + enum graphics_error_e wayc_graphics_init(struct graphics_s* graphics, struct wlstate_s* state) { wayc_notnull(graphics); @@ -118,9 +131,6 @@ enum renderer_error_e wayc_renderer_init(struct renderer_s* renderer, return RENDERER_ERROR_SURFACE_CREATION; } - sg_desc desc = {}; - sg_setup(&desc); - renderer->graphics = graphics; renderer->ewindow = ewindow; renderer->esurface = esurface; @@ -134,6 +144,14 @@ enum renderer_error_e wayc_renderer_init(struct renderer_s* renderer, return RENDERER_ERROR_LOAD_FUNCTIONS; } + sg_logger logger = {}; + logger.func = wayc_sokol_log; + + sg_desc desc = {}; + desc.logger = logger; + + sg_setup(&desc); + return RENDERER_ERROR_NONE; } |
