forked from bartvdbraak/blender
Depsgraph: Fix duplicated operation node when two objects are sharing same armature
This commit is contained in:
parent
d84df351d0
commit
605695de61
@ -119,7 +119,17 @@ void DepsgraphNodeBuilder::build_rig(Scene *scene, Object *ob)
|
||||
* Eventually, we need some type of proxy/isolation mechanism in-between here
|
||||
* to ensure that we can use same rig multiple times in same scene...
|
||||
*/
|
||||
build_animdata(&arm->id);
|
||||
if ((arm->id.tag & LIB_TAG_DOIT) == 0) {
|
||||
build_animdata(&arm->id);
|
||||
|
||||
/* Make sure pose is up-to-date with armature updates. */
|
||||
add_operation_node(&arm->id,
|
||||
DEPSNODE_TYPE_PARAMETERS,
|
||||
DEPSOP_TYPE_EXEC,
|
||||
NULL,
|
||||
DEG_OPCODE_PLACEHOLDER,
|
||||
"Armature Eval");
|
||||
}
|
||||
|
||||
/* Rebuild pose if not up to date. */
|
||||
if (ob->pose == NULL || (ob->pose->flag & POSE_RECALC)) {
|
||||
@ -141,14 +151,6 @@ void DepsgraphNodeBuilder::build_rig(Scene *scene, Object *ob)
|
||||
}
|
||||
}
|
||||
|
||||
/* Make sure pose is up-to-date with armature updates. */
|
||||
add_operation_node(&arm->id,
|
||||
DEPSNODE_TYPE_PARAMETERS,
|
||||
DEPSOP_TYPE_EXEC,
|
||||
NULL,
|
||||
DEG_OPCODE_PLACEHOLDER,
|
||||
"Armature Eval");
|
||||
|
||||
/**
|
||||
* Pose Rig Graph
|
||||
* ==============
|
||||
|
Loading…
Reference in New Issue
Block a user