public class GlobalScript : MonoBehaviour {
public static GlobalScript instance;
void Awake() {
if (instance == null) {
// 判定 null 是保证场景跳转时不会出现重复的 GlobalScript 实例 (主要是跳转回上一个场景)
// 在没有 GlobalScript 实例时才创建 GlobalScript 实例
instance = this;
DontDestroyOnLoad(gameObject);
} else if (instance != this) {
// 保证场景中只有唯一的 GlobalScript 实例,如果有多余的则销毁
Destroy(gameObject);
}
}
}Unity 全局游戏脚本的一种实现方法
本文介绍了一个Unity中实现的单例模式全局脚本,该脚本确保在整个游戏运行过程中只有一个实例存在,并且在场景切换时不被销毁。通过DontDestroyOnLoad方法实现了跨场景持久化。

被折叠的 条评论
为什么被折叠?



