-
Notifications
You must be signed in to change notification settings - Fork 2
explain Singleton
Yoo Hyeokjin edited this page Jun 16, 2023
·
1 revision
-
게임 시스템에서 전체를 관장하는 스크립트(단일 시스템 자원 관리 차원)
-
게임 시스템상 전역 변수의 역할을 하는 스크립트
-
씬 로드시 데이터가 파괴되지 않고 유지
-
여러 오브젝트가 접근을 해야 하는 스크립트의 역할
-
단 한개의 객체만 존재
public static UserDataManager instance; // 역할 4번(다른 script에서도 해당 script의 함수에 접근할 수 있도록 함)
private void Awake()
{
if (instance == null) // 역할 1번, 2번, 5번
{
instance = this; // 만약 해당 instance가 없다면 instance를 자신으로 만든다.
}
else if (instance != this)
{
Destroy(instance.gameObject); // 만약 해당 instance가 자신이 아니라면 이미 존재하는 것이므로 기존의 instance를 파괴한다.
}
DontDestroyOnLoad(this.gameObject); // 역할 3번(Scene이 변경되어도 파괴되지 않도록 하는 코드)
}