From 2cb80f8abee318ef5351c2060a4d0aa6bbc1afd2 Mon Sep 17 00:00:00 2001 From: Mid <> Date: Sat, 13 Sep 2025 12:01:11 +0300 Subject: [PATCH] GL bugfixes --- src/k3.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/k3.c b/src/k3.c index 7985e2e..7bc926d 100644 --- a/src/k3.c +++ b/src/k3.c @@ -1533,7 +1533,7 @@ static void forward_subpass(mat4 projection, mat4 view, int transparent, int lig } glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat->primitive.specular); glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, mat->primitive.emission); - glMateriali(GL_FRONT_AND_BACK, GL_SHININESS, mat->primitive.shininess * 128); + glMateriali(GL_FRONT_AND_BACK, GL_SHININESS, mat->primitive.shininess); } } @@ -2489,7 +2489,7 @@ void k3Init(bool enableTextureCompression, bool enableMipmapping) { "in vec3 v_uv;\n" "out vec4 fragcolor;\n" "void main() {\n" - " fragcolor = textureCube(u_tex, v_uv);\n" + " fragcolor = texture(u_tex, v_uv);\n" "}\n" , NULL), NULL); } @@ -2999,15 +2999,19 @@ void k3BlitToScreenEffect(struct k3Offscreen *offscr, int additive, int effect, } if(k3IsCore) { + GLuint prog; + if(effect == k3_NONE) { - glUseProgram(GL_FROM_K3GLSL(basicBlitProgram)); + prog = GL_FROM_K3GLSL(basicBlitProgram); } else { assert(effect == k3_GLSL); - glUseProgram(GL_FROM_K3GLSL(program)); + prog = GL_FROM_K3GLSL(program); } - GLint uSz = glGetUniformLocation(GL_FROM_K3GLSL(basicBlitProgram), "u_sz"); + glUseProgram(prog); + + GLint uSz = glGetUniformLocation(prog, "u_sz"); glUniform2f(uSz, k3TexSzX(tex), k3TexSzY(tex)); glDrawArrays(GL_TRIANGLES, 0, 3);