- Notifications
You must be signed in to change notification settings - Fork 5
Audio
VirtueSky edited this page Sep 8, 2024
·
5 revisions
Support play audio
Use Pool for spawning SoundComponents (with AudioSource attached)
- Create
SoundComponentPrefab

- Attach
AudioManagerto scene to handle play sound FX and Music background (don't destroy)

- Create
SoundDataSoundDatacontainsAudioClip, andloop,volume,fade musicparameters for customization
Right-click folder > Create > Unity-Common > Audio > SoundData or create from Magic Panel


Note: If you drag more than one
AudioClipinto the list,SoundDatawill return a randomAudioClipin the listPlay sound fx and music
publicSoundDatasoundFX;publicSoundDatamusic;privateSoundCache_soundCache;/// <summary>/// Play sound fx/// </summary>publicvoidPlaySoundFX(){_soundCache=AudioManager.PlaySfx(soundFX);// or_soundCache=soundFX.PlaySfx();}/// <summary>/// Pause sound fx/// </summary>publicvoidPauseSoundFX(){AudioManager.PauseSfx(_soundCache);// or_soundCache.PauseSfx();}/// <summary>/// Resume sound fx/// </summary>publicvoidResumeSoundFX(){AudioManager.ResumeSfx(_soundCache);// or_soundCache.ResumeSfx();}/// <summary>/// Finish sound fx/// </summary>publicvoidFinishSoundFX(){AudioManager.FinishSfx(_soundCache);// or_soundCache.FinishSfx();}/// <summary>/// Stop sound fx/// </summary>publicvoidStopSoundFX(){AudioManager.StopSfx(_soundCache);// or_soundCache.StopSfx();}/// <summary>/// Stop all sound fx/// </summary>publicvoidStopAllSoundFX(){AudioManager.StopAllSfx();}/// <summary>/// Play music/// </summary>publicvoidPlayMusic(){AudioManager.PlayMusic(music);// ormusic.PlayMusic();}/// <summary>/// Pause music/// </summary>publicvoidPauseMusic(){AudioManager.PauseMusic();}/// <summary>/// Resume music/// </summary>publicvoidResumeMusic(){AudioManager.ResumeMusic();}/// <summary>/// Stop music/// </summary>publicvoidStopMusic(){AudioManager.StopMusic();}