private static void PlayAudio(string path,float volume, bool is3D,Transform parent,Vector3 pos,float delay)
{
//获得音频
AudioClip clip = Resources.Load<AudioClip>(path);
//新建对象
GameObject obj = new GameObject(path+":"+Time.time);
//把调用该方法的脚本设置为父类
obj.transform.parent = parent;
obj.transform.localPosition = pos;
//添加播放组件,并播放
AudioSource source = obj.AddComponent<AudioSource>();
//设置播放的音频
source.clip = clip;
//设置播放的模式
source.spatialBlend = is3D ? 1:0;
//是否在运行时就播放
source.playOnAwake = false;
//播放是否延迟
if(delay>0)
source.PlayDelayed(delay);
else
source.Play();
//在播放完成后就销毁,时间是延迟的时间+音频的长度时间
GameObject.Destroy(obj,delay+clip.length);
}
{
//获得音频
AudioClip clip = Resources.Load<AudioClip>(path);
//新建对象
GameObject obj = new GameObject(path+":"+Time.time);
//把调用该方法的脚本设置为父类
obj.transform.parent = parent;
obj.transform.localPosition = pos;
//添加播放组件,并播放
AudioSource source = obj.AddComponent<AudioSource>();
//设置播放的音频
source.clip = clip;
//设置播放的模式
source.spatialBlend = is3D ? 1:0;
//是否在运行时就播放
source.playOnAwake = false;
//播放是否延迟
if(delay>0)
source.PlayDelayed(delay);
else
source.Play();
//在播放完成后就销毁,时间是延迟的时间+音频的长度时间
GameObject.Destroy(obj,delay+clip.length);
}