GameManager 싱글톤 처리하기
싱글톤이란? '너는 딱 하나야!' 라고 할 수 있게 세팅해두는 것(그래야 다른데서 나를 부를 수 있습니다!)
public static GameManager Instance;
void Awake()
{
if(Instance == null)
{
Instance = this;
}
}
Instance == null 이란?
null 은 비어있다는 뜻입니다.
변수는 데이터/값을 담아 놓는 박스인데요, 이 변수(박스)가 비어 있을 때 Instance = this 를 해주겠다는 뜻입니다.
여기서 static 키워드는 '너 하나야'라고 표현해주기 위해 사용됩니다.
+ 내용추가
public static AudioManager instance;
private void Awake()
{
if(instance == null)
{
instance = this;
DontDestroyOnLoad(gameObject); // 씬을 이동해도 AudioManager 오브젝트가 파괴되지 않음
}
else // 이미 존재할 때
{
Destroy(gameObject); // 새로 생성되는 MainScene의 AudioManager를 파괴해서 AudioManager는 하나만 남게됨
}
}
반응형
'스파르타 게임개발종합반(Unity) > 사전캠프 공부 기록' 카테고리의 다른 글
[Unity] 앱을 껐다 켜도 데이터 유지 및 보관하기, 데이터 저장하기 - PlayerPrefs (0) | 2024.04.01 |
---|---|
[Unity/2D] isPlay 변수로 게임시간의 소수점값이 미세하게 달라지는 현상 방지하기 (0) | 2024.04.01 |
[Unity/2D] 쉐도우 효과 넣기 - Shadow, UI (0) | 2024.03.29 |
[Unity] 스크린상의 마우스 좌표를 카메라가 찍고 있는 월드 좌표로 바꾸기 - ScreenToWorldPoint, Input, Input.mousePosition (2) | 2024.03.29 |
[Unity/2D] 깜빡이는 애니메이션 효과 - Animation, Animator (2) | 2024.03.29 |
댓글