From c25cfd30443fe31b76da0af1d9742d2f9f0cbf43 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Fri, 23 Nov 2012 13:41:25 +0000 Subject: [PATCH] Fix cycles AO issue, still was missing AO pass for black/non-diffuse objects. --- intern/cycles/kernel/kernel_shader.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/intern/cycles/kernel/kernel_shader.h b/intern/cycles/kernel/kernel_shader.h index f935858f8ba..879160312cf 100644 --- a/intern/cycles/kernel/kernel_shader.h +++ b/intern/cycles/kernel/kernel_shader.h @@ -619,7 +619,10 @@ __device float3 shader_bsdf_ao(KernelGlobals *kg, ShaderData *sd, float ao_facto } } - *N = normalize(*N); + if(is_zero(*N)) + *N = sd->N; + else + *N = normalize(*N); return eval; #else