본문 바로가기
게임 개발/유니티

Collider, OnTrigger, OnCollision

by FlowTree 2020. 2. 19.
반응형

Collider

Collider 컴포넌트는 물리 충돌 처리를 위한 오브젝트의 형태를 정의합니다. 콜라이더는 보이지 않는 요소이므로 오브젝트의 메시와 정확히 동일한 모양일 필요는 없으며, 실제로는 게임플레이 시에는 대략적인 근사치로도 크게 구분되지 않으며 더 효율적입니다.

OnTrigger

Collider의 Is Trigger 속성이 켜져있을 때 발생한다.

OnTrigger (Collider col) OnTrigger들은 Collider를 사용한다.

 

OnTriggerEnter : Trigger 대상과 접촉되었을 때 처리

OnTriggerStay : Trigger 대상과 접촉 중일 때(관통 가능) 처리

OnTriggerExit : Trigger 대상과 벗어났을 때 처리

OnCollision

Kinematic 속성이 꺼져있을 때 발생한다. Kinematic이 켜져 있으면 내부 물리 연산을 안해서 충돌이 발생하지 않는다.

물리 기반으로 충돌 처리를 하여 충돌할 오브젝트 둘 다 Collider가 필요하고, 그 중 하나Rigidbody가 있어야 한다.

OnCollision (Collision col) OnCollision들은 Collision을 사용한다.

 

OnCollisionEnter : 대상과 접촉되었을 때 처리

OnCollisionStay  대상과 접촉 중일 때 처리

OnCollisionExit : 대상과 접촉이 끝났을 때 처리

OnTrigger vs OnCollision

OnTrigger : 물리 연산 X, 관통 가능, Collision 보다 연산이 적어서 효율적

OnCollision : 물리 연산을 통해 충돌 처리, 관통 X, 많이 사용하면 부하가 많이 걸린다고 한다.

 

반응형

댓글