1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#version 330 core layout(location = 0) in vec3 apos; layout(location = 1) in vec3 anormal; out VS_OUT { vec3 normal; } vs_out; uniform mat4 view; uniform mat4 model; void main(void) { mat3 normal_matrix = mat3(transpose(inverse(view*model))); vs_out.normal = normalize(normal_matrix*anormal); gl_Position = view*model*vec4(apos, 1.0); }