#version 330 core layout (location = 0) in vec3 aPos; layout (location = 1) in vec2 aTexCoord; layout (std140) uniform Matrices { mat4 projection; mat4 view; }; out vec2 texCoord; uniform mat4 model; uniform bool flip; void main() { texCoord = aTexCoord; gl_Position = projection * view * model * vec4(aPos, 1.0); if (flip) { texCoord = vec2(aTexCoord.x, 1.0 - aTexCoord.y); } }