diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-09-03 17:18:23 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-09-03 17:18:23 +0400 |
commit | 264975b89c865bd623dea4d360cee8e92052901b (patch) | |
tree | 50532205726d7dcd73c803cf2f7f1d50af405e1d /intern/cycles/blender | |
parent | 1f64aecb303a47ff1a441aa0149e46fa49217169 (diff) |
Fix #32144: cycles viewport missing update with dupliverts. Ideally this would be
fixed in the dependency graph so it gives a proper signal but that would need a
bigger refactor.
Diffstat (limited to 'intern/cycles/blender')
-rw-r--r-- | intern/cycles/blender/blender_object.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/intern/cycles/blender/blender_object.cpp b/intern/cycles/blender/blender_object.cpp index e7d974c3528..55291639ae1 100644 --- a/intern/cycles/blender/blender_object.cpp +++ b/intern/cycles/blender/blender_object.cpp @@ -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; |