[Unity]TIL (2) | 2023.07.25

kjg5370·2023년 7월 25일
0

TIL

목록 보기
2/91

Collision과 Trigger의 차이

1. Collision

유니티에서 실제 물리적 충돌을 감지하여 충돌처리를 하는 클래스.

충돌하는 두 오브젝트의 RigidBody 컴포넌트의 Is Kinematic이 비활성화 되어있어야함.

Collision 함수들

OnCollisionEnter(Collision, collision) => 두 객체가 충돌 시 호출

OnCollisionStay(Collision, collision) => 두 객체가 충돌하는 동안 호출

OnCollisionExit(Collision, collision) => 두 객체의 충돌이 끝나면 호출

Collision함수 사용 예시

 private void OnCollisionEnter2D(Collision2D coll)
    {
        //충돌 시 발생할 내용
    }

2. Trigger

Collision과 달리 실제적인 물리적 충돌을 계산하지 않고 오직 충돌만을 감지.

Is Kinematic의 활성화 여부는 상관없음.

단, Trigger를 사용하기 위해서는 해당 게임 오브젝트의
Collider에 Is Trigger항목을 활성화 해 주어야 함.

Trigger 함수들

OnTriggerEnter(Collider, other) => 두 객체가 충돌 시 호출

OnTriggerStay(Collider, other) => 두 객체가 충돌하는 동안 호출

OnTriggerExit(Collider, other) => 두 객체의 충돌이 끝나면 호출

Trigger함수 사용 예시

 private void OnTriggerEnter2D(Collider2D coll)
    {
        //충돌 시 발생할 내용
    }


🐈

profile
학생입니다

0개의 댓글