#version 440 in vec3 f_color; out vec4 FragColors; uniform vec3 Kd; uniform vec3 Ka; uniform vec3 Ks; uniform float Shininess; struct LightInfo { vec4 Position; vec3 Intensity; }; uniform LightInfo Light[64]; uniform int LightCount; in vec3 fNormal; in vec3 pos; void main() { vec3 finalColor; vec3 diffuse_sum; vec3 specular_sum; vec3 ambient; ambient = Ka * Light[0].Intensity; for (int i=0; i