diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-07-27 17:49:43 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-07-27 17:51:28 +0400 |
commit | 34937f6547e49e5e083fd4de70d668d5263c20d5 (patch) | |
tree | 4b3d6bf6a49ae393048c6a13bb682a7d8b2a29e0 /intern | |
parent | 234ae0b5ac23cbd5daca0bdd8b58a882da5c4fd2 (diff) |
Fix T41139: Cycles Hair BSDF roughness problem
Diffstat (limited to 'intern')
-rw-r--r-- | intern/cycles/kernel/geom/geom_curve.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/intern/cycles/kernel/geom/geom_curve.h b/intern/cycles/kernel/geom/geom_curve.h index 863836ffcea..c4e9e2ababe 100644 --- a/intern/cycles/kernel/geom/geom_curve.h +++ b/intern/cycles/kernel/geom/geom_curve.h @@ -936,9 +936,10 @@ ccl_device_inline float3 bvh_curve_refine(KernelGlobals *kg, ShaderData *sd, con sd->u = isect->u; sd->v = 0.0f; #endif - + + tg = normalize(curvetangent(isect->u, p[0], p[1], p[2], p[3])); + if(kernel_data.curve.curveflags & CURVE_KN_RIBBONS) { - tg = normalize(curvetangent(isect->u, p[0], p[1], p[2], p[3])); sd->Ng = normalize(-(D - tg * (dot(tg, D)))); } else { @@ -950,7 +951,6 @@ ccl_device_inline float3 bvh_curve_refine(KernelGlobals *kg, ShaderData *sd, con float gd = isect->v; if(gd != 0.0f) { - tg = normalize(curvetangent(isect->u, p[0], p[1], p[2], p[3])); sd->Ng = sd->Ng - gd * tg; sd->Ng = normalize(sd->Ng); } |