본문 바로가기
유니티

unity Collider / Collision 차이

by 유니티세상 2025. 1. 23.

 

Collider

Collider는 게임 오브젝트에 물리적 경계를 제공하는 컴포넌트입니다.

게임 오브젝트의 모양과 크기를 정의하고, 물리적 상호작용(충돌 및 트리거)을 가능하게 합니다.

 

용도 : 충돌을 감지하거나, 특정 영역에 들어왔는지 확인할 때 사용됩니다.


Collision

Collision은 충돌 이벤트 그 자체를 의미합니다. 두 개의 Collider가 서로 충돌하면 Unity가 충돌 정보를 Collision 객체로 제공합니다.

 

용도: 충돌 이벤트에 대한 정보를 처리하거나, 두 오브젝트가 어떻게 상호작용했는지를 확인할 때 사용됩니다.

 

충돌한 두 오브젝트 사이의 정보(충돌 위치, 충격 강도 등)를 포함합니다.

  • 충돌한 게임 오브젝트: collision.gameObject를 사용해 충돌한 오브젝트를 알 수 있습니다.
  • 충돌 지점: collision.contacts를 통해 충돌이 발생한 위치나 방향 정보를 얻을 수 있습니다.
  • 상대 속도: collision.relativeVelocity로 충돌 당시의 상대 속도를 알 수 있습니다.

차이점 요약

 

Collider는 충돌 영역을 정의하는 컴포넌트이고, Collision은 충돌이 발생했을 때 전달되는 데이터입니다.

 


 

1. Collider 사용

벽, 바닥, 장애물 등의 물리적 경계 설정

 

트리거 영역을 통한 이벤트 처리

트리거 영역을 설정하여 특정 구역에 들어온 오브젝트를 감지하고, 해당 구역에 들어오면 이벤트를 발생시킬 수 있습니다. 주로 Is Trigger 옵션을 활성화하여 사용합니다.

 

카메라와 플레이어의 충돌 처리

 

2. Collision 사용

충돌이 발생할 때 두 오브젝트가 물리적으로 반응해야 할 경우, Collision을 사용하여 상호작용을 처리합니다.

예를 들어, 총알이 벽에 충돌하면 튕기거나 파괴되는 효과를 줄 수 있습니다.

  • 예제: 총알이 벽에 충돌하면 벽의 파괴 효과를 발생시키는 경우.

 

충돌한 지점의 정보를 활용해 보다 정교한 물리적 반응을 만들 수 있습니다.

예를 들어, 총알이 벽에 충돌한 지점에서 벽의 질감을 바꾸거나, 충돌 효과를 다르게 처리할 수 있습니다.

  • 예제: 총알이 벽에 충돌한 위치에 맞춰 총알 파편 효과를 생성하는 경우.

 

충돌이 발생했을 때 충격이나 반발력을 통해 물리적 반응을 처리합니다.

예를 들어, 플레이어가 적의 공격을 맞았을 때 반격 효과를 줄 수 있습니다.

  • 예제: 적의 공격을 맞은 플레이어에게 힘을 추가하여 반격 효과를 구현.