Channels#
Every sound Visual Script plays belongs to one of five channels. Each channel has its own volume and groups sounds that should be controlled together. This lets a player lower music without affecting dialogue and lets an Event fade a category without tracking individual sounds.
The five channels#
| Channel | Carries |
|---|---|
| Sound Effect | Short sounds caused by something in the world — footsteps, impacts, a door, a coin. |
| Ambient | Long loops that establish a place — wind, rain, a crowd, a generator. |
| Music | The score. |
| Voice | Dialogue, barks, grunts, the narrator. |
| UI | Button clicks, menu confirmations, notification chimes. |
Choose a channel by what the player should control separately, not by the sound's technical source. A radio broadcast is Voice when it follows the dialogue slider and Music when it follows the score.
An Instruction's channel remains editable, but decide the categories before building the options menu. Each category that players expect to control needs its own slider.
Master#
Master is a volume multiplier applied to all five channels. Use it for an overall volume slider in your options menu.
You can select Master in Set Audio Channel Volume. It doesn't appear in playback or stop Instructions because sounds belong to the five channels, not to Master.
How loud a sound ends up#
Before any fade is applied, a sound's volume is the product of three values:
volume * channel volume * master volume
Volumes multiply together
A footstep authored at a Volume of 0.8, with Sound Effect at 0.5 and Master at 0.6, plays at 0.24.
Volume multipliers are limited to 0–1
Each volume is clamped to 0–1, so these multipliers can't amplify the clip. If a sound is too quiet at full volume, adjust the clip or its Audio Mixer Group.
Changing a volume#
The Set Audio Channel Volume Instruction moves one volume to a new value.
| Field | Controls |
|---|---|
| Channel | Which volume to change — one of the five channels, or Master. |
| Volume | The new value, 0 to 1. |
| Transition | Duration, ease mode, time mode, and whether to await the tween. |
Use a transition when a volume change should sound gradual. Dropping Ambient and Sound Effect to 0.2 over half a second makes the world recede, while a duration of 0 cuts immediately.
Set the transition's Time Mode to Real Time when the game may be paused. A Game Time fade cannot finish while the time scale is 0.
The volume Signals#
You can read and write each volume through a Number Signal under Audio → Volume:
| Signal | Holds |
|---|---|
| Master Volume | The multiplier applied to all five channels. |
| Sound Effect Volume | The Sound Effect channel. |
| Ambient Volume | The Ambient channel. |
| Music Volume | The Music channel. |
| Voice Volume | The Voice channel. |
| UI Volume | The UI channel. |
Volume Signals also report changes. Use On Number Change to keep a percentage label beside a slider current without polling. See Bindings.
The slider and label follow channel volume
- An On Start Event sets the slider's Slider Value to Music Volume, so it opens at the player's current volume.
- An On Slider Change Event sets Music Volume to the slider's Slider Value.
- A label with an On Number Change Trigger on Music Volume writes the percentage.
Without the first step, the audio uses the saved volume while the slider handle shows its authored value.
Channel volumes persist across profiles#
Saving the game saves the volumes as shared data, and loading restores them. They're identical across every profile — a player who changes the music volume in one save has changed it in all of them.
The volumes also survive Unload Profile, so starting a new game preserves the player's audio settings.
Channel volumes register automatically
Channel volumes register with the save system when audio is first used. At that point, they restore saved values before the first sound plays, without a Remember component, Global Variable, or Memory.
Audio Mixer Groups#
You can route each channel to an Audio Mixer Group in the Settings window's Audio section. It provides one slot per channel.
Channel volume is applied to the audio source itself, leaving the mixer free for effects and routing. Examples include reverb on Ambient, a low-pass over everything but UI while paused, and ducking Music under Voice.
When all five fields are empty, sounds use Unity's default group and channel volumes still apply. Assign groups only when the project needs mixer effects or routing.
The slots are locked during Play mode
The five fields are disabled during Play mode. The Audio Manager assigns a sound's mixer group when playback starts, so configure the groups before entering Play mode.
Hand-placed Audio Sources#
A channel's volume applies only to sounds started by the Audio Manager. A hand-placed Audio Source doesn't use Visual Script channels, even if it shares their mixer group: channel volume is applied to the source itself.
Hand-placed sources commonly provide looping world audio, such as a campfire, fountain, or machine.
To connect a hand-placed source to a channel, install the free Audio Source Volume package. Add it next to an Audio Source with Add Component → Visual Script → Audio → Audio Source Volume, then pick a channel. While enabled, the component tracks that channel and Master.
The component sets the level immediately and after every change, so a source that plays on awake starts at the correct volume.
The component owns the Volume field
Audio Source Volume writes the Audio Source's Volume every time a channel or Master changes, so the next channel or Master change overwrites values set by other components.
Adjust an individual source's level through its clip or mixer group. Use Min Distance when you need to change how its volume falls off with distance.
Where to go next#
- Playing a sound — control a sound's volume, pitch, timing, and position.
- Stopping a sound — stop one sound or an entire channel.
- Bindings — connect a slider to a volume Signal.
- Profiles — understand why channel volumes use shared data.