Unity

[Unity] 콜라이더 (Collider) 에 대해 알아보기 #2

윤창범 2021. 11. 7.

https://dbsckdqja75.tistory.com/39

 

[Unity] 콜라이더 (Collider) 에 대해 알아보기 #1

이번 글에서는 Unity 의 콜라이더 컴포넌트 (Collider Component) 에 대해서 알아볼 것이다. Unity Docs (Collider) Unity - 스크립팅 API: Collider See Also: BoxCollider, SphereCollider, CapsuleCollider, Me..

dbsckdqja75.tistory.com

 

지난번 글에서 Unity 에서 3D 환경의 Collider 에 대해 알아봤었는데, 이번에는 2D 환경에서의 Collider 를 알아보고자 한다.

 

Unity Docs (Collider 2D)

 

콜라이더 2D - Unity 매뉴얼

콜라이더 2D(Collider 2D) 컴포넌트는 물리적 충돌을 위해 2D 게임 오브젝트의 모양을 정의합니다. 보이지 않는 콜라이더는 게임 오브젝트의 메시와 완전히 똑같을 필요는 없습니다. 사실 대략적인

docs.unity3d.com

 


Box Collider 2D, Circle Collider 2D, Polygon Collider 2D, Edge Collider 2D, Capsule Collider 2D

 

< 왼쪽부터 Box, Circle, Polygon, Edge, Capsule Collider 2D >

특별한 경우를 제외하고는 보통은 Box, Circle, Polygon 등의 총 3가지 Collider 2D 가 사용된다.

 

3D 환경에서의 Collider 속성들에 대해서 이해했다면, 2D 환경에서의 Collider 도 이해하기 쉬울 것이다.

 

또한 3D 환경에서 Mesh Collider 가 존재하듯이, 2D 환경에서도 비슷한 역할을 하는 Collider 가 존재한다.

 

바로 Polygon Collider 2D 다.

 

 

스프라이트 모양에 맞춰서 알아서 충돌체 범위가 구성된다.

 

< 충돌 범위를 구성하기 위한 각각의 위치들 (Points) 이 존재한다 >

 

Collider 2D 컴포넌트에 있는 각각의 프로퍼티에 대한 설명과 충돌 이벤트 함수에 대한 사용법은 다음의 링크를 참고하자.

 

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=rwans0397&logNo=220831291845

 

[유니티] Collider 2D 콜라이더2D

유니티 Collider2D 콜라이더2D 유니티에서 두개이상의 게임오브젝트가 충돌할때는 물리적요소를 추가해...

blog.naver.com

 

특별히 알아두어야 할 것이 있다면, Edge Collider 2D 는 같은 Edge Collider 2D 끼리는 충돌이 불가능하다.

(다른 Collider 2D 요소와는 충돌이 가능하다)

 

Edge Collider 2D 는 배경에 Line 으로 충돌체를 구성하는 경우에 사용한다.

(배경을 중심으로 한 충돌체 구성 용도로 의도되어 있는 것 같다)

 

< Edge Collider 2D 요소끼리는 서로 충돌하지 않는다 >

그리고 마지막으로 알아볼 것이 컴포지트 콜라이더 2D (Composite Collider 2D) 이다.

 


컴포지트 콜라이더 2D (Composite Collider 2D)

 

컴포지트 콜라이더 2D 는 각각의 충돌체를 따로 감지하고 처리하는 것이 아니라, 여러 충돌체를 하나의 충돌체로 취급하여 충돌을 감지하고 처리할 때 사용한다.

 

실제로 적용해보면 충돌체 범위도 서로 합쳐지는 것을 볼 수 있다.

 

< 밑에 있는 Box, Circle Collider 2D 가 하나의 충돌체로 취급된다 >

 

자세한 설명은 아래의 링크에서 참고할 수 있다.

 

https://wergia.tistory.com/202

 

[Unity3D] Physics - 컴포지트 콜라이더 2D(Composite Collider 2D)

Physics - 컴포지트 콜라이더 2D(Composite Collider 2D) 작성 기준 버전 :: 2019.1.4f1 컴포지트 콜라이더 2D 컴포넌트는 다수의 2D 콜라이더를 하나의 콜라이더로 합쳐주는 역할을 하는 컴포넌트이다. 이 컴

wergia.tistory.com

 


마무리

3D 환경에서의 충돌체와 마찬가지로 2D 환경에서도 개발 도중에 여러 충돌체 관련 문제들이 발생한다.

 

타일 형태로 맵이 배치되는 2D 게임에서 플레이어 또는 발사체가 타일 맵의 충돌체를 뚫고 지나가는 문제라던지 등등여러 형태로 발생할 수 있으니 자세히 알아보고 사용하는 것이 중요하다.

 

참고자료1 (전체 종합)

 

Unity2D - (4) Collider2D

Collider를 설정하지 않으면 캐릭터가 벽을 뚫고 나간다거나 중력을 줬을 때 땅을 뚫고 아래로 떨어지는 현상이 일어날 것이다.

berkbach.com

'Unity' 카테고리의 다른 글

[Unity] 좌표계에 대해 알아보기  (1) 2021.11.22
[Unity] 콜라이더 (Collider) 에 대해 알아보기 #1  (0) 2021.10.29

댓글