Portal Links Exploration

I rather like this mockup. 1 thing I’d like to see on top of this is noodles being drawn between the portal ‘labels’ on mouse-hover, to ease finding the corresponding portal in a big tree. Or maybe even a small button/toggle which you can use to (temporarily) turn drawing of noodles on.

I think it could be as simple as making double clicking any of the output portal nodes automatically select the corresponding portal input and pan the view to it (as there would be only one input allowed), and double clicking the input would select and pan to the output. If there were multiple output, double clicking the input would select all the outputs, and use “Frame selected” operation to show them all in one view.

Alternatively, if double click would cause some conflict, the portal nodes could have just a simple icon button for this task, something like small magnifier glass icon button.

1 Like

So just by passing a name? it could work, I only worry about it being noticeable, otherwise I think it can make sharing and reading/understanding node trees more difficult instead.

I made this new mockup today… portal link by magnet looking portal /thin lightning bolt as node wire (the lightning bolt wire you could turn on or off) magnets could also be coloured perhaps. Magnets might be a good design shape, since people know that a magnet attracts something else.
basic
with colours
magnets with colours

with bolt
With thin electric bolt node wires.

Most simple, straightforward, and best solution imo. Also pretty similar to how “Stamps” are used inside Nuke in several vfx companies.

8 Likes

It would be great if it had a different unique visual shape, cause atm they look like collapsed nodes

3 Likes

That’s the point. Reusing existing visual language instead of introducing new one.

That being said, I think collapsed nodes should go away. They often look odd and ugly, especially those with many inputs. Ideally, the arrow button, which currently collapses the node would be changed to perform hiding unused node sockets, and the hide unused node sockets feature would get option to make nodes even more compact, to approach the level of the current collapsed node compactness.

The main reason people collapse node more often than they hide unused node sockets is that the hide unused node sockets feature is hidden under hardly discoverable keyboard shortcut while the collapse node is available as an arrow icon button right on the nodes.

Right now, the button turns this:


Into this:

Which isn’t that great.

Ideally, the arrow button would do the “hide unused node sockets” operation - this:

And the “hide unused node sockets” operator would get an “extra compact” option, which would do this:

EDIT:

Here’s another example of current node collapsing vs hide unused node sockets with proposed extra compact option:

Uncollapsed:

Collapsed:

Hide unused node sockets (currently available in vanilla blender):

Hide unused node sockets with proposed extra compact option:

So the little arrow on each node would be changed to perform “hide unused node sockets” operation with “extra compact” proposed option. This would remove the ugly collapsed nodes, and leave the visual language of round nodes for portal nodes.

Notice how the extra compacted socket-hidden nodes don’t take much more space than the collapsed nodes, but give you much more information at glance (names of the sockets).

12 Likes

Totally agree that! The gigantic principled BSDF node looks so ugly and useless when being “Collapsed”.

Hiding is very useful for math nodes and stuff like that. Basically small nodes whose inputs are clear.

3 Likes

I think you mean collapsing?

I like the collapsing feature. But imo collapsing should by default also always hide the unused sockets.

Ah, yes, sorry, of course. Collapsing is very usful for small nodes like math nodes and should not go away.

I don’t see much difference between this:
image
and this:
image

Collapsed node gives you information that it has two inputs, hidden compact node gives you an information of the input names. It’s a tradeoff, one is not really any better than the other, because in both cases, you can not see the value of the other input. Ultimately the compact hidden one wins, because it looks less ugly and the node links remain more straight.

1 Like

I disagree. The collapsed one is better because it indicates that it has two inputs, is smaller and with its distinct shape tells the user that there is hidden stuff.
Knowing the inputs names is not useful when it comes to math nodes.

3 Likes

Geonodes have introduced new data types, multi-input sockets, there are now string fields in some nodes, etc… I believe this complexity calls for a reimagining of the node display options. Old ones just don’t fit the bill anymore.

I personally would strive for consistency in the nodes’ appearance, and try to avoid giving them a different shape altogether depending on the state they’re in. I don’t like the fact that collapsed nodes are roundish, they stand out too much. On the other hand there definitely needs to be some hint that not all inputs are shown, but I don’t think that’s such a big challenge.

3 Likes

Reimagining is fine with me. I don’t care too much what exactly the hint is. Using the shape for it like it is now is fine with me. Something else would be fine, too.
And being able to access the inputs when collapsed/hidden is something I think should be kept, at least for math nodes and similar nodes.

I agree, elegant. This is the most logical solution I can think of. How you make and call these would be now the next question.

I second named ports too.
The eye does need a hint, so one could read the node tree.
Anonymous ports would require extra functionality (like ‘reveal all ports’ or 'reveal ports of a node) which puts-on-demand some additional pasta on the screen to show how ports are connected.
Nice, if it fits into one view. Otherwise, Brrrrrrh.

Serpens (a Visual Scripting addon) has portals like this.

1 Like

In and out, the same node?
Switching from In to Out would disvalidate the connections around the node instantly.

I I do not understand the advantage of switching an output node to an input node.
But a quick way to create an output from an input could be interesting.

the networks you can make with this is incredible well thought out idea