diff options
author | Jacques Lucke <jacques@blender.org> | 2020-04-14 12:59:47 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2020-04-14 12:59:47 +0300 |
commit | 6692ca602ca6f934ce00da4563434e870e954133 (patch) | |
tree | fe49d439d269f05109d7e29a7776776a9e2bc464 /source/blender/depsgraph/intern | |
parent | dabd59ba23f877f68aaf73e79f0d58118723d9b7 (diff) | |
parent | b07e8a24f5c69578c5ccae31848bb0f51fd18700 (diff) |
Merge branch 'master' into functionsfunctions
Diffstat (limited to 'source/blender/depsgraph/intern')
4 files changed, 10 insertions, 5 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc index 6fe9a3c2a00..d05385a7d7c 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc @@ -68,6 +68,12 @@ void DepsgraphRelationBuilder::build_ik_pose(Object *object, bConstraint *con, RootPChanMap *root_map) { + if ((con->flag & CONSTRAINT_DISABLE) != 0) { + /* Do not add disabled IK constraints to the relations. If these needs to be temporarly + * enabled, they will be added as temporary constraints during transform. */ + return; + } + bKinematicConstraint *data = (bKinematicConstraint *)con->data; /* Attach owner to IK Solver to. */ bPoseChannel *rootchan = BKE_armature_ik_solver_find_root(pchan, data); diff --git a/source/blender/depsgraph/intern/depsgraph_eval.cc b/source/blender/depsgraph/intern/depsgraph_eval.cc index 7e7ab07825f..9251d975125 100644 --- a/source/blender/depsgraph/intern/depsgraph_eval.cc +++ b/source/blender/depsgraph/intern/depsgraph_eval.cc @@ -20,7 +20,7 @@ /** \file * \ingroup depsgraph * - * Evaluation engine entrypoints for Depsgraph Engine. + * Evaluation engine entry-points for Depsgraph Engine. */ #include "MEM_guardedalloc.h" diff --git a/source/blender/depsgraph/intern/depsgraph_tag.cc b/source/blender/depsgraph/intern/depsgraph_tag.cc index 627a93b5869..1c56808ea82 100644 --- a/source/blender/depsgraph/intern/depsgraph_tag.cc +++ b/source/blender/depsgraph/intern/depsgraph_tag.cc @@ -625,7 +625,7 @@ void id_tag_update(Main *bmain, ID *id, int flag, eUpdateSource update_source) /* Accumulate all tags for an ID between two undo steps, so they can be * replayed for undo. */ - id->recalc_undo_accumulated |= deg_recalc_flags_effective(NULL, flag); + id->recalc_after_undo_push |= deg_recalc_flags_effective(NULL, flag); } void graph_id_tag_update( diff --git a/source/blender/depsgraph/intern/eval/deg_eval.cc b/source/blender/depsgraph/intern/eval/deg_eval.cc index 4540cda7e99..c7f3c5cb2b6 100644 --- a/source/blender/depsgraph/intern/eval/deg_eval.cc +++ b/source/blender/depsgraph/intern/eval/deg_eval.cc @@ -72,8 +72,7 @@ void schedule_children(DepsgraphEvalState *state, void schedule_node_to_pool(OperationNode *node, const int thread_id, TaskPool *pool) { - BLI_task_pool_push_from_thread( - pool, deg_task_run_func, node, false, TASK_PRIORITY_HIGH, thread_id); + BLI_task_pool_push_from_thread(pool, deg_task_run_func, node, false, NULL, thread_id); } /* Denotes which part of dependency graph is being evaluated. */ @@ -389,7 +388,7 @@ void deg_evaluate_on_refresh(Depsgraph *graph) task_scheduler = BLI_task_scheduler_get(); need_free_scheduler = false; } - TaskPool *task_pool = BLI_task_pool_create_suspended(task_scheduler, &state); + TaskPool *task_pool = BLI_task_pool_create_suspended(task_scheduler, &state, TASK_PRIORITY_HIGH); /* Prepare all nodes for evaluation. */ initialize_execution(&state, graph); |