#version 430 core float AMBIENT = 0.1; uniform vec3 color; uniform vec3 lightPos; uniform sampler2D colorTexture; in vec3 vecNormal; in vec3 worldPos; in vec2 fragTexCoord; out vec4 outColor; void main() { vec4 textureColor = texture2D(colorTexture, fragTexCoord); vec3 texcolor = vec3(textureColor.x, textureColor.y, textureColor.z); vec3 lightDir = normalize(lightPos-worldPos); vec3 normal = normalize(vecNormal); float diffuse=max(0.0, dot(normal,lightDir)); outColor = vec4(texcolor * min(1, AMBIENT + diffuse), 1.0); }