티스토리 뷰

Rookiss님의 유니티 엔진 강의를 보고 정리한 내용입니다.

 

공식 문서 : https://docs.unity3d.com/kr/530/Manual/CollidersOverview.html

 

콜라이더 - Unity 매뉴얼

콜라이더(Collider) 컴포넌트는 물리 충돌 처리를 위한 오브젝트의 형태를 정의합니다. 콜라이더는 보이지 않는 요소이므로 오브젝트의 메시와 정확히 동일한 모양일 필요는 없으며, 실제로는 게

docs.unity3d.com

먼저 Collision이란 충돌을 의미하는 것이고, 유니티에서 물리적인 충돌을 발생시키는 것을 말합니다. 그래서 유니티의 각 오브젝트들에 충돌 여부를 부여하기 위해서 Collider, RigiBody가 존재합니다.

 

먼저 충돌의 조건에는 세가지가 필요합니다. 위 공식문서에도 적혀있습니다.

  1. 나 혹은 상대한테 RigiBody 있어야 한다. (IsKinematic : off)
  2. 나한테 Collider가 있어야 한다. (IsKinematic : off)
  3. 상대한테 Collider가 있어야 한다 ((IsKinematic : off)

여기서 RigiBody와 Collider은 하나의 컴포넌트 입니다. 그 중 Collider은 다양한 형태의 컴포넌트가 존재합니다.

 

 

두 번째로 Trigger입니다.

트리거도 마찬가지로 세가지 조건이 필요합니다. 위 공식문서에도 적혀있습니다.

  1. 둘 다 Collider가 있어야 한다.
  2. 둘 중 하나는 IsTrigger : On
  3. 둘 중 하나는 RigidBody가 있어야 한다.

 

Unity Code

    // 1) 나 혹은 상대한테 RigiBody 있어야 한다. (IsKinematic : off)
    // 2) 나한테 Collider가 있어야 한다. (IsKinematic : off)
    // 3) 상대한테 Collider가 있어야 한다 ((IsKinematic : off)
    private void OnCollisionEnter(Collision collision)
    {
        Debug.Log($"Collision! @ {collision.gameObject.name}");
    }
    // 1) 둘 다 Collider가 있어야 한다.
    // 2) 둘 중 하나는 IsTrigger : On
    // 3) 둘 중 하나는 RigidBody가 있어야 한다.
    private void OnTriggerEnter(Collider other)
    {
        Debug.Log($"TriggerOn! @ {other.gameObject.name}");
    }

'클라이언트 공부 > 유니티' 카테고리의 다른 글

RayCasting  (0) 2022.09.17
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함