Files

25 lines
475 B
GLSL

#version 450
layout(location = 0) out vec3 frag_normal;
layout(location = 1) out vec4 light_pos;
layout(push_constant) uniform vps_t {
mat4 vp;
mat4 light_vp;
} vps;
vec2 vertices[4] = vec2[](
vec2(-1, -1),
vec2(-1, 1),
vec2(1, 1),
vec2(1, -1)
);
void main() {
const vec2 pos = 4 * vertices[gl_VertexIndex];
const vec4 world_pos = vec4(pos.x, 0, pos.y, 1);
gl_Position = vps.vp * world_pos;
frag_normal = vec3(0, 1, 0);
light_pos = vps.light_vp * world_pos;
}