isTrigger은 오브젝트 컴포넌트 중 콜라이더에 있는 기능이다.
선택하면 충돌 시 통과하지만 충돌은 감지할 수 있고, 선택하지 않으면 통과하지 않고 충돌이 일어난다.
isTrigger이 체크되어 있지 않은 상태에서 충돌할 때 호출되는 함수는 OnCollision 함수고, 종류는 아래와 같다.
OnCollisionEnter() : isTrigger가 비활성화일 때, 충돌이 발생한 순간 호출
OnCollisionStay() : isTrigger가 비활성화일 때, 충돌이 지속되는 동안 호출
OnCollisionExit() : isTrigger가 비활성화일 때, 충돌이 끝나는 순간 호출
isTrigger이 체크되어 있을 때 충돌할 때 호출되는 함수는 OnTrigger 함수고, 종류는 아래와 같다.
OnTriggerEnter() : isTrigger가 활성화일 때, 충돌이 발생한 순간 호출
OnTriggerStay() : isTrigger가 활성화일 때, 충돌이 지속되는 동안 호출
OnTriggerExit() : isTrigger가 활성화일 때, 충돌이 끝나는 순간 호출
이때 OnCollisionStay나 OnTriggerStay함수는 무한정으로 호출되지는 않고 오브젝트에 변화가 없으면 호출이 중단된다.
따라서 충돌하는 동안 계속 감지하고 싶은 경우 위 함수보다는 Update 함수와 함께 사용하는 것이 좋다.
참고 : OnCollisionEnter을 이용하여 점프 구현 https://greenchoco.tistory.com/227
'유니티 C# > C#' 카테고리의 다른 글
C#기초 - 이동과 점프 구현할 때 Transform와 Rigidbody 충돌 오류 (0) | 2024.05.01 |
---|---|
C#기초 - 스페이스바 점프 구현하기 (Getkey, Addforce함수) (0) | 2024.04.30 |
C#기초 - Addforce함수와 ForceMode 종류 (0) | 2024.04.30 |
C#기초 - 방향키로 이동하기 (Input Manager, GetAxis, Vector3) (0) | 2024.04.29 |
C#기초 - 이동 함수와 인수 종류 (키보드, 마우스, 모바일) (1) | 2024.04.26 |
댓글