Fix #32144: cycles viewport missing update with dupliverts. Ideally this would be
authorBrecht Van Lommel <brechtvanlommel@pandora.be>
Mon, 3 Sep 2012 13:18:23 +0000 (13:18 +0000)
committerBrecht Van Lommel <brechtvanlommel@pandora.be>
Mon, 3 Sep 2012 13:18:23 +0000 (13:18 +0000)
fixed in the dependency graph so it gives a proper signal but that would need a
bigger refactor.

intern/cycles/blender/blender_object.cpp

index e7d974c3528b6355a44d3a2c92c10de188143344..55291639ae13452560957955556f88eb34169dd4 100644 (file)
@@ -248,7 +248,9 @@ void BlenderSync::sync_object(BL::Object b_parent, int b_index, BL::Object b_ob,
        }
 
        /* object sync */
-       if(object_updated || (object->mesh && object->mesh->need_update)) {
+       /* transform comparison should not be needed, but duplis don't work perfect
+        * in the depsgraph and may not signal changes, so this is a workaround */
+       if(object_updated || (object->mesh && object->mesh->need_update) || tfm != object->tfm) {
                object->name = b_ob.name().c_str();
                object->pass_id = b_ob.pass_index();
                object->tfm = tfm;