#version 400 out vec4 FragColor; in vec3 Position; in vec2 TexCoord; in vec3 Normal; uniform vec3 viewPosition; uniform vec3 phongAmbient; uniform vec3 phongDiffuse; uniform vec3 phongSpecular; uniform float phongShininess; uniform vec3 lightDirection; uniform vec3 lightAmbient; uniform vec3 lightDiffuse; uniform vec3 lightSpecular; void main() { vec3 norm = normalize(Normal); vec3 lightDir = normalize(-lightDirection); vec3 ambient = (phongAmbient); float diffImpact = max(dot(norm, lightDir), 0.0); vec3 diffuse = (phongDiffuse * diffImpact); vec3 result = ambient + diffuse; FragColor = vec4(result, 1.0); }