Files
lunar/shaders/triangle_mesh.vert
Slendi 7b8f432623 squar
Signed-off-by: Slendi <slendi@socopon.com>
2025-12-04 18:26:27 +02:00

33 lines
644 B
GLSL

#version 450
#extension GL_EXT_buffer_reference : require
layout (location = 0) out vec3 out_color;
layout (location = 1) out vec3 out_uv;
struct Vertex {
vec3 position;
float uv_x;
vec3 normal;
float uv_y;
vec4 color;
};
layout(buffer_reference, std430) readonly buffer VertexBuffer{
Vertex vertices[];
};
layout(push_constant) uniform constants {
mat4 world_matrix;
VertexBuffer vertex_buffer;
} PushConstants;
void main() {
Vertex v = PushConstants.vertex_buffer.vertices[gl_VertexIndex];
gl_Position = PushConstants.world_matrix * vec4(v.position, 1.0f);
out_color = v.color.xyz;
out_uv.x = v.uv_x;
out_uv.y = v.uv_y;
}