【发布时间】:2021-11-26 10:05:15
【问题描述】:
所以我有一个基本的单例来处理跨场景的音频。
private void Awake() {
if (Instance == null) {
Instance = this;
} else {
Destroy(gameObject);
return;
}
DontDestroyOnLoad(gameObject);
}
假设这个音频单例放置在 Scene1 中,如果我切换到 Scene2,它似乎可以工作。唯一的问题是,如果我从 Scene2 开始,音频将不再有效。我猜这是因为单例仅在 Scene1 中创建,因此在 Scene2 中没有单例引用。我已经尝试将我的单例制作成一个预制件,这样我就可以在我的每个场景中使用它们,这解决了我在 Scene2 中没有现有单例的问题,但是如果我切换场景,它就会停止工作。
有没有一种方法可以让我的音频单例在我不从 Scene1 开始时也能正常工作?我想它不一定是单例,但这就是我到目前为止所拥有的。我是 Unity 新手,所以我一直在查找基本的 Unity 教程。
编辑:我想从 Scene2 开始是因为我想测试特定的场景。
【问题讨论】: