Unity C 中的简单 Singleton MonoBehaviour
在此示例中,类的私有静态实例在其开头声明。
静态字段的值在实例之间共享,因此如果创建了此类的新实例,则 if
将找到对第一个 Singleton 对象的引用,从而销毁新实例(或其游戏对象)。
using UnityEngine;
public class SingletonExample : MonoBehaviour {
private static SingletonExample _instance;
void Awake(){
if (_instance == null){
_instance = this;
DontDestroyOnLoad(this.gameObject);
//Rest of your Awake code
} else {
Destroy(this);
}
}
//Rest of your class code
}