diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2018-01-10 13:36:13 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-10 13:36:13 +0100 |
commit | e49ddf298403ae80977e9811bab6ef39f0ea226b (patch) | |
tree | 174f0922074f044ce48ad81f9bdd0c48fcc3ef7e /drivers/gles3 | |
parent | f1ef2d5183f02c1cf0f824fe9eb06e3fc7bea967 (diff) | |
parent | ebc96195d8ffb263967c7a5c0d9cc78e1847f2b5 (diff) |
Merge pull request #15555 from BastiaanOlij/clamp_blends
Clamp blend to fix screen space reflections
Diffstat (limited to 'drivers/gles3')
-rw-r--r-- | drivers/gles3/shaders/scene.glsl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gles3/shaders/scene.glsl b/drivers/gles3/shaders/scene.glsl index 1aa28d0fd5..958a166968 100644 --- a/drivers/gles3/shaders/scene.glsl +++ b/drivers/gles3/shaders/scene.glsl @@ -1307,7 +1307,7 @@ void reflection_process(int idx, vec3 vertex, vec3 normal,vec3 binormal, vec3 ta //make blend more rounded blend=mix(length(inner_pos),blend,blend); blend*=blend; - blend=1.001-blend; + blend=max(0.0, 1.0-blend); if (reflections[idx].params.x>0.0){// compute reflection @@ -1476,7 +1476,7 @@ void gi_probe_compute(mediump sampler3D probe, mat4 probe_xform, vec3 bounds,vec } vec3 blendv = abs(probe_pos/bounds * 2.0 - 1.0); - float blend = 1.001-max(blendv.x,max(blendv.y,blendv.z)); + float blend = clamp(1.0-max(blendv.x,max(blendv.y,blendv.z)), 0.0, 1.0); //float blend=1.0; float max_distance = length(bounds); |