I’ve been experimenting with improvements to joining nodes into frames when transforming them with the aim to indicate the behavior better and maybe make it a bit nicer to use.
NOTE: The proposal in this opening post is out of date at this point.
The current state of the patch is described here:
Testing Wanted for Joining Nodes Into Frames - #67 by lone_noelA previous experiment removing parenting completely is described here:
Testing Wanted for Joining Nodes Into Frames - #48 by lone_noelThe patch itself can be found here:
#105457 - Node Editor: Improve node joining during transform
Proposal
Improve the frame joining feedback during transform by:
- Choosing the frame based on the position of the transformed nodes rather than the cursor.
- Highlighting the frame to be joined during transform similar to how it’s done for node links.
Additionally change the way the Alt
key during transform works:
- Press
Alt
to enable link insertion/frame joining. (Currently it disables it by default.) - Enabling frame joining when pressing
Alt
also detaches the selected nodes from their parents.
Unparenting nodes before frame joining is enabled eliminates edge cases that might make the frame joining not work.
Now all transformed nodes can always be joined into the indicated frame. So it also allows to easily drag’n’drop nodes out of or between frames.
Having the attachment be disabled by default has some advantages on its own (see: Proposal: Addressing Geometry Nodes UX Issues) but in context of this proposal it also reduces the drawback that the preselection highlight adds more visual noise by only activating it when you explicitly want to attach nodes.
For some more details about the motivation or a possible alternative approach you can check the description of the PR.
This is what it looks like with this proposal, but I encourage you to try it to get a feel for it:
Your Feedback
Feel free to comment on everything you notice while testing, but here are some things I’m curious about:
- How do you feel about the hitbox area for the joining?
Does it feel natural or at least predictable? Are there cases where you find it hard to pick the frame you want to attach to? - Right now the frames keep their size when unparenting during transform. I found this a bit nicer than having the frames shrink the moment you press
Alt
. Or do you think having the frames update their size immediately would be better since it makes it more obviour what is happening? - I think toggling link insertion and frame joining both with
Alt
is a good way to keep things compact. Does theAlt
shortcut feel overloaded? AlternativelyShift
could work nicely for frame joining and would be consistent with parenting in the outliner.