AudioPlayManager
使用AudioPlayManager管理AuidoSourceManager和AudioClipManager。
提供一次性播放(播放完毕就结束)。
提供循环播放,返回SingleAudioClip,使用返回的SingleAudioClip停止播放。
using UnityEngine;
public class AudioPlayManager : MonoBehaviour
{
public static AudioPlayManager instance;
private AudioSourceManager audioSourceManager;
private AudioClipManager audioClipManager;
private void Start()
{
instance = this;
audioSourceManager = new AudioSourceManager(gameObject);
audioClipManager = new AudioClipManager();
}
private void Update()
{
audioSourceManager.ReleaseFreeAudioSource();
}
/// <summary>
/// 播放音频(一次)
/// </summary>
/// <param name="audioClipName"></param>
public void PlayOnceAudio(string audioClipName)
{
AudioSource tempAudioSource = audioSourceManager.FindFreeAudioSource();
SingleAudioClip tempSingleAudioClip = audioClipManager.FindSingleAudioClip(audioClipName);
tempSingleAudioClip.Initialize(tempAudioSource);
tempSingleAudioClip.PlayAudio();
}
/// <summary>
/// 播放音乐(需要调用StopPlay关闭)
/// </summary>
/// <param name="audioClipName"></param>
public SingleAudioClip PlayAud