#version 330 uniform sampler2D texture0; uniform vec4 colDiffuse; in vec2 frag_texcoord; in vec4 frag_colour; in vec3 frag_lighting; out vec4 finalColor; void main() { vec4 texel = texture(texture0, frag_texcoord) * frag_colour; if (texel.a < 0.5) { discard; } texel.rgb += colDiffuse.rgb; vec3 lighting = max(frag_lighting, vec3(0.0)); finalColor = vec4(texel.rgb * lighting, 1.0); }