love-demo2/shader/font.vert
2026-03-08 16:53:03 -05:00

40 lines
579 B
GLSL

#version 330 core
const vec2 vtx[4] = vec2[](vec2(-1.0, 1.0), // tl
vec2( 1.0, 1.0), // tr
vec2( 1.0, -1.0), // br
vec2(-1.0, -1.0)); // bl
/*
tl tr
br
0 1 2
tr tl br
1 0 2
tl
bl br
2 1 3
br tl bl
2 0 3
1 0 2 3
*/
uniform mat4 Transform;
out vec4 PixelTexture;
void main()
{
vec2 vertex = vtx[gl_VertexID];
PixelTexture = vec4(vertex * vec2(0.5, -0.5) + 0.5, 0, 0);
vertex = vertex * vec2(0.5, 0.5) + vec2(0.5, -0.5);
gl_Position = Transform * vec4(vertex, 0.0, 1.0);
}