Unity - Composite Collider 2D

김도현·2023년 10월 17일

참조

베르의 프로그래밍 노트

Composite Collider 2D이란?

컴포지트 콜라이더 2D 컴포넌트는 다수의 2D 콜라이더를 하나의 콜라이더로 합쳐주는 역할을 하는 컴포넌트입니다.
여러개의 콜라이더가 하나의 콜라이더로 취급 또는 수행하기 위해서 사용되며 또는 콜라이더와 콜라이더 사이에 틈이 없지만 따로 기능을 수행하여 끼이는것을 방지하기 위해 사용 되기도 합니다.

사용 방법

  1. 콜라이더가 들어있는 객체를 자식으로 넣고 부모 객체에 Composite Collider 2D를 넣어준다.
  • Composite Collider 2D를 넣어주면 Rigidebody 2D가 자동으로 생성된다. 이로 인해 힘이나 중력에 작용하게 되기에 내가 원하는 동작을 하지 않게 된다.
    이를 해결하기 위해서는 Rigidbody 2D에서 Body Type를 Static으로 변경해주면 된다.
  1. 자식에 들어있는 콜라이더의 Used By Composite 프로퍼티를 true로 설정해준다.

생성 타입

Composite Collider 2D에는 Generation Type(생성 타입)이 존재합니다.
역할은 콜라이더의 생성하는 주기(?)를 설정 하는 옵션이다.
옵션으로는 Synchronous와 Manual 옵션이 존재한다.

1. Synchronous

Synchronous는 하위 콜라이더들이 변동되는 때마다 바로 통합된 콜라이더를 새로 만드는 옵션

  • 움직이는 발판 등등

2. Manual

Manual은 Composite Collider 2D가 처음 부착되는 시점 혹은 콜라이더 재생성(Regenerate Collider)버튼을 누른 시점에만 콜라이더를 만드는 옵션이다.
-변하지 않는 맵, 타일 맵 등등

지오메트리 타입

콜라이더를 생성할 때 어떤 형태로 생성할 것인지 정하는 옵션이다.
옵션 값으로는 Outlines와 Polygons가 있다.

1. Outlines

Outlines로 콜라이더를 생성하면 내부에 아무런 선이 없이 생성된다.

  • 즉 내부가 비어있다는 말이다.

2. Polygons

Polygons로 생성하면 내부에 선이 그어져서 나온다. 즉 내부에도 몰라이더가 차있다는 말이다.

사용 용도

사람들은 간단하게 외부 겉표지만 표시하면 최적화 되고 간단하며 좋네라고 생각할 수 있다 하지만 화면 밖에서 들어오는 터치나 사용자의 클릭 같은 이벤트는 개념적으로 위에서 들어오기 때문에 콜라이더의 내부가 차있는 것이 좋다.

  • 반대로 말하면 이러한 사용자의 클릭처럼 위에서 들어오는 것이 없다면 Outlines로 충분하다.

0개의 댓글