   in vec3 vNormal;
    in vec3 vLightRay[numLights];
    in vec3 vEye[numLights];

    out vec4 fragColor;

    void main(void) {
      if (uWireframe || uIllum == 0) {
        fragColor = vec4(uKd, uD);
        return;
      }

      vec3 color = vec3(0.0);
      vec3 light = vec3(0.0);
      vec3 eye = vec3(0.0);
      vec3 reflection = vec3(0.0);
      vec3 normal = normalize(vNormal);

      if (uIllum == 1) {
        for (int i = 0; i < numLights; i++) {
          light = normalize(vLightRay[i]);
    