From 639702ba28d1b649869bf32e12faad8fbc646e3b Mon Sep 17 00:00:00 2001 From: XProger Date: Sun, 4 Mar 2018 14:29:41 +0300 Subject: [PATCH] #15 WebGL NVIDIA caustics workaround --- src/shaders/water.glsl | 1 + 1 file changed, 1 insertion(+) diff --git a/src/shaders/water.glsl b/src/shaders/water.glsl index d02c291..e165548 100644 --- a/src/shaders/water.glsl +++ b/src/shaders/water.glsl @@ -165,6 +165,7 @@ uniform sampler2D sNormal; vec4 caustics() { float rOldArea = length(dFdx(vOldPos.xyz)) * length(dFdy(vOldPos.xyz)); float rNewArea = length(dFdx(vNewPos.xyz)) * length(dFdy(vNewPos.xyz)); + rNewArea = max(rNewArea, 0.00002); float value = clamp(rOldArea / rNewArea * 0.2, 0.0, 1.0) * vOldPos.w; return vec4(value, 0.0, 0.0, 0.0); }