Nodes & Signals
Macros & Variables
Two ways to stop repeating yourself. A macro bundles a chunk of patch into one reusable node; a variable carries a value across the graph without a wire.
Macros: a patch inside a node
Select a group of nodes and Collapse to macro. They become a single node with input and output pins you define — and you can drop as many copies of it into the show as you like.
- Every instance shares one definition. Edit the macro once and every copy updates.
- Enter macro opens the inner graph in its own editor, with a violet frame so it is obvious where you are.
- Expand macro does the reverse — inlines a copy's nodes back onto the main graph when you want to break it apart.
Boundary pins
Inside a macro, Macro in and Macro out nodes are the edges of the box. Whatever you wire into a Macro out appears on that pin of every instance; whatever an instance receives shows up on the matching Macro in.
- Add and remove pins from the instance inspector — the boundary nodes follow. They cannot be deleted from inside the macro, which is what keeps every instance's pin list consistent.
- Each pin has a name and a type, so a macro can take a level and a and hand back a .
Live values while editing
The macro editor previews with the values a real instance is receiving, so the inner chain shows live numbers rather than zeros while you work on it.The macro editor is the full editor
Everything you expect from the main graph works inside a macro — this is the same editor, pointed at the macro's own nodes.
- Ctrl+F node finder, scoped to the macro's nodes.
- F to fit the view, or fit to the current selection.
- Snap-to-grid, using the same grid setting as the main graph.
- Live values on pins and wires, and the same wire animation.
Variables: a value without a wire
A variable is a named value any node can read or write. Use Set to write it and Get to read it — no wire between them.
- Ideal for values used all over the show — a master intensity, a global hue, a look index.
- Variables are typed, so a variable reads back as a float wherever you use it.
- Several setters can write the same variable; the most recently edited one wins, rather than whichever happened to evaluate first.
Wires or variables?
Wires make data flow visible, which is usually what you want. Reach for a variable when a wire would have to cross the whole patch, or when many unrelated places need the same number.Making a macro
- 1
Build it once
Wire up the behaviour for a single fixture or a single effect until it works. - 2
Select and collapse
Marquee-select the nodes and press Collapse to macro in the graph toolbar. - 3
Name the pins
In the instance inspector, name the inputs and outputs after what they mean —level,colour,rate. - 4
Reuse it
Add more instances from the add-node menu. Each gets its own inputs while sharing the logic.
Where to go next
- The Signal Patch — the graph these live on.
- Moving Heads & Movement FX — a natural place to reuse a macro per head.