From f5259b6c44b5902a0ca35de113fe16b9275ea13e Mon Sep 17 00:00:00 2001 From: tech kaczynski Date: Thu, 22 Oct 2026 06:17:20 +1000 Subject: added scene stats to default layout. --- env.c | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) (limited to 'env.c') diff --git a/env.c b/env.c index 2ed7012..412dbea 100644 --- a/env.c +++ b/env.c @@ -173,65 +173,71 @@ sky_update_lighting(void) { } static void -env_update_mdl_shader(void) { +env_update_shader(cstr key) { Vec3 sun_col = color_to_vec3(env.sun_col); Vec3 moon_col = color_to_vec3(env.moon_col); Vec3 ambient_col = color_to_vec3(env.ambient_col); - Shader sdr = shader_get("model")->sdr; + FunShader *res = shader_get(key); + if (!res) { + TraceLog(LOG_ERROR, "env_update_shaders: invalid key"); + return; + } + + Shader sdr = shader_get(key)->sdr; SetTraceLogLevel(LOG_DEBUG); SetShaderValue( sdr, - fun_shader_uniform("model", "sun_direction"), + fun_shader_uniform(key, "sun_direction"), &env.sun_dir, SHADER_UNIFORM_VEC3 ); SetShaderValue( sdr, - fun_shader_uniform("model", "sun_colour"), + fun_shader_uniform(key, "sun_colour"), &sun_col, SHADER_UNIFORM_VEC3 ); SetShaderValue( sdr, - fun_shader_uniform("model", "sun_intensity"), + fun_shader_uniform(key, "sun_intensity"), &env.sun_intensity, SHADER_UNIFORM_FLOAT ); SetShaderValue( sdr, - fun_shader_uniform("model", "moon_direction"), + fun_shader_uniform(key, "moon_direction"), &env.moon_dir, SHADER_UNIFORM_VEC3 ); SetShaderValue( sdr, - fun_shader_uniform("model", "moon_colour"), + fun_shader_uniform(key, "moon_colour"), &moon_col, SHADER_UNIFORM_VEC3 ); SetShaderValue( sdr, - fun_shader_uniform("model", "moon_intensity"), + fun_shader_uniform(key, "moon_intensity"), &env.moon_intensity, SHADER_UNIFORM_FLOAT ); SetShaderValue( sdr, - fun_shader_uniform("model", "ambient_colour"), + fun_shader_uniform(key, "ambient_colour"), &ambient_col, SHADER_UNIFORM_VEC3 ); SetShaderValue( sdr, - fun_shader_uniform("model", "ambient_intensity"), + fun_shader_uniform(key, "ambient_intensity"), &env.ambient_intensity, SHADER_UNIFORM_FLOAT ); @@ -265,11 +271,12 @@ env_update(void) { // env.cycle += GetFrameTime() / env.day_len; // env.cycle -= floorf(env.cycle); // } + sky_update_lighting(); - env_update_mdl_shader(); + env_update_shader("model"); + env_update_shader("model_cutoff"); } - void env_draw_sky(Camera cam) { int scr_w = GetScreenWidth(); -- cgit v1.2.3