单例模式及声音的管理

来源:互联网 发布:seo整站优化方案 编辑:程序博客网 时间:2024/05/17 08:35

声音我们一般会放在一个统一的脚本里去处理,这个脚本,一般挂在MainCamera下面,播放声音,需要两个因素,一个是 AudioSource,一个是AudioClip 

AudioSource可以在MainCamera里增加1个组件就行了

在脚本的awake里面,用如下代码得到

 audio = this.GetComponent<AudioSource>();

然后把要播放的声音,定义成变量,比如

    public AudioClip collectClip;

在unity里,把相应的声音,拉到这个变量上

然后写一个函数,函数里执行

      audio.PlayOneShot(collectClip);

就可以播放出声音了

在需要播放声音的地方,利用单例模式,取得对象,然后调用这个函数,播放出声音

AudioManager._instance.PlayCollect();

参见下面的例子

public class AudioManager : MonoBehaviour

{
    public static AudioManager _instance;
// Use this for initialization
    public AudioSource audio;
    public AudioClip collectClip;


    public void Awake()
    {
        _instance = this;
        audio = this.GetComponent<AudioSource>();
    }


    public void PlayCollect()
    {
        print("collect");
        audio.PlayOneShot(collectClip);
    }
void Start () {

}

// Update is called once per frame
void Update () {

}
}
0 0
原创粉丝点击