[Bf-blender-cvs] [9ad9d38786c] master: Fix T62601: parenting to curve (follow path) causes offset
Philipp Oeser
noreply at git.blender.org
Fri Mar 15 18:52:52 CET 2019
Commit: 9ad9d38786c5d9f3e7f288f2e8255f3e7722da1f
Author: Philipp Oeser
Date: Fri Mar 15 16:15:37 2019 +0100
Branches: master
https://developer.blender.org/rB9ad9d38786c5d9f3e7f288f2e8255f3e7722da1f
Fix T62601: parenting to curve (follow path) causes offset
Similar to T60623 / rB2894e75121d7.
Issue (when parenting with 'Follow Curve') is that the curves
CU_FOLLOW flag is set on the original, but not the
evaluated curve (yet), leading to misbehaviour in 'ob_parcurve()'.
Setting this on both now.
Reviewers: sergey
Maniphest Tasks: T62601
Differential Revision: https://developer.blender.org/D4524
===================================================================
M source/blender/editors/object/object_relations.c
===================================================================
diff --git a/source/blender/editors/object/object_relations.c b/source/blender/editors/object/object_relations.c
index dbd90628136..95d1ddea7f3 100644
--- a/source/blender/editors/object/object_relations.c
+++ b/source/blender/editors/object/object_relations.c
@@ -628,14 +628,16 @@ bool ED_object_parent_set(ReportList *reports, const bContext *C, Scene *scene,
return 0;
else {
Curve *cu = par->data;
-
+ Curve *cu_eval = parent_eval->data;
if ((cu->flag & CU_PATH) == 0) {
cu->flag |= CU_PATH | CU_FOLLOW;
+ cu_eval->flag |= CU_PATH | CU_FOLLOW;
/* force creation of path data */
BKE_displist_make_curveTypes(depsgraph, scene, par, false, false, NULL);
}
else {
cu->flag |= CU_FOLLOW;
+ cu_eval->flag |= CU_FOLLOW;
}
/* if follow, add F-Curve for ctime (i.e. "eval_time") so that path-follow works */
More information about the Bf-blender-cvs
mailing list