#version 430 core uniform vec3 color; uniform vec3 lightPos; uniform vec3 lightColor; uniform vec3 cameraPos; in vec3 interpNormal; in vec3 vertexNormalOut; in vec3 vertexPosOut; out vec4 outColor; void main() { vec3 normalizedVertexNormal = normalize(vertexNormalOut); vec3 viewDir = normalize(cameraPos - vertexPosOut); float angle = dot(viewDir, normalizedVertexNormal); vec3 red = vec3(1, 0, 0); outColor = vec4(mix(red, color, angle), 1.0); }