Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2017-07-06 17:01:21 +0300
committerClément Foucault <foucault.clem@gmail.com>2017-07-06 17:01:21 +0300
commitd02711ed883ee0d1844d49d39a8814aca5b029c3 (patch)
treeaf023cd163cf3b7964e4759aab4ec77fd4f76665 /source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl
parentc217d518efe5f5eeb709229e2832d9d2dfde7c30 (diff)
Eevee: Fix the NaN pixel issue.
It's cause by degenerate triangle having normals set to (0,0,0) which may not be compressed like it should. This fix the problem in the final indirect lighting evaluation which might be costly.
Diffstat (limited to 'source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl')
-rw-r--r--source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl b/source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl
index 95e7af41398..53352244f3d 100644
--- a/source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl
+++ b/source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl
@@ -116,9 +116,9 @@ vec3 hl2_basis(vec3 N, vec3 cubesides[3])
vec3 n_squared = N * N;
- irradiance += n_squared.x * cubesides[0];
- irradiance += n_squared.y * cubesides[1];
- irradiance += n_squared.z * cubesides[2];
+ irradiance += max(1e-8, n_squared.x) * cubesides[0];
+ irradiance += max(1e-8, n_squared.y) * cubesides[1];
+ irradiance += max(1e-8, n_squared.z) * cubesides[2];
return irradiance;
}