Skip to content
DEV505 / Sound ManagerDOCUMENTATION

DEV505 / START HERE

Starting and ending a play

Know when the graph starts, receives a command, stops, or ends immediately.

An event instance is one running copy of your graph. Entry nodes receive commands; ending nodes decide how that copy retires. A voice is one recording played by one Play Audio node. Ending a voice and ending the whole event are different things.

See it in a complete example: Campfire start, loop, and stop.

For the full list, open the node catalogue.

Runs when an admitted play actually starts. Queued plays reach this point on a later service update. Multiple On Start nodes run in stored node order.

Events · blue headerColor key

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

Unity node · On Start.

Ports on On Start
DirectionPortValue
OutputOutExecution

Set it up. Every valid event needs an On Start node, even a signal-driven event. Use Sequence when output order matters.

Try it. Start the Campfire ignition, then let its Finished output start the fire loop.

Runs when the play processes a matching queued signal. Sending the signal does not create another event instance. Matching entries run in node order.

Events · blue headerColor key

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

Unity node · On Signal.

Ports on On Signal
DirectionPortValue
OutputOutExecution

Set it up. Set Signal to the command name (new nodes start with Accent). Send to a live, non-stopping handle; Keep Alive is useful for a graph that waits silently for commands.

Try it. Workshop uses a HammerTap signal to add a tap while its current tool is running.

Runs during a normal stop request, before existing voices receive their fallback fade. It can stop loops and immediately start a release sound.

Events · blue headerColor key

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

Unity node · On Stop.

Ports on On Stop
DirectionPortValue
OutputOutExecution

Set it up. Timers and watches are cleared after the On Stop path runs. Start a release voice directly; do not put a Delay before it. End Event, forced replacement, and disposal bypass this entry.

Try it. Campfire stops its loop and plays the extinguish clip.

Immediately ends this play, cuts its voices, and clears pending work. It does not run On Stop. The terminal notification is Cancelled, including when this node follows Finished.

Logic · orange headerColor key

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

Unity node · End Event.

Ports on End Event
DirectionPortValue
InputInExecution

Set it up. Use only when an immediate end is intended. A graph that becomes idle without Keep Alive can retire naturally with Finished instead.

Try it. Footstep uses End Event after its selected step finishes; gameplay should not wait for a Finished notification from that event.

Requests a normal stop of this play and runs On Stop. Existing voices not explicitly stopped use Fade, in seconds, clamped to at least zero.

Logic · orange headerColor key

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

Unity node · Stop Instance.

Ports on Stop Instance
DirectionPortValue
InputInExecution
InputFadeFloat

Set it up. Connect In when the graph should end gracefully. Fade defaults to 0. Release voices may keep playing; this is not an immediate hard cut.

Try it. A repeating sequence can stop itself when its Counter reaches a limit.

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