← All ideas
  • Published 17 Jun 2022

Array Nodes

I encountered a huge problem when making a large building to generate a group of nodes.

  1. I made the underlying node group to achieve simple functions.
  2. I combined the group of nodes I had made into a building.
  3. I need to add some features, so I need to go to the bottom group to add new options, and then connect them one by one to the upper group.

Every time you add a new feature, it's like entering the Mandelbrot set and then coming out again, which is a waste of time.

So, I think this node is needed for a large scene.

An "array node" is to merge the input points of several nodes into a single pipeline, output to a certain location and then separate.

To make sure you can see the picture, I'll post the picture here.

Array nodes.png arrnodes.jpg

88.9%

Development Status: Open

Upvote 8 Downvote 1
sensarice1
17 Jun 2022

9 Comments

luigitko

this would be such a useful node. basically creates a custom socket type that represents an arbitrary number of other sockets. For added versatility (and more accuracy to array data representation in programming languages), you can change the socket types in the join array node to "join" types that allow for multiple inputs. Then you can add an index input for each socket type on the separate array node, to get a specific value from a socket. To add on to what Lumpengnom said, this would also make node groups function as "structs," which are at the top of the data type hierarchy and therefore can group any variable, including arrays.

ok-what

If I understand this correctly, it seems like a way of grouping sockets. I like the idea. What I don't understand is, why does "Join Array" take in the array as an input? I'd imagine it would only take in the values it is grouping.

sensarice1 Author

Add new data to an existing array

Lumpengnom

Isn't this what they call a "struct" in C++? Sounds very useful.

sensarice1 Author

This function is similar in C4D, which they call "operator". I think the "operator" of C4D is not as concise as the node I designed, because the "operator" is easy to produce more wrong connections.

sensarice1 Author

There are several different types of variables in an array.

Different variables enter an array, and when it comes to separation, you may not know what one of the variables does.

So, you should also name the variable

sensarice1 Author

I hope that opponents can put forward their own opinions or alternative methods. For example, the function of this "array node" can be done with "storing named attributes" and a single geometric data, but that requires more nodes and memory, and it is not as fast and convenient as this design. If I use BPY to make global variables, it is not a geometric node asset, and it is difficult to store project files safely.

sensarice1 Author

To make sure you can see the picture, I'll post the picture here. bilibili.com/read/cv17155093

zuorion

Use "![](link to image)" to add inline image