Move Nodes

Move: Bulldozer


Hotkeys

Ctrl+Meta+Alt+Right Arrow, Ctrl+Meta+Alt+Left Arrow, Ctrl+Meta+Alt+Up Arrow, Ctrl+Meta+Alt+Down Arrow

About

This a physics based smart arrows script that can move selected nodes and push neighbouring unselected nodes out of the way. It can also expand or contract the backdrop the selected nodes are on to make more space for them

How It Works

Move Vertically: Use either the Up or Down Arrows to move nodes on the vertical axis (y position)

Move Horizontally: Use either the Left or Right Arrows to move nodes on the horizontal axis (x position)

Open Settings: Press Ctrl+Meta+Alt+Home to make changes to the Bulldozer physics engine (More on Bulldozer Physics below)

Demo Video

Move: Fast


Hotkeys

Ctrl+Right Arrow, Ctrl+Left Arrow, Ctrl+Up Arrow, Ctrl+Down Arrow

About

This is a fast, not physics based smart arrows script that can move selected nodes around

How It Works

Move Vertically: Use either the Up or Down Arrows to move nodes on the vertical axis (y position)

Move Horizontally: Use either the Left or Right Arrows to move nodes on the horizontal axis (x position)

Demo Video

Bulldozer Physics


About

In BuddySystem 1.05 a new 2D sweep based continuous collision detection (CCD) physic engine was added called “Bulldozer,” which the scale and move scripts can now use to push neighbouring nodes out of the way, expand or contract backdrops based on padding. For scaling this is enabled by default because I ran out of hotkeys to bind a fast vs physics version to, like with the Move hotkeys. I think in most cases this has been fine, but if you find it slow to scale, or you don’t want the extra physics logic, you can disable the physics engine in the Settings menu, and it will go back to the older faster model

How It Works (Use the Open Settings Hotkeys mentioned above)

Enable Debug Mode: This will turn on debug mode for the physic engine. It draws the sweep area, primary/secondary movers with backdrops, and prints info for debugging

Purple BBox Bystanders: Draws additional backdrops around nodes that are seen by the simulation but are not part of it yet. This is slow

Verbose Debug: Prints a lot of extra debug info. This is very slow

Clean Up Debug Nodes: If the automatic clean up fails for some reason, you can use this to remove any lingering debug backdrops

Use Zoom Level For Size: When enabled, movement and scaling size dynamically adjusts based on the Node Graph zoom level

Zoom Multiplier: Base multiplier for the move/scale step distance

Max Iterations: Maximum number of collision passes allowed. Higher values resolve complex collisions better, but are slower

Max Step Size: Maximum distance nodes can move in a single sub step. When set to 15, if you move a node 150 pixels, the engine runs 10 sub steps

Treat Primary Movers As One: Groups selected nodes into one fast bounding box for the simulation. The same thing as if they were on a backdrop

Node Padding: Padding added around standard nodes to push bystanders away

Backdrop Padding: Padding added around backdrop nodes to push bystanders away

Group Loose Nodes: If nodes are within this distance, group them together to speed up physics calculations

Group Loose Backdrops: If backdrops are within this distance, group them together to speed up physics calculations

Side Padding: Side padding added to the sweep area

Rear Padding: Rear padding added to the sweep area

Forward Multiplier: The amount to expand the sweep area forward based on forward movement

Forward Base Pad: Base padding added to the front of the sweep area

Forward Min Pad: Minimum length for the forward sweep area. If this is set to 0 the Forward Multiplier determines the sweep area. If it’s not 0 the Forward Multiplier does nothing, unless it would have exceeded the min pad value anyways. The Forward Multiplier was the original sweep area logic, but in testing I found using a fixed min pad more predictable (for now)

Center Scale Min Pad: Minimum length for the center scale sweep area. Works the same as Forward Min Pad, but that value was too large when used in all directions, so I split it for optimization

Demo Video

Version History

More!


Download the full BuddySystem, including all the scripts & tools here!

Buy Me A Coffee?

The BuddySystem is free!… but takes a lot of work… and work needs coffee

3% Cover the Fee