#version 460 core layout (location = 0) in vec3 in_position; layout (location = 1) in vec3 in_normal; layout (location = 2) in vec2 in_texture_coord; layout (location = 0) out vec3 normal; layout (location = 1) out vec2 texture_coord; layout (std140, binding = 0) uniform Matrices { mat4 view; mat4 projection; }; void main() { gl_Position = projection * view * vec4(a_pos, 1.0); normal = in_normal; texture_coord = in_texture_coord; }