#version 440 layout(location=0) in vec3 coord3d; layout(location=1) in vec3 v_normal; layout(location=2) in vec3 v_color; layout(location=3) in vec2 v_texmap; uniform mat4 mvp; uniform mat3 NormalMatrix; uniform mat4 ModelViewMatrix; out vec3 fNormal; out vec3 pos; out vec2 texCoord; void main(void) { fNormal = normalize(NormalMatrix * v_normal); pos = (ModelViewMatrix * vec4(coord3d, 1.0)).xyz; texCoord = v_texmap; gl_Position = mvp * vec4(coord3d, 1.0f); }