[Bf-blender-cvs] [07521b16270] master: Depsgraph: Remove no-op evaluation function

Sergey Sharybin noreply at git.blender.org
Fri Feb 5 17:35:55 CET 2021


Commit: 07521b16270e5881d09216ff0606c035b1440fd0
Author: Sergey Sharybin
Date:   Fri Feb 5 17:13:59 2021 +0100
Branches: master
https://developer.blender.org/rB07521b16270e5881d09216ff0606c035b1440fd0

Depsgraph: Remove no-op evaluation function

Make the SHADING_PARAMETERS operation on node tree a real no-op.
The function used as a callback was only doing a debug print.

The issue with this function was that an original ID was passed
as an argument. This is a violation of design, and if anything it
should be left up to the implementation to check whether depsgraph
is active.

There are no functional changes for users in the interface. The
only difference is that the debug print will no longer happen.

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

M	source/blender/blenkernel/intern/node.cc
M	source/blender/depsgraph/intern/builder/deg_builder_nodes.cc

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

diff --git a/source/blender/blenkernel/intern/node.cc b/source/blender/blenkernel/intern/node.cc
index 434875820c3..d611f9b002a 100644
--- a/source/blender/blenkernel/intern/node.cc
+++ b/source/blender/blenkernel/intern/node.cc
@@ -4943,10 +4943,3 @@ void BKE_nodetree_remove_layer_n(bNodeTree *ntree, Scene *scene, const int layer
     }
   }
 }
-
-void BKE_nodetree_shading_params_eval(struct Depsgraph *depsgraph,
-                                      bNodeTree *ntree_dst,
-                                      const bNodeTree *ntree_src)
-{
-  DEG_debug_print_eval(depsgraph, __func__, ntree_src->id.name, ntree_dst);
-}
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index d9df322776e..d8dc66883a0 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@ -1568,7 +1568,6 @@ void DepsgraphNodeBuilder::build_nodetree(bNodeTree *ntree)
   }
   /* nodetree itself */
   add_id_node(&ntree->id);
-  bNodeTree *ntree_cow = get_cow_datablock(ntree);
   /* General parameters. */
   build_parameters(&ntree->id);
   build_idproperties(ntree->id.properties);
@@ -1576,16 +1575,7 @@ void DepsgraphNodeBuilder::build_nodetree(bNodeTree *ntree)
   build_animdata(&ntree->id);
   /* Shading update. */
   add_operation_node(&ntree->id, NodeType::SHADING, OperationCode::MATERIAL_UPDATE);
-  /* NOTE: We really pass original and CoW node trees here, this is how the
-   * callback works. Ideally we need to find a better way for that.
-   *
-   * TODO(sergey): The callback seems to be a no-op, so better to remove it. */
-  add_operation_node(&ntree->id,
-                     NodeType::SHADING_PARAMETERS,
-                     OperationCode::MATERIAL_UPDATE,
-                     [ntree_cow, ntree](::Depsgraph *depsgraph) {
-                       BKE_nodetree_shading_params_eval(depsgraph, ntree_cow, ntree);
-                     });
+  add_operation_node(&ntree->id, NodeType::SHADING_PARAMETERS, OperationCode::MATERIAL_UPDATE);
   /* nodetree's nodes... */
   LISTBASE_FOREACH (bNode *, bnode, &ntree->nodes) {
     build_idproperties(bnode->prop);



More information about the Bf-blender-cvs mailing list