最近在研究unity3d做游戏,想到怎么样让Unity3d 场景切换时背景音乐不间断播放,在百度搜索到一片文章,就记录下来,免得以后要用的时候又找不到了。
把摄像机上的audio listener删掉,添加一个空物体,给他添加audio listener和audio source,在添加一个c#程序
代码如下:
using UnityEngine;
using System.Collections;
public class ddd : MonoBehaviour {
static ddd _instance;
// Use this for initialization
void Start () {
}
public static ddd instance {
get
{
if (_instance == null)
{
_instance = FindObjectOfType();
DontDestroyOnLoad(_instance.gameObject);
}
return _instance;
}
}
void Awake()
{
//此脚本永不消毁,并且每次进入初始场景时进行判断,若存在重复的则销毁
if (_instance == null)
{
_instance = this;
DontDestroyOnLoad(this);
}
else if (this != _instance)
{
Destroy(gameObject);
}
}
// Update is called once per frame
void Update () {
}
}
把这个空物体保存为预制文件,然后添加到你想要添加的场景吧,记得把摄像机的audio listener删除哦
孙健个人博客