無料サウンドマネージャー界隈の両巨頭。
[Hellmade Games] Eazy Sound Managerの使い方を解説。
2021/05/21 大幅修正。
主要API
各種再生メソッドには、PrepareMusic等の、再生を行わずにIDの取得のみ行う物もある。
BGM再生
引数の説明
(Single == float)
public static int PlayMusic(
AudioClip clip,
float volume,//(ボリュームの大きさ。0~1.0fの間で設定)
bool loop,
bool persist,//(シーンを跨いだ場合に継続するか否か)
float fadeInSeconds,
float fadeOutSeconds,
float currentMusicfadeOutSeconds,
Transform sourceTransform//(3DAudioにする場合の音声の発生源)
)
オーバーロード
- EazySoundManager.PlayMusic(AudioClip)
- EazySoundManager.PlayMusic(AudioClip, Single)
- EazySoundManager.PlayMusic(AudioClip, Single, Boolean, Boolean)
- EazySoundManager.PlayMusic(AudioClip, Single, Boolean, Boolean, Single, Single)
- EazySoundManager.PlayMusic(AudioClip, Single, Boolean, Boolean, Single, Single, Single, Transform)
SE再生
引数の説明
public static int PlaySound(
AudioClip clip,
float volume,//(ボリュームの大きさ。0~1.0fの間で設定)
bool loop,
Transform sourceTransform//(3DAudioにする場合の音声の発生源)
)
オーバーロード
- EazySoundManager.PlaySound(AudioClip)
- EazySoundManager.PlaySound(AudioClip, Boolean)
- EazySoundManager.PlaySound(AudioClip, Single)
- EazySoundManager.PlaySound(AudioClip, Single, Boolean, Transform)
UIのSE再生
引数の説明
public static int PlayUISound(
AudioClip clip,
float volume,//(ボリュームの大きさ。0~1.0fの間で設定)
)
オーバーロード
- EazySoundManager.PlayUISound(AudioClip)
- EazySoundManager.PlayUISound(AudioClip, Single)
音量の操作
EazySoundManagerのStaticプロパティの変更で、各マスター音量の調整が出来る。
0~1.0fまでの値で設定。
- 全体:EazySoundManager.GlobalVolume
- BGM:EazySoundManager.GlobalMusicVolume
- SE:EazySoundManager.GlobalSoundsVolume
- UIのSE:EazySoundManager.GlobalUISoundsVolume
まとめて停止
- 全体:StopAll()
- ディレイあり全体:StopAll(Single)
- BGM:StopAllMusic()
- ディレイありBGM:StopAllMusic(Single)
- SE:StopAllSounds
- UIのSE:StopAllUISounds
まとめて一時停止
- 全体:EazySoundManager.PauseAll
- BGM:EazySoundManager.PauseAllMusic
- SE:EazySoundManager.PauseAllSounds
- UIのSE:EazySoundManager.PauseAllUISounds
まとめて再開
- 全体:ResumeAll
- BGM:ResumeAllMusic
- SE:ResumeAllSounds
- UIのSE:ResumeAllUISounds
使い方
PlayMusicや、PlaySoundで引数のAudioClipを再生。
同メソッドから返されるintをIDとして保持。
GetMusicAudio等で、Audioを取得。
Audioで、PauseやResume等の操作が可能。
//名前空間
using Hellmade.Sound;
[SerializeField]
AudioClip bgmAudioClip;
[SerializeField]
AudioClip attackAudioClip;
[SerializeField]
AudioClip earnedCoinAudioClip;
int bgmAudioId;
Audio bgmAudio;
//BGM
void Awake()
{
//音量1.0、ループあり、シーン跨ぎなし、フェードイン/アウトなし
bgmAudioId = EazySoundManager.PlayMusic(bgmAudioClip, 1.0f, true, false, 0, 0);
bgmAudio = EazySoundManager.GetMusicAudio(bgmAudioId);
}
//完全停止
public void StopBgm()
{
//再生中かチェック
if (!bgmAudio.IsPlaying)
return;
bgmAudio.Stop();
}
//再生
public void PlayBgm()
{
//完全停止中かチェック
if (!bgmAudio.Stopping)
return;
bgmAudio.Play();
}
//一時停止
public void PauseBgm()
{
//再生中かチェック
if (!bgmAudio.IsPlaying)
return;
bgmAudio.Pause();
}
//再開
public void ResumeBgm()
{
//一時停止中かチェック
if (!bgmAudio.Paused)
return;
bgmAudio.Resume();
}
//SE
public void PlayAttackAudio()
{
EazySoundManager.PlaySound(attackAudioClip, 1.0f, false, null);
}
//UIのSE
public void PlayEarnedCoinAudio()
{
EazySoundManager.PlayUISound(earnedCoinAudioClip, 1.0f);
}