From 6c25eabbc5b80c55dea5e3b848cb770c501c0680 Mon Sep 17 00:00:00 2001 From: Enzo Nocera <32960642+AlmightyScientist@users.noreply.github.com> Date: Mon, 18 Dec 2017 09:12:11 +0100 Subject: Shader Language: Fix Vertex Lighting artifacts. - When using Direction Lighting along with Vertex Lighting, putting a SpatialMaterial Roughness to 1.0 causes artifacts to appear. (#14552) Fixes #14552. --- drivers/gles3/shaders/scene.glsl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gles3/shaders/scene.glsl b/drivers/gles3/shaders/scene.glsl index 9bc2bc079d..f71a2690f6 100644 --- a/drivers/gles3/shaders/scene.glsl +++ b/drivers/gles3/shaders/scene.glsl @@ -174,7 +174,7 @@ void light_compute(vec3 N, vec3 L,vec3 V, vec3 light_color, float roughness, ino vec3 H = normalize(V + L); float dotNH = max(dot(N,H), 0.0 ); - float intensity = pow( dotNH, (1.0-roughness) * 256.0); + float intensity = (roughness >= 1.0 ? 1.0 : pow( dotNH, (1.0-roughness) * 256.0)); specular += light_color * intensity; } -- cgit v1.2.3