upd shader_tex 2

This commit is contained in:
s473621 2024-02-07 15:31:46 +01:00
parent 66a4f36be1
commit bb40477d86

View File

@ -1,23 +1,36 @@
#version 430 core #version 430 core
float AMBIENT = 0.1; float AMBIENT = 0.2;
uniform vec3 color; uniform vec3 color;
uniform vec3 lightPos; uniform vec3 lightPos;
uniform sampler2D colorTexture; uniform sampler2D colorTexture;
const float PI = 3.14159265359;
in vec3 vecNormal; in vec3 vecNormal;
in vec3 worldPos; in vec3 worldPos;
in vec2 texCoord; in vec2 texCoord;
out vec4 outColor; out vec4 outColor;
vec3 textureColorTemp;
void main() void main()
{ {
vec3 lightDir = normalize(lightPos-worldPos);
vec3 normal = normalize(vecNormal); vec3 lightDir = normalize(lightPos - worldPos);
float diffuse=max(0,dot(normal,lightDir)); vec3 normal = normalize(vecNormal);
vec4 textureColor = texture2D(colorTexture,texCoord);
textureColorTemp=vec3(textureColor.r,textureColor.g,textureColor.b); float diffuse = max(0.0, dot(normal, lightDir));
outColor = vec4(textureColorTemp*min(1,AMBIENT+diffuse), 1.0); diffuse = clamp(diffuse + 0.2, 0.0, 1.0);
vec3 viewDir = normalize(-worldPos);
vec3 halfwayDir = normalize(lightDir + viewDir);
float specularStrength = 0.7; // Increase specular strength
float specular = pow(max(0.0, dot(normal, halfwayDir)), 32);
vec4 textureColor = texture(colorTexture, texCoord);
vec3 finalColor = textureColor.rgb * (AMBIENT + diffuse) + specularStrength * specular;
outColor = vec4(finalColor, textureColor.a);
} }