인프런 커뮤니티 질문&답변
if (tm == null) return; 을 포함할 경우 유니티가 화를 냅니다
작성
·
376
0
우선, 새해 복 많이 받으세요. 선생님.
다름이 아니라 해당 강좌 약 15분까지의 내용 중에서
MapEditor.cs에 if (tm == null) return; 을 포함할 경우 유니티에서 화를 내면서
NullReferenceException: Object reference not set to an instance of an object
MapEditor.GenerateMap () (at Assets/Editor/MapEditor.cs:31) 를 출력하고,
output.txt에 아무것도 써주질 않습니다.
if (tm == null) return;을 삭제하면 정상적으로 만들어집니다. 강좌에선 포함해도 잘 진행되는걸로 나왔는데 말이죠.
(강좌 15분 이후에 결국 해당 if문은 필요없어서 삭제하시긴 합니다만 저기서 막혀서 한참 씨름했네요)
무엇이 문제였는지 궁금해서 여쭤봅니다.
퀴즈
타일맵 기반 환경에서 이동 가능한 영역과 불가능한 영역을 분리하여 관리하기 위해 사용된 주된 방법은 무엇일까요?
하나의 타일맵에 모든 정보를 저장하고 태그로 구분한다.
충돌 정보만을 담는 별도의 타일맵 레이어를 사용한다.
모든 타일에 물리적인 Collider 컴포넌트를 추가한다.
카메라의 시야 범위로 이동 가능 영역을 제한한다.





후...유레카...찾았습니다. Tilemap_Collision 오브젝트가 꺼져있었습니다. 두 눈 멀쩡히 뜨고 있는데 왜 이게 안 보였을까요.
직접 분석하라는 조언 감사드립니다. 있을 법한 실수를 선생님이 직접 찍어주셨으면 해결은 바로 했겠지만 아마 또 금방 까먹었을거에요.