techkaczynski.dev / code

summaryrefslogtreecommitdiff
path: root/res.c
diff options
context:
space:
mode:
authortech kaczynski <tk@techkaczynski.dev>2026-11-02 03:23:17 +1000
committertech kaczynski <tk@techkaczynski.dev>2026-11-02 03:23:17 +1000
commitb47b2e022bfa74cd94d3296aae6bd34ca4afff02 (patch)
tree5fa05b743289e1ab877a85c1bf1874be2736f04f /res.c
parent040a896cb98963c74916c0b833efa9df2ef965e3 (diff)
new shaders for foliage, new material settings, added lots of assets.
Diffstat (limited to 'res.c')
-rw-r--r--res.c19
1 files changed, 14 insertions, 5 deletions
diff --git a/res.c b/res.c
index f48ef86..f4c8597 100644
--- a/res.c
+++ b/res.c
@@ -38,7 +38,7 @@ asset_load_data(cstr key) {
}
for (int i = 0; i < mdl.materialCount; ++i) {
- mdl.materials[i].shader = shader_get("model")->sdr;
+ mdl.materials[i].shader = shader_get("default")->sdr;
}
asset->tag = ASSET_TAG_MODEL;
@@ -55,6 +55,7 @@ asset_load_data(cstr key) {
}
GenTextureMipmaps(&tex);
+ SetTextureWrap(tex, TEXTURE_WRAP_REPEAT);
// SetTextureFilter(tex, TEXTURE_FILTER_ANISOTROPIC_16X);
SetTextureFilter(tex, TEXTURE_FILTER_TRILINEAR);
// SetTextureFilter(tex, TEXTURE_FILTER_BILINEAR);
@@ -143,14 +144,22 @@ res_init(void) {
map_init(&res.sdr);
map_init(&res.assets);
- fun_shader_create("model",
+ fun_shader_create("default",
"res/sdr/mdl_vtx_lit.vs",
"res/sdr/mdl_vtx_lit.fs");
- fun_shader_create("model_cutoff",
+ fun_shader_create("alpha_cutoff",
"res/sdr/mdl_vtx_lit.vs",
"res/sdr/mdl_vtx_lit_cutoff.fs");
+ fun_shader_create("alpha_cutoff_nocull",
+ "res/sdr/mdl_vtx_lit.vs",
+ "res/sdr/mdl_two_sided_cutoff.fs");
+
+ fun_shader_create("foliage",
+ "res/sdr/mdl_foliage.vs",
+ "res/sdr/mdl_vtx_lit_cutoff.fs");
+
fun_shader_create("sky", NULL, "res/sdr/sky.fs");
cstr filter = ".glb;.png;.ttf;.otf;.ogg";
@@ -278,14 +287,14 @@ fun_shader_uniform(cstr skey, cstr ukey) {
return *ret;
}
- BeginShaderMode(sdr->sdr);
+ // BeginShaderMode(sdr->sdr);
int loc = rlGetLocationUniform(sdr->sdr.id, ukey);
if (loc < 0) {
TraceLog(LOG_ERROR,
"shader '%s' uniform '%s' not found.\n", skey, ukey);
exit(1);
}
- EndShaderMode();
+ // EndShaderMode();
map_set(&sdr->uniforms, ukey, loc);
ret = map_get(&sdr->uniforms, ukey);