Audio Manager

How to set up the GS_Play Audio Manager — engine startup, volume channels, event libraries, the listener, and running it without a Game Manager.

Base — ships in GS_Audio.

The Audio Manager is the one component the audio system needs. It starts the engine, holds your volume channels, loads your event libraries, and carries the listener that every positioned sound is measured against.

It is a GS manager, so it plugs into the Game Manager’s startup like the rest — or runs on its own if your project does not have one.

For component properties and the full API, see the Framework API reference.

Audio Manager component in the O3DE Inspector

 

Contents


Setting It Up

  1. Create an entity and add the GS_AudioManagerComponent.
  2. Configure your volume channels — a named list such as Music, SFX, Voice, Ambience.
  3. Assign your event libraries.
  4. Turn the entity into a prefab, set the wrapper entity to Editor Only, and save.
  5. Add the prefab to the Game Manager’s Startup Managers list.

This is the same prefab pattern every GS manager uses — see The Basics: GS_Managers if you have not set one up before.


Using Audio Without a Game Manager

If audio is the only GS feature your project uses, you do not need the manager stack at all.

Add the Audio Manager to your level, tick Headless on it, and press play. It starts itself, and everything on these pages works exactly as documented. No Game Manager, no startup sequence, no other managers.

This is the intended path for dropping GS_Audio into a project that is not otherwise built on GS_Play.


What It Manages

ResponsibilityWhat it does
Engine lifecycleStarts and shuts down the audio engine.
Volume channelsHolds the named channel list and their levels.
Event librariesLoads your .aev libraries so events can be fired by name.
The listenerCarries the point the player hears from.
Spatial audio setupProject-wide spatialization mode and distance defaults.

Setting the Listener

There is no listener component. The manager holds the listener and you point it at an entity.

For first person, point it at your camera or player and you are finished. For third person, split it — distance measured from your character, direction from your camera. See Spatial Audio for why that combination is the one you want.

If you never set a listener, the manager uses its own entity and warns. Audio will work, but it will be positioned from wherever your manager prefab happens to be.


Quick Reference

NeedBusMethod
Set master volumeAudioManagerRequestBusChangeMasterVolume
Set a channel’s volumeAudioManagerRequestBusChangeChannelVolume
List channelsAudioManagerRequestBusGetMixingChannelNames
Set the listenerAudioManagerRequestBusSetListener
Split the listenerAudioManagerRequestBusSetListenerSpatialTarget / SetListenerOrientationTarget
Load an event libraryAudioManagerRequestBusAddAudioLibrary

Glossary

TermMeaning
Volume ChannelA named group of sound types with its own level
Event LibraryA .aev asset holding named audio events
ListenerThe point in the world the player hears from
HeadlessA manager that starts itself, with no Game Manager in the project

See Also

For the full API:

For related systems:


Get GS_Audio

GS_Audio — Explore this gem on the product page and add it to your project.