[Bf-blender-cvs] [e36fe7b78f4] temp-attribute-processor: initial sockets on attribute processor

Jacques Lucke noreply at git.blender.org
Thu May 27 12:51:41 CEST 2021


Commit: e36fe7b78f4c9cb578ecb48602a03ec1baa91eb8
Author: Jacques Lucke
Date:   Mon May 24 16:13:50 2021 +0200
Branches: temp-attribute-processor
https://developer.blender.org/rBe36fe7b78f4c9cb578ecb48602a03ec1baa91eb8

initial sockets on attribute processor

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

M	source/blender/nodes/geometry/nodes/node_geo_attribute_processor.cc

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

diff --git a/source/blender/nodes/geometry/nodes/node_geo_attribute_processor.cc b/source/blender/nodes/geometry/nodes/node_geo_attribute_processor.cc
index 5422552fa7a..4757b021be5 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_attribute_processor.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_attribute_processor.cc
@@ -44,9 +44,20 @@ static void geo_node_attribute_processor_init(bNodeTree *UNUSED(ntree), bNode *n
 
 namespace blender::nodes {
 
-static void geo_node_attribute_processor_group_update(bNodeTree *UNUSED(ntree),
-                                                      bNode *UNUSED(node))
+static void geo_node_attribute_processor_group_update(bNodeTree *ntree, bNode *node)
 {
+  if (node->id == nullptr) {
+    nodeRemoveAllSockets(ntree, node);
+    return;
+  }
+  if ((ID_IS_LINKED(node->id) && (node->id->tag & LIB_TAG_MISSING))) {
+    /* Missing datablock, leave sockets unchanged so that when it comes back
+     * the links remain valid. */
+    return;
+  }
+  bNodeTree *ngroup = (bNodeTree *)node->id;
+  nodeAddSocket(ntree, node, SOCK_IN, "NodeSocketFloat", "mysock", "Sock");
+  nodeAddSocket(ntree, node, SOCK_IN, "NodeSocketGeometry", "laal", "Geo");
 }
 
 static void geo_node_attribute_processor_exec(GeoNodeExecParams params)



More information about the Bf-blender-cvs mailing list