diff options
author | Yuri Roubinsky <chaosus89@gmail.com> | 2021-06-09 09:03:54 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-09 09:03:54 +0300 |
commit | af451ffaa0b8ff9df37b88ebffa6057fa3942c6b (patch) | |
tree | e19187ba35d07188436fc34437f55f525b6084e9 | |
parent | 090e4c4abdd406a7ed7fc33d0a4670bba69a4c0a (diff) | |
parent | 5d5400a3b1ff7d5dbf06c959aedf5e99d985ba7d (diff) |
Merge pull request #49424 from Chaosus/fix_phong_rendermode
-rw-r--r-- | servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl b/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl index 14bad7dc06..709ea45b88 100644 --- a/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl +++ b/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl @@ -238,7 +238,11 @@ void light_compute(vec3 N, vec3 L, vec3 V, vec3 light_color, float attenuation, #elif defined(SPECULAR_PHONG) vec3 R = normalize(-reflect(L, N)); +#ifdef USE_SOFT_SHADOWS float cRdotV = clamp(A + dot(R, V), 0.0, 1.0); +#else + float cRdotV = clamp(dot(R, V), 0.0, 1.0); +#endif float shininess = exp2(15.0 * (1.0 - roughness) + 1.0) * 0.25; float phong = pow(cRdotV, shininess); phong *= (shininess + 8.0) * (1.0 / (8.0 * M_PI)); |