Patch Editor
Build logic by connecting nodes. The graph becomes a real script and runs exactly as fast as one — you can read the generated code at any time.
What the nodes actually do is in Patches; this page is about using the editor.
What you are editing
| You opened | You are editing |
|---|---|
| the rail button | the scene's graph |
a .patch file in your assets | a reusable patch, saved back with Save |
Either way your edits go through the normal editing path, so undo and live collaboration work without anything extra.
The toolbar
| Button | Does |
|---|---|
| + Add node | the node menu, by category |
| Load example | ready-made graphs to start from or learn from |
| Node from object | a reference node for whatever is selected in the scene |
| Code | the generated script, read-only, with a copy button |
| Save patch | save the graph as a reusable file |
It shows the exact script your graph became. If something is not behaving, reading that is usually quicker than tracing wires — and it is how you confirm the graph does what you think.
Working with the graph
| Action | How |
|---|---|
| Add a node | right-click empty canvas (it appears under the cursor), or + Add node |
| Node menu | right-click a node — copy, cut, duplicate, paste, delete |
| Select | click; drag a box; Shift to add to the selection |
| Select all | Ctrl + A |
| Delete | Delete or Backspace |
| Copy / cut / paste | Ctrl + C / X / V |
| Duplicate | Ctrl + D |
| Zoom | scroll |
| Pan | middle mouse, or drag the canvas |
| Collapse a node | the chevron in its header hides unused ports |
Wiring
Drag from a port and compatible ports light up while incompatible ones dim.
You get a menu of nodes that can accept it, and picking one creates the node already connected. It is much faster than adding a node and then finding its port.
Grab an existing wire near its end to re-route or remove it; grab an occupied input to detach
it. Escape or right-click cancels a drag in progress.
Port types
Each type has its own colour:
| Type | Colour | Carries |
|---|---|---|
pulse | light blue | the flow of execution |
number | blue | a number |
boolean | orange | true or false |
string | green | text |
vector | purple | an x, y, z triple |
color | pink | a colour |
object | dark blue | a reference to an object |
pulse, object and vector only connect to their own type. The scalars — number, boolean,
string, colour — convert between each other freely.
Vector ports unfold with a chevron into separate x, y and z sockets: on an input that
assembles a vector from parts, on an output it takes one apart.
An object port with no wire gives you a dropdown of the scene's objects. Leave it empty
and it means the object the graph is attached to.
Constant nodes and the id fields on variable, message and global nodes are typed directly into the node header.
Panel size
The editor opens docked at the bottom. The resize menu in its header switches it to expanded over the whole viewport, back to docked, or to a floating window. Drag its edges to resize.
Next: UI Editor