Revision: 51298
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=51298
Author:   blendix
Date:     2012-10-13 12:11:01 +0000 (Sat, 13 Oct 2012)
Log Message:
-----------
Fix for wrong cycles tangent in some cases, was missing transform.

Modified Paths:
--------------
    trunk/blender/intern/cycles/kernel/svm/svm_geometry.h

Modified: trunk/blender/intern/cycles/kernel/svm/svm_geometry.h
===================================================================
--- trunk/blender/intern/cycles/kernel/svm/svm_geometry.h       2012-10-13 
11:23:04 UTC (rev 51297)
+++ trunk/blender/intern/cycles/kernel/svm/svm_geometry.h       2012-10-13 
12:11:01 UTC (rev 51298)
@@ -29,12 +29,18 @@
                case NODE_GEOM_N: data = sd->N; break;
 #ifdef __DPDU__
                case NODE_GEOM_T: {
-                       int attr_offset = find_attribute(kg, sd, 
ATTR_STD_TANGENT);
+                       if(sd->object != ~0) {
+                               int attr_offset = find_attribute(kg, sd, 
ATTR_STD_TANGENT);
 
-                       if(attr_offset == ATTR_STD_NOT_FOUND)
+                               if(attr_offset != ATTR_STD_NOT_FOUND) {
+                                       data = triangle_attribute_float3(kg, 
sd, ATTR_ELEMENT_VERTEX, attr_offset, NULL, NULL);
+                                       object_normal_transform(kg, sd, &data);
+                               }
+                               else
+                                       data = normalize(sd->dPdu);
+                       }
+                       else
                                data = normalize(sd->dPdu);
-                       else
-                               data = triangle_attribute_float3(kg, sd, 
ATTR_ELEMENT_VERTEX, attr_offset, NULL, NULL);
 
                        break;
                }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to