diff --git a/client/shaders/nodes_shader/opengl_fragment.glsl b/client/shaders/nodes_shader/opengl_fragment.glsl index 9f8a21d09..64a88ebbb 100644 --- a/client/shaders/nodes_shader/opengl_fragment.glsl +++ b/client/shaders/nodes_shader/opengl_fragment.glsl @@ -498,8 +498,8 @@ void main(void) } - if (f_normal_length != 0 && cosLight < 0.0) { - shadow_int = clamp(1.0-nightRatio, 0.0, 1.0); + if (f_normal_length != 0 && cosLight < 0.035) { + shadow_int = max(shadow_int, min(clamp(1.0-nightRatio, 0.0, 1.0), 1 - clamp(cosLight, 0.0, 0.035)/0.035)); } shadow_int = 1.0 - (shadow_int * f_adj_shadow_strength);