Skip to content
DEV505 / Sound ManagerDOCUMENTATION

DEV505 / START HERE

Choosing the next command

Route commands, order immediate actions, and count bounded work.

Execution connections carry commands, not audio. Several commands can start sounds in the same update. A Sequence orders those commands; it does not automatically wait between the sounds.

See it in a complete example: Workshop tool switching and overlapping taps.

For the full list, open the node catalogue.

Work enters Sequence. Its outputs run in order: stop the old tool loops, then use Tool to start the selected branch. Sequence does not wait for a sound to finish; it orders these commands.
Workshop in Unity: stop first, then choose the tool. The graph nodes and their connections are visible.

Work enters Sequence. Its outputs run in order: stop the old tool loops, then use Tool to start the selected branch. Sequence does not wait for a sound to finish; it orders these commands.

Sends commands to Out 0, Out 1, and so on immediately in order. It does not wait for a clip, fade, or timer to finish. Later outputs do not run after the play becomes terminal.

Logic · orange headerColor key

Unity node · Sequence.
Sequence node in the Unity graph editor, showing its controls and ports

Unity node · Sequence.

Ports on Sequence
DirectionPortValue
InputInExecution
OutputOut 0 … Out (Count − 1)Execution

Set it up. Outputs defaults to 2; allowed count is 0–255. To play sounds one after another, connect Play Audio Finished to the next Play instead.

Try it. Workshop can stop a previous tool and start the chosen tool in the same command. The stopping tool may still be fading.

Reads Condition when In arrives, then sends one command through True or False. It does not keep watching the value.

Logic · orange headerColor key

Unity node · Branch.
Branch node in the Unity graph editor, showing its controls and ports

Unity node · Branch.

Ports on Branch
DirectionPortValue
InputInExecution
InputConditionBool
OutputTrueExecution
OutputFalseExecution

Set it up. An unconnected Condition defaults to false. Use Track Condition for changes over time.

Try it. Launch can take an alternate path depending on whether clearance is granted.

Routes a command to one numbered output. Index is clamped to 0 through Count − 1. With Count 0, nothing runs.

Logic · orange headerColor key

Unity node · Branch By Index.
Branch By Index node in the Unity graph editor, showing its controls and ports

Unity node · Branch By Index.

Ports on Branch By Index
DirectionPortValue
InputInExecution
InputIndexInt
OutputOut 0 … Out (Count − 1)Execution

Set it up. Count defaults to 2 and supports 0–255. Numbering starts at 0.

Try it. Workshop chooses the Hammer, Handsaw, or Drill command path from the Tool parameter.

Chooses one numbered command output at random each time In arrives. It has no avoid-repetition option.

Random · pink headerColor key

Unity node · Random Branch.
Random Branch node in the Unity graph editor, showing its controls and ports

Unity node · Random Branch.

Ports on Random Branch
DirectionPortValue
InputInExecution
OutputOut 0 … Out (Count − 1)Execution

Set it up. Count defaults to 2 and supports 0–255. Count 0 produces no output.

Try it. Choose between two variations of an ambient action. Use Random Clip if only the recording changes.

Runs Loop Body once for each whole number from First through Last, including both ends, then sends Completed. Index tells the connected nodes which number it is on. All iterations run in the same update; they are not spaced out over time.

Logic · orange headerColor key

Unity node · For Loop.
For Loop node in the Unity graph editor, showing its controls and ports

Unity node · For Loop.

Ports on For Loop
DirectionPortValue
InputInExecution
InputFirstInt
InputLastInt
OutputLoop BodyExecution
OutputCompletedExecution
OutputIndexInt

Set it up. First and Last default to 0. Last below First runs no body but still completes. Runtime limits each invocation to 1024 iterations. Avoid using it to start hundreds of voices.

Try it. Use Repeat for paced hammer taps; use For Loop only for a small bounded immediate action.

In increases Count, fires Out, then fires Reached only when Count equals the Limit read for this command. Reset sets Count to 0 and emits nothing.

Logic · orange headerColor key

Unity node · Counter.
Counter node in the Unity graph editor, showing its controls and ports

Unity node · Counter.

Ports on Counter
DirectionPortValue
InputInExecution
InputResetExecution
InputLimitInt
OutputOutExecution
OutputReachedExecution
OutputCountInt

Set it up. Limit defaults to 0; choose a positive count for ordinary use. Reached does not stop a Repeat automatically. Downstream Out commands can alter the count before the equality check.

Try it. Count three Launch countdown pulses, then stop Repeat and advance to ignition.

Immediately forwards In to Out without changing it. It adds no delay and stores no work.

Logic · orange headerColor key

Unity node · Passthrough.
Passthrough node in the Unity graph editor, showing its controls and ports

Unity node · Passthrough.

Ports on Passthrough
DirectionPortValue
InputInExecution
OutputOutExecution

Set it up. Use to organize a flow path. It cannot make a circular execution connection safe.

Try it. Keep a long command route readable between groups.

Continue with graph checks and debugging if a connection or event is refused.