VR/XR Interaction Toolkit

[OpenXR] Ray Interactor (XR Interaction Toolkit Movement 타입 차이점)

일등하이 2023. 12. 28. 17:02
반응형

XR Interaction Toolkit (XRIT)은 Unity에서 확장형 현실(VR), 증강현실(AR) 및 기타 현실 혼합 기술(XR) 애플리케이션을 개발하는 데 사용되는 훌륭한 도구입니다. XRIT에서 제공하는 다양한 이동 방식 중 Kinematic Movement, Instantaneous Movement, 그리고 Velocity Tracked Movement의 주요 차이점을 설명해 드리겠습니다.

  1. Kinematic Movement (운동학적 움직임):
    • Kinematic Movement는 XRIT에서 가장 기본적인 이동 방식 중 하나입니다.
    • 이 방식은 개체나 사용자의 위치와 상호 작용하는 데 사용됩니다.
    • Kinematic 이동은 사용자 입력을 기반으로 플레이어 또는 개체를 부드럽게 제어하며, 물리적인 특성을 고려하지 않습니다.
    • 이동이 부드럽고 예측 가능하며, 사용자 경험을 개선하기 위해 고려되는 역학 요소가 없습니다.
  2. Instantaneous Movement (순간이동):
    • Instantaneous Movement는 사용자가 즉각적으로 원하는 위치로 이동하는 방식입니다.
    • 이 방식은 사용자가 특정 위치로 순간적으로 이동할 수 있도록 합니다.
    • 주로 포털, 텔레포트, 뷰포인트 변경 등의 상황에서 사용됩니다.
    • 이동이 순간적이므로 물리 역학을 고려하지 않으며, 사용자 경험의 편리성을 높입니다.
  3. Velocity Tracked Movement (속도 추정 이동):
    • Velocity Tracked Movement는 사용자의 속도와 방향에 따라 이동하는 방식입니다.
    • 사용자의 움직임을 실시간으로 추적하고, 이동 방향과 속도를 고려하여 개체 또는 플레이어를 제어합니다.
    • 이 방식은 물리 역학을 시뮬레이션하고 실제 물체의 움직임을 모방할 때 사용됩니다.
    • 예를 들어, 사용자의 손이나 머리 움직임을 추적하여 VR 환경에서 자연스러운 상호 작용을 제공합니다.

이 세 가지 이동 방식은 XRIT에서 제공하는 다양한 상황에 맞게 선택할 수 있으며, 프로젝트의 목적 및 사용자 경험을 고려하여 적절한 방식을 선택해야 합니다.
 


 
Instantaneous Movement (순간이동)
 
빈오브젝트를 생성 한다 (Interactable Instant Pyramid)

 
Mesh Filter 와 Mesh Renderer 를 부착 한다 

 
Mesh Collider를 부착 한다 

 
Rigidbody를 부착 한다 

 
XR Grab Interactable 컴포넌트를 부착 하고 Use Dynamic Attach를 체크 한다 

 
 
Movement Type을 Instantaneous로 변경 한다 

 
프로젝트 창에서 Interaction Affordance프리팹을 찾아 자식으로 넣어 준다 

 
Interactable Source 에 Interactable Instantaneous Pyramid 오브젝트를 넣어 준다 


Left Controller 셋팅 
 
Right Controller를 선택 하고 XR Controller를 제외한 나머지 컴포넌트를 제거 한다 

 
XR Controller 의 Model Prefab, Model Parent 프로퍼티에 알맞게 넣어준다 

 
프로젝트 창에서 Ray Interactor 프리팹을 찾아서 Right Controller 자식으로 넣어 준다 

 
 
다음과 같이 설정 한다 
이때 Attach Transform에 Right Controller Stabilized Attach를 
Ray Origin Transform 에는 Right Controller Stabilized 를 넣어 준다 
 

 
XR Interaction Toolkit (XRIT)에서 XR Controller 컴포넌트의 Attach Transform 및 Ray Origin Transform 프로퍼티는 컨트롤러와 상호 작용하는 데 사용되는 중요한 설정입니다. 이 두 프로퍼티에 대한 설명은 다음과 같습니다:

  1. Attach Transform:
    • Attach Transform 프로퍼티는 XR 컨트롤러에 연결된 개체의 위치와 회전을 지정합니다.
    • 일반적으로 이 프로퍼티는 컨트롤러의 물리적인 모양과 일치하는 개체를 나타냅니다. 예를 들어, VR 헤드셋의 컨트롤러에는 특정한 모양을 가진 컨트롤러 모델이 있습니다.
    • 이 프로퍼티를 올바르게 설정하면, XR 컨트롤러가 이 개체에 연결되어 사용자의 손 또는 컨트롤러와 같은 개체로 보입니다.
    • Attach Transform은 컨트롤러의 위치 및 회전을 정확하게 추적하기 위해 사용됩니다.
  2. Ray Origin Transform:
    • Ray Origin Transform 프로퍼티는 XR 컨트롤러에서 발사되는 레이(선)의 시작점을 나타냅니다.
    • 이 레이는 주로 컨트롤러 버튼을 누르고 레이를 사용하여 상호 작용할 때 유용합니다. 예를 들어, 사용자가 컨트롤러 버튼을 눌러 가상의 레이저 포인터를 표시하고 화면의 개체와 상호 작용하는 경우가 있습니다.
    • Ray Origin Transform을 올바르게 설정하면, 레이의 시작점이 컨트롤러의 원하는 위치에 정확하게 위치하게 됩니다.
    • 이것은 사용자가 레이를 통해 상호 작용하는 가상의 개체를 정확하게 조준하는 데 도움이 됩니다.

이 두 프로퍼티는 XRIT를 사용하여 상호 작용 기능을 개발할 때 중요한 역할을 합니다. 올바르게 설정되지 않으면 사용자 경험이 부정확하거나 불편할 수 있으므로 주의 깊게 설정해야 합니다.
 
실행해보고 결과를 확인 한다 
 


 

Velocity Tracked Movement 

 
빈 오브젝트를 만들어주고 (Interactable Velocity Tracked Wedge)

 
Mesh Filter와 Mesh Renderer컴포넌트를 부착 하고 
Mesh와 Material을 설정 한다 

Mesh Collider를 부착 하고 

Rigidbody를 부착 한다 

 
XR Grab Interactable 컴포넌트를 부착 한다 
 
Movement Type을 Velocity Tracking으로 변경 하고 
Use Dynamic Attach 를 체크 한다 

 
이하 기본 설정 

 
 
프로젝트 창에서 Interaction Affordance를 검색해 프리팹을 찾아 자식으로 넣어준다 

 
 
 
실행후 결과를 확인 한다 
 

 

반응형