Hello !
This is something I have in the back of my head since a long time. It’s all the tricks we can share to make node trees easier to read and to work with.
This has many benefits like :
-
You can work faster by being a little less lost in your own mess.
-
It’s easier to manage bigger projects .
-
It’s easier to go back to an old project and to understand the logic behind it…
-
It’s easier to collaborate with others .
-
You avoid being quoted in scripts from another dimension…
Therefore I’ll post some tricks from time to time. Basically the kind of stuff I wished to have known when I started, or advanced tricks I just find out !
Everyone is welcome to share anything they like as well ![]()
Sometime I took the liberty to pick a few “bad” examples from internet. I hope it’s fine and I apologize in advance if it’s not. Feel free to tell me and I’ll replace those image with personal examples.
Data-Flow and Grouping
This one is about the overall look of a tree. It’s basically making things readable from a bird-eye view. And it’s basically the end goal of having your tree organised.
The idea is to have a clear representation of how the data flows in the tree. Kind of what the green line represents in B.
And grouping is visually grouping elements so the tree looks simpler from a distance. Basically it’s mostly done by using frames, but putting stuff next to each-other is already enough to form something we interpret as a group.
So even if we have ~100 nodes in the tree. We can make it visually look like 15 elements (in yellow) by using frames. And the way they are arranged we might see ~6 main zones ( in purple) . So our brain is less overwhelmed by the complexity.
This is a good example of the things to avoid :
This is the same principle but with a different tree structure :
Obviously the same principle can be applied at a lower scale within the tree :
Less is more
I tend to reduce visual clutter by collapsing everything that isn’t meant to be tweaked… I also hide the options (menu Node / Show-Hide / Node Option) when changing them doesn’t make sense.
That way I can generally forget about everything that is collapsed as I know it’s meant to stay untouched and I can only tweak the exposed parts. Sometime I add a green color to a parameter that is meant to be tweaked.
And I add a label to the node using F2 when that make sense.
Using multiple input nodes
This one is an easy and well known one, but in any case :
Instead of having one group input node connected to everything else like so :
I tend to prefer having one per parameter scattered all across the tree.
I made a little script that assign automatically colors and collapse those like so :
And this is all the inputs within the tree :
Using node alignement tools
To easily align node so the tree looks cleaner I use the operator nw_align_nodes from node wrangler. It’s not fancy but it works for me. I added it to a custom shortcut.
Naming reroutes
I like using capture attribute and in big trees it’s super useful to name reroutes as their names propagates through the tree. It’s super useful !
It’s ok to stay a bit dirty !
Obviously we don’t want to spend too much time organizing the tree in most cases.
When the tree is simple it’s ok to keep it messy. Also in general I tend to clean things up as a second step once things works.
What I generally do also is to clean things in several passes. Once I open a group / tree I start inspecting it and do a bit of cleanup. Therefore the trees that I open a lot ( generally the most complicated ones) tend to end up being the most well organized.
On Using Frames…
When using frames I tend to prefer having small groups of nodes that describe one small step in the process , rather than a bunch of nodes that do one big step :
It’s very personal but I find it much harder to follow the logic when the frame is too big. I also avoid using too many colors, unless I have a very strict convention.
However sometimes I use colors temporarily :
Purple means something is marked as TODO or to improve,
Orange/Red is that a part of the tree is buggy or need to be fixed ASAP.
Sometimes it’s useful to annotate the tree using Frames as labels :
And I think that’s enough for a first round of info !
Obviously it’s basic stuff but I hope it’s useful already and feel free to post your own tricks or more advanced techniques !
Thanks for reading !














































