I have wirtten a fragment shader that works just fine with a single light. Now I am trying to adpat it to work with 8 lights, the implement it in Processing. Clearly I am doing something wrong in the math and I cannot see what it is... I have read other posts about this and try to adapt the answer to my problem, no luck though...////Fragment/////    #ifdef GL_ESprecision mediump float;precision mediump int;#endifvarying vec4 vertColor;varying vec3 ecNormal;varying vec3 lightDir;void main() {    vec3 direction = normalize(lightDir);  vec3 normal = normalize(ecNormal);  float intensity = max(0.0, dot(direction, normal));  gl_FragColor = vec4(intensity, intensity, intensity, 1) * vertColor;}////vertex/////        #define PROCESSING_LIGHT_SHADERuniform mat4 modelview;uniform mat4 transform;uniform mat3 normalMatrix;uniform vec4 lightPosition;uniform vec3 lightNormal;attribute vec4 vertex;attribute vec4 color;attribute vec3 normal;varying vec4 vertColor;varying vec3 ecNormal;varying vec3 lightDir;void main() {  gl_Position = transform * vertex;      vec3 ecVertex = vec3(modelview * vertex);    ecNormal = normalize(normalMatrix * normal);  lightDir = normalize(lightPosition.xyz - ecVertex);    vertColor = color;}
Multiple light pixel Shader in GLSL
opengl;shader