diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-02-02 02:48:33 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-02-02 02:48:33 +0300 |
commit | 9173a6f5190b483d79b396ff515dde2dda95b3c6 (patch) | |
tree | 28acd171e6c326ca5cf3ccadf664765fe648e305 /source/blender | |
parent | 44c4d6209271891347e5d0ac776098a7dce40126 (diff) |
Eevee: Render: Fix NaNs in Normal pass.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_render.c | 5 |
1 files changed, 5 insertions, 0 deletions
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; |