#version 460 core in layout(location=0) vec3 position; in layout(location=1) vec4 aColor; in layout(location=2) vec3 aNormal; out vec4 vColor; out vec3 vNormal; uniform mat3 normalMatrix; layout(location = 1) uniform mat3 normalMatrix; void main() { gl_Position = transform * vec4(position, 1.0f); vColor = aColor; vNormal = normalize(normalMatrix * aNormal); }