attribute vec3 pos; attribute vec3 color; attribute vec3 normal; varying vec3 eye_pos_i; varying vec3 normal_i; varying vec4 diffuse_i; void main(void) { gl_Position = gl_ModelViewProjectionMatrix * vec4(pos, 1); eye_pos_i = vec3(gl_Position.x, gl_Position.y, gl_Position.z); normal_i = gl_NormalMatrix * normal; diffuse_i = vec4(color, 1); }