From bd10b72ad38eea117ee440567c1e2edb04970f36 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Fri, 30 Jan 2015 13:03:01 +0500 Subject: [PATCH] Fix T43458: Crashes with hair transmission BSDF Hair BSDF did not have proper behavior because of non-normalized tangent direction (which it expected to be normalized).This lead to wrong labels being returned by the hair BSDF samplers. --- intern/cycles/kernel/svm/svm_closure.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/intern/cycles/kernel/svm/svm_closure.h b/intern/cycles/kernel/svm/svm_closure.h index e4e3b683cd1..ed3f277e898 100644 --- a/intern/cycles/kernel/svm/svm_closure.h +++ b/intern/cycles/kernel/svm/svm_closure.h @@ -402,7 +402,7 @@ ccl_device void svm_node_closure_bsdf(KernelGlobals *kg, ShaderData *sd, float * sc->data2 = 0.0f; } else - sc->T = sd->dPdu; + sc->T = normalize(sd->dPdu); if(type == CLOSURE_BSDF_HAIR_REFLECTION_ID) { sd->flag |= bsdf_hair_reflection_setup(sc);