-
[Unity 2D] Fly Bird 프리팹 구현하고 Collider 적용하기Unity 2D 2023. 3. 23. 20:06
이제 Bird 가 넘을 장애물인 파이프 프리팹을 만들어보자.
파이프 이미지를 하이라키 창에 드래그해서 세트를 만들어본다.
짜잔 세트 완성
이 파이프에 각각 Box Collider 2D 컴포넌트를 넣어서 충돌체 위치를 설정해준다.
파이프에 맞게 크기를 조정해주면 된다.
세트로 만든 파이프를 빈 오브젝트를 만들어 상속시킨다.
빈 오브젝트도 마찬가지로 Box Collider 2D 컴포넌트를 넣어준다.
새로 만든 파이프에 레이어 설정 해주는 것도 잊지 말자.
그리고 프리팹 에셋 폴더로 넘겨서 프리팹화 한다.
게임 기획 상 바닥에 떨어져도 Game Over가 되고 하늘에 닿아도 Game Over 가 되어야 하기 때문에
Grounds에도 Collider 컴포넌트를 넣어주고, 하늘에도 빈 오브젝트를 생성시켜서 콜라이더를 넣어준다.
하늘에 닿았을 때 Game Over 처리를 하지 않으면 자칫 버그가 생길 수 있으니 웬만하면 구현하는 것이 좋다.
콜라이더를 모두 설정했다. SkyWall도 똑같이 카메라를 따라가야 하니까 Main Camera에 상속시킨다.
그리고 충돌 처리를 체크하기 위해서 각각 네임택을 달아주자.
Inspector창 → Tag 클릭 → Add Tag → + 버튼 클릭
지나갔을 때 점수를 얻을 Pipe 부모 오브젝트의 택은 Score다. 부딪혔을 때 충돌 처리를 할 장애물 Pipe 자식 오브젝트의 택은 Pipe이다. 부딪혔을 때 충돌 처리를 할 ground의 택은 Ground이다. SkyWall도 마찬가지로 부딪혔을 때 충돌 처리를 할 거라서 택을 Ground로 설정했다. 아직 테스트 해야 할 것이 좀 남아있기 때문에
파이프 2개의 콜라이더에 is Trigger 에 체크해놓자.
잠깐! 여기서!
is Trigger 가 뭐지? 무슨 뜻이냐면
이 충돌체가 트리거로 구성되었는가?
즉, 들어오는 Rigidbody 와의 충돌을 등록 할지 안 할지 설정할 수 있는 항목이다.
더 쉽게 말해서 is Trigger 에 체크를 하면 충돌 처리가 되지 않고 그냥 관통한다는 것이다.
그리고 관통하면서 충돌 감지 체크도 가능하고 충돌한 오브젝트의 정보도 알 수 있다.
다음엔 스폰 포인트를 지정해서 아까 만든 파이프 프리팹을 계속 생성시켜보자!
'Unity 2D' 카테고리의 다른 글
[Unity 2D] Fly Bird 충돌체와 충돌했을 때 Death 처리하기 (0) 2023.03.25 [Unity 2D] Fly Bird 파이프 프리팹 Spawn하기 (2) 2023.03.23 [Unity 2D] Fly Bird 그라운드 이동 구현하기 (0) 2023.03.21 [Unity 2D] Fly Bird 플레이어 따라 Camera 이동 구현 (0) 2023.03.21 [Unity 2D] Fly Bird 회전 구현하기 (1) 2023.03.21