[Bf-blender-cvs] [9173a6f5190] blender2.8: Eevee: Render: Fix NaNs in Normal pass.

Clément Foucault noreply at git.blender.org
Fri Feb 2 02:02:33 CET 2018


Commit: 9173a6f5190b483d79b396ff515dde2dda95b3c6
Author: Clément Foucault
Date:   Fri Feb 2 00:48:33 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB9173a6f5190b483d79b396ff515dde2dda95b3c6

Eevee: Render: Fix NaNs in Normal pass.

===================================================================

M	source/blender/draw/engines/eevee/eevee_render.c

===================================================================

diff --git a/source/blender/draw/engines/eevee/eevee_render.c b/source/blender/draw/engines/eevee/eevee_render.c
index 25dfe8c20eb..92ec39d7c89 100644
--- a/source/blender/draw/engines/eevee/eevee_render.c
+++ b/source/blender/draw/engines/eevee/eevee_render.c
@@ -233,6 +233,11 @@ static void eevee_render_result_normal(
 
 		/* Convert Eevee encoded normals to Blender normals. */
 		for (int i = 0; i < rr->rectx * rr->recty * 3; i += 3) {
+			if (rp->rect[i] == 0.0f && rp->rect[i+1] == 0.0f) {
+				/* If normal is not correct then do not produce NANs.  */
+				continue;
+			}
+
 			float fenc[2];
 			fenc[0] = rp->rect[i+0] * 4.0f - 2.0f;
 			fenc[1] = rp->rect[i+1] * 4.0f - 2.0f;



More information about the Bf-blender-cvs mailing list