Depsgraph: Move time dependency to animation of action
This way we guarantee that animation component on the datablock will totally wait for action to be fully evaluated before attempting to evaluate f-curves. Fixes T55642: Inconsistent result on animated DoF file
This commit is contained in:
@@ -1040,8 +1040,6 @@ void DepsgraphRelationBuilder::build_animdata_curves(ID *id)
|
||||
}
|
||||
/* Wire up dependency to time source. */
|
||||
ComponentKey adt_key(id, DEG_NODE_TYPE_ANIMATION);
|
||||
TimeSourceKey time_src_key;
|
||||
add_relation(time_src_key, adt_key, "TimeSrc -> Animation");
|
||||
/* Relation from action itself. */
|
||||
if (adt->action != NULL) {
|
||||
ComponentKey action_key(&adt->action->id, DEG_NODE_TYPE_ANIMATION);
|
||||
@@ -1210,6 +1208,9 @@ void DepsgraphRelationBuilder::build_action(bAction *action)
|
||||
if (built_map_.checkIsBuiltAndTag(action)) {
|
||||
return;
|
||||
}
|
||||
TimeSourceKey time_src_key;
|
||||
ComponentKey animation_key(&action->id, DEG_NODE_TYPE_ANIMATION);
|
||||
add_relation(time_src_key, animation_key, "TimeSrc -> Animation");
|
||||
}
|
||||
|
||||
void DepsgraphRelationBuilder::build_driver(ID *id, FCurve *fcu)
|
||||
|
||||
Reference in New Issue
Block a user