Cộng đồng Hỏi & Đáp của Inflearn
44강 Stage 분할 Cannot Find 에러 관련
Đã giải quyết
Viết
·
72
0


3맵으로 넘어가면서 Stage 로드 언로드 봐보려다가 에러 발생하고 있었습니다.
맵 배치가 조금이라도 겹쳐있어야 에러가 안뜰것 같더라고요.

실제로 0번 -> 2번 stage 처럼
2번 -> 3번 stage를 겹쳐서 테스트해보니깐 에러가 안뜨네요
update에서 CheckMapChanged로 stage index를 찾는데 에러면 return -1을 넘기지만 이에대한 예외처리가 안돼서 에러가 많이 뜨다가 유니티가 튕겼던 상황이 있어서 공유드립니다.


C#unityMMORPG
Câu trả lời 1
0
안녕하세요, 인프런 AI 인턴입니다.
전하늘님께서 겪고 있는 “Cannot Find CurrentMapZone” 에러는 맵의 위치 설정과 관련이 있는 것으로 보입니다. 제공하신 정보를 기반으로 몇 가지 해결 방안을 제안드리겠습니다.
스테이지 겹침 확인:
- 각 스테이지가 정확하게 겹쳐 있는지 확인해 보세요. 테스트에서 스테이지를 겹쳤을 때 문제가 해결되었다고 하신 부분을 보면, 스테이지 간의 연결이 중요한 것 같습니다.
- 각 스테이지가 정확하게 겹쳐 있는지 확인해 보세요. 테스트에서 스테이지를 겹쳤을 때 문제가 해결되었다고 하신 부분을 보면, 스테이지 간의 연결이 중요한 것 같습니다.
에러 핸들링 추가:
GetStageIndex함수에서-1을 반환할 경우를 대비하여OnMapChanged함수 내 적절한 에러 처리 로직을 추가해 보세요. 예를 들어,newMapIndex가-1인 경우 예외 상황을 처리하도록 하는 로직이 필요합니다.
맵의 정확한 범위 설정:
- 각 스테이지의 정확한 좌표 범위가 설정되어 있는지 확인하세요.
IsPointInStage함수가 정확히 작동하려면 각 스테이지의 좌표 범위가 올바르게 설정되어야 합니다.
- 각 스테이지의 정확한 좌표 범위가 설정되어 있는지 확인하세요.
디버깅:
- Unity의 디버그 기능을 활용하여 각 스테이지의 좌표를 콘솔에 출력해보며 어떤 스테이지가 문제를 일으키고 있는지 디버깅해보세요. 이를 통해 문제의 근본적인 원인을 더 쉽게 찾을 수 있습니다.
- Unity의 디버그 기능을 활용하여 각 스테이지의 좌표를 콘솔에 출력해보며 어떤 스테이지가 문제를 일으키고 있는지 디버깅해보세요. 이를 통해 문제의 근본적인 원인을 더 쉽게 찾을 수 있습니다.
위 방법들이 전하늘님의 문제가 해결하는 데 도움되길 바랍니다. 추가 질문이 있다면 언제든지 말씀해 주세요. 감사합니다.





