[Godot] Collision Layer와 Collision Mask 설명

Collision Layer와 Collision Mask는 충돌 기능을 부여하는 노드가 가지고있는 속성입니다. 더 정확히 말하면 CollisionObject2D(또는 3D)를 상속하는 클래스(노드)가 가지고 있습니다.

Collision Layer는 해당 씬이 속하는 충돌 레이어를 결정합니다. 씬은 충돌 레이어를 여러 개 설정할 수 있습니다. Collision Mask는 어떤 충돌 레이어에 소속돼있는 씬과 충돌할 것인지 결정합니다. 마찬가지로 씬은 충돌 마스크를 여러 개 설정할 수 있습니다.

예를 들어, 가장 위에 있는 강체가 추락한다고 가정했을 때 Mask가 1이기 때문에 Layer 1과 충돌할 것입니다. 그러므로 Layer 1 발판에 멈춥니다. 만약에 추락하는 강체의 Mask를 2로 바꾼다면 Layer 1 발판은 통과하고 Layer 2 발판에 멈출 것입니다.

보통 Godot의 씬은 다양한 종류의 씬과 충돌해야 하기 때문에 Collision Mask를 여러 개 설정하게 됩니다. 왜냐하면 씬의 종류에 따라 Collision Layer(1 = Player, 2 = ground, 3 = Enemies, …)가 다르기 때문입니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다