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, 많이 사용하면 부하가 많이 걸린다고 한다.
'게임 개발 > 유니티' 카테고리의 다른 글
Coroutine() (0) | 2020.03.22 |
---|---|
Instantiate(), Destroy() (0) | 2020.02.19 |
Input. 메서드 정리(GetAxis, GetButton, GetKey, GetMouseButton) (0) | 2020.02.19 |
유니티 이벤트 함수 실행 순서 (0) | 2020.02.19 |
참조 타입 변수, GetComponent<>(); (0) | 2020.02.19 |
댓글