문제원인
싱글톤패턴을 사용하기위해 싱글톤 제네릭 클래스를 상속받은 형태로 코드를 구성할경우,
해당 클래스의 instance가 존재하지않으면 오브젝트를 새로 생성하게된다.
위 처럼 파괴되는 시점에 singleton 클래스를 상속받은 클래스의 instance를 참조하게되면,
파괴되는 도중에 해당 클래스가 다시 생성되는 경우가 발생하게된다.
즉, 게임이 종료되어 오브젝트들이 정리되는 와중에 파괴했던 오브젝트가 다시 참조되어 생성된다는 의미이다.
해결방안
_applicationIsQuitting 이라는 flag를 만들어, 지금 게임이 종료되고 있는 시점인지 감지하여,
게임이 종료중이라면, instance를 참조하더라도 해당 오브젝트를 생성하지 않도록 return하는 코드를 추가해주면 된다.
'Unity > 2D' 카테고리의 다른 글
유니티 Input system 특정 입력 무시하는 방법 (0) | 2024.12.06 |
---|---|
유니티 2D 콜라이더 합치기 (0) | 2024.08.17 |
유니티 2D RuleTile 규칙 유의사항 (0) | 2024.08.15 |
오브젝트가 파괴되었는데 참조하려고한다.. 오류 (0) | 2024.07.03 |
Unity Photon Pun2 연결하는 방법 (0) | 2024.01.15 |