1
0
Fork 0
spectre/assets/shaders/standard.vert.glsl

21 lines
500 B
GLSL

#version 330 core
uniform mat4 u_MVP;
layout(location = 0) in vec3 in_pos;
layout(location = 3) in vec4 in_color;
layout(location = 8) in vec2 in_texcoord;
out vec4 vColor;
out vec2 vTexCoord;
void main(void) {
gl_Position = u_MVP * vec4(in_pos, 1.0);
vColor = in_color;
// in_texcoord is defined with (0,0) at top-left (same as in_pos)
// however, sampling in OpenGL expects bottom-left. So we must flip Y.
vTexCoord = vec2(in_texcoord.x, 1.0 - in_texcoord.y);
}