[Bf-blender-cvs] [34cb9343435] master: Depsgraph: Fix object being tagged for data update when it shouldn't
Sergey Sharybin
noreply at git.blender.org
Tue May 30 14:36:59 CEST 2017
Commit: 34cb93434354b29425d6998e57e3bea9b2d4b730
Author: Sergey Sharybin
Date: Tue May 30 14:34:42 2017 +0200
Branches: master
https://developer.blender.org/rB34cb93434354b29425d6998e57e3bea9b2d4b730
Depsgraph: Fix object being tagged for data update when it shouldn't
===================================================================
M source/blender/depsgraph/intern/eval/deg_eval_flush.cc
===================================================================
diff --git a/source/blender/depsgraph/intern/eval/deg_eval_flush.cc b/source/blender/depsgraph/intern/eval/deg_eval_flush.cc
index e10f86f6e95..d64fdd83d39 100644
--- a/source/blender/depsgraph/intern/eval/deg_eval_flush.cc
+++ b/source/blender/depsgraph/intern/eval/deg_eval_flush.cc
@@ -164,14 +164,32 @@ void deg_graph_flush_updates(Main *bmain, Depsgraph *graph)
* Plus it ensures visibility changes and relations and
* layers visibility update has proper flags to work with.
*/
- if (comp_node->type == DEPSNODE_TYPE_ANIMATION) {
- object->recalc |= OB_RECALC_TIME;
- }
- else if (comp_node->type == DEPSNODE_TYPE_TRANSFORM) {
- object->recalc |= OB_RECALC_OB;
- }
- else {
- object->recalc |= OB_RECALC_DATA;
+ switch (comp_node->type) {
+ case DEPSNODE_TYPE_UNDEFINED:
+ case DEPSNODE_TYPE_OPERATION:
+ case DEPSNODE_TYPE_ROOT:
+ case DEPSNODE_TYPE_TIMESOURCE:
+ case DEPSNODE_TYPE_ID_REF:
+ case DEPSNODE_TYPE_SUBGRAPH:
+ case DEPSNODE_TYPE_PARAMETERS:
+ case DEPSNODE_TYPE_SEQUENCER:
+ /* Ignore, does not translate to object component. */
+ break;
+ case DEPSNODE_TYPE_ANIMATION:
+ object->recalc |= OB_RECALC_TIME;
+ break;
+ case DEPSNODE_TYPE_TRANSFORM:
+ object->recalc |= OB_RECALC_OB;
+ break;
+ case DEPSNODE_TYPE_GEOMETRY:
+ case DEPSNODE_TYPE_EVAL_POSE:
+ case DEPSNODE_TYPE_BONE:
+ case DEPSNODE_TYPE_EVAL_PARTICLES:
+ case DEPSNODE_TYPE_SHADING:
+ case DEPSNODE_TYPE_CACHE:
+ case DEPSNODE_TYPE_PROXY:
+ object->recalc |= OB_RECALC_DATA;
+ break;
}
}
}
More information about the Bf-blender-cvs
mailing list