[Bf-blender-cvs] [f88ce5bf273] blender2.8: Depsgraph: Remove special exception logic from ID node tagging

Sergey Sharybin noreply at git.blender.org
Fri Dec 15 17:24:15 CET 2017


Commit: f88ce5bf2732d1d597a0859920d3e01cb3579123
Author: Sergey Sharybin
Date:   Fri Dec 15 14:49:11 2017 +0100
Branches: blender2.8
https://developer.blender.org/rBf88ce5bf2732d1d597a0859920d3e01cb3579123

Depsgraph: Remove special exception logic from ID node tagging

This is something what we should be limiting as much as possible, it is
enough already to have special mapping cases in depsgreaph_depsgraph_tag.

===================================================================

M	source/blender/depsgraph/intern/nodes/deg_node.cc

===================================================================

diff --git a/source/blender/depsgraph/intern/nodes/deg_node.cc b/source/blender/depsgraph/intern/nodes/deg_node.cc
index 5f83d02082b..62291596323 100644
--- a/source/blender/depsgraph/intern/nodes/deg_node.cc
+++ b/source/blender/depsgraph/intern/nodes/deg_node.cc
@@ -265,38 +265,7 @@ void IDDepsNode::tag_update(Depsgraph *graph)
 {
 	GHASH_FOREACH_BEGIN(ComponentDepsNode *, comp_node, components)
 	{
-		/* TODO(sergey): What about drivers? */
-		bool do_component_tag = comp_node->type != DEG_NODE_TYPE_ANIMATION;
-		if (comp_node->type == DEG_NODE_TYPE_ANIMATION) {
-			AnimData *adt = BKE_animdata_from_id(id_orig);
-			/* Animation data might be null if relations are tagged for update. */
-			if (adt != NULL && (adt->recalc & ADT_RECALC_ANIM)) {
-				do_component_tag = true;
-			}
-		}
-		else if (comp_node->type == DEG_NODE_TYPE_SHADING) {
-			/* TODO(sergey): For until we properly handle granular flags for DEG_id_tag_update()
-			 * we skip flushing here to keep Luca happy.
-			 */
-			if (GS(id_orig->name) != ID_MA &&
-			    GS(id_orig->name) != ID_WO)
-			{
-				do_component_tag = false;
-			}
-		}
-		else if (comp_node->type == DEG_NODE_TYPE_SHADING_PARAMETERS) {
-			do_component_tag = false;
-		}
-		else if (comp_node->type == DEG_NODE_TYPE_EVAL_PARTICLES) {
-			/* Only do explicit particle settings tagging. */
-			do_component_tag = false;
-		}
-		else if (comp_node->type == DEG_NODE_TYPE_BATCH_CACHE) {
-			do_component_tag = false;
-		}
-		if (do_component_tag) {
-			comp_node->tag_update(graph);
-		}
+		comp_node->tag_update(graph);
 	}
 	GHASH_FOREACH_END();
 }



More information about the Bf-blender-cvs mailing list