#1 충돌 발생조건
* 충돌이 일어나기 위해서는, 두 오브젝트가 모두 Colider를 갖고 있어야 하며, 둘 중 하나 이상은 RigidBody 컴퍼넌트를 갖고 있어야합니다.
* 두 개의 오브젝트 중 하나의 오브젝트만 움직인다면, 움직이는 오브젝트가 RigidBody 컴퍼넌트를 가지고 있어야합니다.
#2 Collision
*Collison은 실제로 물리적 충돌을 감지하여 충돌을 처리하는 클래스입니다.
따라서 두 오브젝트 모두 RigidBody 컴퍼넌트의 Is Kinematic 항목이 비활성화 되어 있어야만 합니다.
[Collision 관련 함수]
OnCollisionEnter(Collision collision) : 두 객체가 충돌 시 호출되는 함수 입니다.
OnCollisionStay(Collision collision) : 두 객체가 충돌하는 동안 호출되는 함수 입니다.
OnCollisionExit(Collision collision) : 두 객체가 충돌을 끝마치면 호출되는 함수 입니다.
#3 Trigger
Trigger은 Collision과 달리 Colider 를 이용해 충돌을 감지하는 클래스 입니다. 실제적인 물리적 충돌 연산을 하지 않고, 충돌을 감지 하기에 Is Kinematic 의 활성화 여부는 영향을 받지 않습니다. 따라서, 파라미터도 Collision이 아닌 Collider 입니다. 단, Trigger을 사용하기 위해서는 해당하는 게임 오브젝트의 Collider에 Is Trigger항목을 활성화 해 주어야 합니다.
[Trigger 관련 함수]
OnTriggerEnter(Colider other) : 두 객체가 충돌 시 호출되는 함수 입니다.
OnTriggerStay(Colider other) : 두 객체가 충돌하는 동안 호출되는 함수 입니다
OnTriggerExit(Colider other) : 두 객체가 충돌을 끝마치면 호출되는 함수 입니다.
'C#' 카테고리의 다른 글
[C#][Unity] 현재 마우스 좌표 알아내기 (0) | 2022.07.17 |
---|---|
[C#][Unity] 현재 시각 가져오기 (0) | 2022.07.02 |
[C#][Unity] 자이로 센서 이용하기 (0) | 2022.06.06 |
[C#][Unity] 마우스 클릭 좌표 구하기 (0) | 2022.05.28 |
[C#][Unity] 스마트폰 화면을 반으로 나눠서 터치 인식하기 (0) | 2022.05.17 |