#extension GL_OES_element_index : enable precision mediump float; varying lowp vec4 vColor; varying lowp vec3 vNormal; varying lowp vec4 eyePos; varying lowp vec3 v; varying mediump mat4 mvInvMatrix; varying mediump mat4 mvMatrix; varying float FogFragCoord; uniform vec4 fogColour; uniform float fog_end; uniform float fog_start; uniform vec4 clipPlane0; uniform vec4 clipPlane1; uniform vec4 clipPlane2; uniform vec4 clipPlane3; uniform vec4 clipPlane4; uniform vec4 clipPlane5; uniform vec4 clipPlane6; uniform vec4 clipPlane7; uniform int nClipPlanes; uniform vec2 cursorPos; uniform bool shinyBack; uniform bool defaultColour; uniform vec4 backColour; uniform vec4 light_positions; uniform vec4 light_colours_ambient; uniform vec4 light_colours_specular; uniform vec4 light_colours_diffuse; void main(void) { if(dot(eyePos, clipPlane0)<0.0){ discard; } if(dot(eyePos, clipPlane1)<0.0){ discard; } vec3 L; vec3 E; vec3 R; vec4 Iamb =vec4(0.0,0.0,0.0,0.0); vec4 Idiff=vec4(0.0,0.0,0.0,0.0); vec4 Ispec=vec4(0.0,0.0,0.0,0.0); vec3 norm = normalize(vNormal); if(gl_FrontFacing!=true){ //gl_FragColor = vec4(1.0,0.0,0.0,1.0); //gl_FragColor = gl_FragColor; norm = -norm; } if(gl_FrontFacing!=true){ E = (mvInvMatrix * vec4(normalize(-v),1.0)).xyz; //for (i = 0; i