#version 120 uniform mat4 P; uniform mat4 MV; uniform mat4 MVL; uniform vec3 lightPos1; uniform vec3 lightPos2; uniform float i1; uniform float i2; attribute vec4 aPos; // in object space attribute vec3 aNor; // in object space varying vec3 color; // Pass to fragment shader varying vec4 p; varying vec4 n; void main() { gl_Position = P * MV * aPos; p = MV * aPos; n = MV * vec4(aNor, 0.0); color = vec3(0.5, 0.5, 0.5); }