[Bf-blender-cvs] [ecbdc3f1d47] blender2.8: Transform: Avoid attempt to bypass dependency graph update
Sergey Sharybin
noreply at git.blender.org
Fri Dec 1 13:04:45 CET 2017
Commit: ecbdc3f1d4793ac93f8f9131cab7f21b9f097712
Author: Sergey Sharybin
Date: Fri Dec 1 12:07:41 2017 +0100
Branches: blender2.8
https://developer.blender.org/rBecbdc3f1d4793ac93f8f9131cab7f21b9f097712
Transform: Avoid attempt to bypass dependency graph update
It's not possible to bypass new depsgraph, but also flush to other CoW copies
might be needed here.
===================================================================
M source/blender/editors/transform/transform_conversions.c
===================================================================
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index 5233bdf91e1..730ca70547b 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -6476,12 +6476,16 @@ void special_aftertrans_update(bContext *C, TransInfo *t)
DEG_id_tag_update(&ob->id, OB_RECALC_DATA);
}
else if (arm->flag & ARM_DELAYDEFORM) {
- /* old optimize trick... this enforces to bypass the depgraph */
+ /* TODO(sergey): Armature is already updated by recalcData(), so we
+ * might save some time by skipping re-evaluating it. But this isn't
+ * possible yet within new dependency graph, and also other contexts
+ * might need to update their CoW copies.
+ */
DEG_id_tag_update(&ob->id, OB_RECALC_DATA);
- ob->recalc = 0; // is set on OK position already by recalcData()
}
- else
+ else {
DEG_id_tag_update(&ob->id, OB_RECALC_DATA);
+ }
}
else if (t->options & CTX_PAINT_CURVE) {
More information about the Bf-blender-cvs
mailing list