#version 430 core layout(location = $vertexPosition$) in vec3 vertexPosition; layout(location = $vertexUV$) in vec2 vertexUV; layout(location = $vertexNormal$) in vec3 vertexNormal; layout(location = $MVP$) uniform mat4 MVP; out vec3 pos; out vec2 uv; out vec3 normal; void main() { pos = vertexPosition; uv = vertexUV; normal = vertexNormal; gl_Position = MVP * vec4(vertexPosition, 1.0f); }