🎵

Audio Manager

Gamepangin has provided a system for your in-game audio needs easily. The following are the features provided:
  • Play / Stop / Pause / Resume
  • Play clip with full settings : loop, volume, pitch, pan, spatial blend, bypasses, priority, reverb, doppler level, spread, rolloff mode, distance
  • 2D & 3D spatial support
  • Provided Audio Mixer and Track (Master, Sfx, Music, UI)
  • Stop / Pause / Resume all tracks
  • Stop / Pause / Resume all audio
  • Mute / Set volume each tracks
  • Integrated with Object Pooling for maximum performance
  • Integrated with Save Load for persistence settings
  • and more...

Audio Clip Settings

Before you can play audio, you must create an AudioClipSettings scriptable object by right clicking on the Project Window > Create > Gamepangin > Audio > Clip
AudioClipSettings Inspector

Audio Manager Singleton

Before calling the API, make sure you have Audio Manager in your scene. To make it you can use the Gamepangin menu > Audio > Audio Manager

Public API

Play Sound

// Play sound via unique id
AudioManager.Instance.PlaySound(string id)
// Play sound via AudioClipSettings reference
AudioManager.Instance.PlaySound(AudioClipSettings clip)

Pause Sound

AudioManager.Instance.PauseSound(string id)

Resume Sound

AudioManager.Instance.ResumeSound(string id)

Stop Sound

AudioManager.Instance.StopSound(string id)

Mute Track

AudioManager.Instance.MuteTrack(AudioManagerTracks track)

Unmute Track

AudioManager.Instance.UnmuteTrack(AudioManagerTracks track)

Pause Track

AudioManager.Instance.PauseTrack(AudioManagerTracks track)

Play Track

AudioManager.Instance.PlayTrack(AudioManagerTracks track)

Stop Track

AudioManager.Instance.StopTrack(AudioManagerTracks track)

Set Track Volume

AudioManager.Instance.SetTrackVolume(AudioManagerTracks track, float volume)

Pause All Sounds

AudioManager.Instance.PauseAllSounds()

Play All Sounds

AudioManager.Instance.PlayAllSounds()

Stop All Sounds

AudioManager.Instance.StopAllSounds()