25 lines
475 B
GLSL
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;
|
|
}
|