Cook policy
Every node carries a small badge that decides when it recomputes — let DNA work it out for you, force a node to run every frame, or freeze it in place.
What "cook" means
When a node cooks, it does its work and produces a fresh result: a shape is drawn, points are scattered, a frame is rendered. DNA is smart about this — a node only cooks when something it depends on actually changes. If nothing changed, it serves up the result it already has, which is what keeps editing fast even in a big graph.
Most of the time you never think about this. But sometimes you want to override the default — to keep a live input flowing, to pause an expensive node, or to hold a result steady. That is what the cook policy badge is for. It sits on the node's title bar; click it to cycle through the states.
The three states
The badge cycles A → S → F and back. Each click moves to the next.
A — Always Cook. The node recomputes every frame, whether or not its inputs changed. This is what you want for anything reading the outside world in real time — a pointer, a camera, a MIDI or audio input — so the latest values keep arriving. Live input nodes already behave this way by default, so you rarely set this by hand.
S — Selective. The normal, demand-driven behaviour: cook when inputs change, otherwise reuse the last result. A Selective node goes along with the transport, so it stops updating while playback is paused. Use this to make a live input stop flowing — for example, to pin a camera or pointer so it no longer reacts.
F — Freeze (snowflake). The node pins its last result and serves it no matter what — inputs, timeline, and upstream edits are all ignored. Use Freeze to pause an evolving simulation, capture a generative moment you like, or temporarily switch off an expensive node so the rest of the graph stays responsive.
Freeze is your friend when one heavy node is slowing everything down. Freeze it, keep working on the rest of the graph, then un-freeze when you are ready.
Auto — the default
A fresh node shows either A or S without you touching anything. That is Auto: DNA picks the sensible default for that node type — Always Cook for live inputs (pointer, camera, MIDI), Selective for everything else. Auto isn't a separate badge you select; it is just the resting state, and the badge shows you the letter it resolved to. Once you click the badge you take manual control, and your choice always wins.
An explicit Freeze or Selective still overrides a live input's default — so you can pin a camera, or make a pointer freeze-on-pause like any other node.
Always Cook vs. playing
Always Cook controls whether a node re-runs — not whether time moves forward inside it. A camera on Always Cook keeps re-reading the real camera, so its output genuinely changes. But a paused simulation on Always Cook re-runs while staying put on its current state: it doesn't step forward. Stepping a simulation is what play does, not what this badge does.
Reset Node State
Some nodes remember things between frames — simulations, feedback loops, and recorders all carry running state. Reset Node State (right-click a node, or press Shift+R) clears that memory so the node starts fresh from frame zero on the next cook. Reach for it when a sim has drifted somewhere you don't want, or you want to re-run a build-up from the start.
Live Mode
Live Mode is a global toggle (Cmd+Shift+L) that decides what happens to stored state when you edit the graph while it is running.
On (the default): edits hot-reload without wiping state. A running simulation or feedback loop keeps its current state across the change, so you can tweak parameters mid-performance without restarting the whole thing.
Off: every edit triggers a clean cook, resetting node state. Good when you want predictable, from-scratch results while building.
Keep Live Mode on while performing or dialling in a simulation. Turn it off when you want each edit to give you a clean, repeatable starting point.