[Bf-blender-cvs] [b062b922f96] geometry-nodes: Geometry Nodes: Resolve some missing 3D viewport updates

Hans Goudey noreply at git.blender.org
Fri Oct 23 05:59:47 CEST 2020


Commit: b062b922f9655e7efd2b6a8949c4d47f7a39efec
Author: Hans Goudey
Date:   Thu Oct 22 22:59:40 2020 -0500
Branches: geometry-nodes
https://developer.blender.org/rBb062b922f9655e7efd2b6a8949c4d47f7a39efec

Geometry Nodes: Resolve some missing 3D viewport updates

These two functions "snode_notify" and "ED_node_tag_update_id" appear to
be mostly duplicates. However, there is already a case for each type of
built-in node tree, so it makes sense to add one for the geometry node
tree as well. This doesn't solve the update issues for changing number
in buttons, that must be handled somewhere else.

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

M	source/blender/editors/space_node/node_draw.c
M	source/blender/editors/space_node/node_edit.c

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

diff --git a/source/blender/editors/space_node/node_draw.c b/source/blender/editors/space_node/node_draw.c
index bafd1b9a388..2335bde33a7 100644
--- a/source/blender/editors/space_node/node_draw.c
+++ b/source/blender/editors/space_node/node_draw.c
@@ -138,6 +138,9 @@ void ED_node_tag_update_id(ID *id)
     DEG_id_tag_update(id, 0);
     WM_main_add_notifier(NC_TEXTURE | ND_NODES, id);
   }
+  else if (ntree->type == NTREE_GEOMETRY) {
+    WM_main_add_notifier(NC_OBJECT | ND_MODIFIER, id);
+  }
   else if (id == &ntree->id) {
     /* node groups */
     DEG_id_tag_update(id, 0);
diff --git a/source/blender/editors/space_node/node_edit.c b/source/blender/editors/space_node/node_edit.c
index 49a598090f4..76fde9a36e2 100644
--- a/source/blender/editors/space_node/node_edit.c
+++ b/source/blender/editors/space_node/node_edit.c
@@ -417,6 +417,9 @@ void snode_notify(bContext *C, SpaceNode *snode)
   else if (ED_node_is_texture(snode)) {
     WM_event_add_notifier(C, NC_TEXTURE | ND_NODES, id);
   }
+  else if (ED_node_is_geometry(snode)) {
+    WM_main_add_notifier(NC_OBJECT | ND_MODIFIER, id);
+  }
 }
 
 void ED_node_set_tree_type(SpaceNode *snode, bNodeTreeType *typeinfo)



More information about the Bf-blender-cvs mailing list