Unity 정리

기초 용어 정리

gizmo, rigidbody, transform, collider, trigger, prefab, layer 에 관한 용어 정리

gizmo (새롭고 쓸모있는 간단한 장치)

  • 유니티에서는 Scene 뷰에 표시되는 화살표와 디버그용 아이콘을 의미.

 

​Rigidbody (강체)

  • 물리학에서는 형태가 고정되어 변하지 않는 물체를 의미.

  • 유니티에서는 오브젝트에 물리적인 특성을 부여하는 컴포넌트.

  • Rigidbody의 옵션

    • Mass : 오브젝트와의 충돌을 처리하는 방식에 영향을 준다.

    • Drag : 다른 상호 작업없이 얼마나 빨리 느려지는 지에 영향을 준다.(공기저항가 비슷)

    • Angular Drag : Drag와 비슷하게 각속도를 느리게 하는데 영향을 준다. (얼마나 빨리 회전하는지)

    • 떨림 현상 해결

      • Interpolate(보간) : 이젠 프레임을 기반으로 변형 이동을 부드럽게 한다. 

      • Extrapolate(보외) : 다음 프레임의 예상 위치를 기반으로 움직임을 부드럽게 한다. 

    • 충돌 감지 유형

      • Discrete : default 로써, 아무 이상 없으면 그냥 사용하기

      • Continuous : 빠르게 움직이는 오브젝트 용으로, 정적 지오메트리와 상호 작용을 한다. 

      • Continuous Dynamic : 빠르게 움직이는 오브젝트용이고, 다른 동적 지오메트리와 상호 작용을 한다. 

    • Constraints : 물리력에 의한 오브젝트의 이동과 회전을 제한할 수 있게 한다. 

 
표준 리지드바디물리력을 이용해 움직이고, 키네마틱 리지드바디는 물리력에 의하여는 움직이지 않고 transform(변형)을 이용해 움직인다. 
 
Transform (트랜스폼)
  • Scene에서 모든 오브젝트들의 실질적인 Position, Rotation, Scale을 결정한다.

  • 모든 객체는 트랜스폼을 가지고 있다. 

 
Collider (콜라이더)
  • 충돌을 발생시키기 위해 리지드바디와 함께 추가해야 하는 다른 유형의 컴포넌트.

  • unity에서 제공하는 오브젝트들에는 기본적으로 콜라이더가 들어가 있고, 종류로는 Box Collider, Sphere Collider, Capsule Collider등이 있다. 

  • 두 리지드바디가 서로 충돌하는 경우, 물리 엔진은 두 오브젝트에 콜라이더가 추가될 때까지 충돌을 계산하지 않는다. 콜라이더 없는 리지드바디는 물리 특성 시뮬레이션 동안 서로를 통과한다.

  • Trigger와 다르게 물리적인 연산을 하며 충돌을 감지한다.

  • RigidBody의 Kinematic속성이 꺼져 있어야 충돌이 발생할 수 있다.

  • 다음 스크립트의 함수로 충돌 이벤트를 처리할 수 있다. 

    • void OnCollisionEnter(Collider col){} -> 충돌이 시작되는 순간 호출

    • void onCollisionStay(Collider col){} -> 충돌이 되고 있을 때 매 프레임마다 호출

    • void onCollisionExit(Collider col){} -> 충돌이 끝날 때 호출

 
Trigger (트리거)
  • 오브젝트 간에 물리적 연산을 하지 않고 충돌을 감지할 수 있다.

  • 즉, 두 오브젝트가 접촉했을 때 서로 튕겨 나가지 않고 그냥 통과하게 된다. 

  • 트리거를 사용하기 위해서는 해당 Collider의 is Trigger 항목을 체크해야 함.

  • 다음 스크립트의 함수로 충돌 이벤트를 처리할 수 있다. 

    • void OnTriggerEnter(Collider col){} -> 충돌이 시작되는 순간 호출

    • void onTriggerStay(Collider col){} -> 충돌이 되고 있을 때 매 프레임마다 호출

    • void onTriggerExit(Collider col){} -> 충돌이 끝날 때 호출

 
Unity는 콜라이더와 리지드바디를 포함한 오브젝트를 동적 오브젝트로 인식한다. 
 
prefabs (프리팹)
  • Unity의 핵심 기능 중 하나로써 오브젝트를 하나의 형틀로 만들어 언제든지 인스턴스화 할 수 있도록 만드는 것.

 
tag
  • 하나 이상의 오브젝트에 연결하는 식별자.

 

layer

  • 오브젝트에 대해 여러 종류의 기능을 적용/적용해제 할 때 사용한다. 

  • 카메라에 따라 Scene의 일부만 렌더링 하거나, 빛에 따라 scene의 일부만 밝히는 등의 기능을 위해 자주 사용한다. 

  • 선택적으로 Collider를 무시 또는 Collisions를 생성하는데도 사용할 수 있다. 

 

유니티 프로그램 상 Pivot/Center 토글

  • 회전축에 관한 기능.

  • 다수의 오브젝트를 선택해 두었을 때 pivot을 선택하면 오브젝트 하나하나가 축으로 작용하여 움직이고, center를 선택하면 선택된 오브젝트들의 센터를 기준으로 움직입니다.

 

유니티 프로그램 상 Local/Global 토글

  • 오브젝트의 좌표축에 관한 기능.

  • 오브젝트 간에 부모-자식 관계가 설정된 경우 기준점을 글로벌 원점으로부터 할 것인가, 부모로부터의 상대적 기준으로 할 것인가를 정해주는 버튼.

  • 월드 좌표란, Scene 내의 가상적인 공간의 가장중심(0, 0, 0)

댓글

댓글 본문
  1. 임준혁
    잘 보고 갑니다. 감사합니다.