Inflearn Community Q&A
2d wave에서 충돌처리가 안 되요
Written on
·
320
1
영상에서 하라는대로 아래와 같이 장애물과 아이템에 태그도 달고(앞에 대문자 처리도 함) collider 컴포넌트도 추가하였습니다.


그리고 Player 에어리어에 isTrigger도 처리했습니다

그런데 충돌 처리가 전혀 안 됩니다. C# script는 학습자료에 있는 것 그대로 사용하였습니다.
아이템에 닿으면 아무런 변화가 없고 장애물에 닿으면 아래와 같은 에러가 발생합니다.

유니티 버전은 2021.3이라 강의 버전보다 상위 버전입니다. 혹시 버전이 달라서 그런걸 수도 있나요?
어떤 부분을 살펴보면 될까요?
C#unity
Answer 1
0
unitynote
Instructor
유니티 버전과 관계없습니다.
먼저 에러의 경우 NullReferenceException은 클래스 변수가 비어있을 때 뜨는 에러입니다.
stageController.GameOver(); 에서 이 에러가 뜨니
PlayerController 컴포넌트에 있는 stageController 변수가 비어있다는 뜻입니다. (P152)
충돌이 안되는건 PlayerController 스크립트에 있는
OnTriggerEnter2D() 메소드에서 collision.tag.Equals("Item") <= 이 부분의
"" 쌍따옴표 내부 Item 태그명을 확인해보세요
장애물은 충돌이 되는데 아이템은 충돌이 안된다면 태그에 오타가 있을 수 있습니다.





