//구글콘솔 광고 추가가

 

 

XR Interaction ToolKit개념과 핵심 기능 2

6. Locomotion System, Provider

 

  • Locomotion System, ProviderLocomotion System : 프로바이더 관련 컴포넌트들의 이동 기능을 작동하도록 관리해주는 컴포넌트. provider컴포넌트를 작동하려면 씬 어딘가에 반드시 하나가 있어야 함.  + 딱 하나만 존재.
  • 한 게임오브젝트에 프로바이더컴포넌트와 로코모션시스템컴포넌트가 같이 있을 필요는 없지만 보통은 그냥 같이 둠.
프로바이더 관련 컴포넌트를 사용하여 작동하게 할수 있는 대표적 기능들
  • 일정거리를 한번에 이동할 수 있는 Teleportation 기능
  • 좌우나 뒤로 회전할 수 있는 Snap Turn
  • 지속적으로 이동할 수 있는 Continuous Move
  • 지속적으로 회전할 수 있는 Continuous Turn

이 provider들은 Locomotion Provider 클래스를 상속받은 클래스로, 만약 시스템 전역에서 사용하는 독특한 이동관련 제스처가 있다면 상속받아서 Custom Provider를 만들어서 사용하는 걸 추천.


 

7. Teleportation 

  • 현재 위치에서 지정한 위치로 즉각 이동하는 기능(직선이나 곡선을 그리는 광선으로 목표 위치를 선택하여 이동) 
  • XR Ray Interator : 직선 또는 곡선의 광선을 발사하여 부딪치는 대상에 원거리에서 인터랙션을 시도하는 컴포넌트. 같이 붙어있는 LineRenderer와 XR Interactor Line Visual컴포넌트를 이용해 ray를 시각화 함. Raycast Configuuration 옵션을 통해 광선을 어떤 모양으로 시각화 할지 선택 가능(라인 타입 : 직선, 곡선, 포물선)
XR Interactive Toolkit의 텔레포테이션 기능
  1. Teleportation Area : 설정한 영역 전체에 아무곳에나 텔레포테이션을 할 수 있게 해주는 컴포넌트.(설정한 컬라이더의 모든 표면의 위치로 이동할수 있는 기능.)
  2. Teleportation Anchor : 특정 지점으로만 텔레포트 할 수 있게 해주는 컴포넌트.(대상 오브젝트의 위치로 이동할 수 있는 기능.)

상황에 맞게 적절히 설치해두고 사용하게 되면 시나리오나 구역을 진행하는 형태로 게임을 만드는데 유용하게 쓰일 수 있음.


 

8. UI Interation

  • 유니티의 ui와 인터랙션 할 수 있는 기능. 기존의 유니티 ui를 만들고 추가로 약간의 설정만 하면 아주 쉽게 사용 가능.
  • 손 컨트롤러에 있는 XR Ray Interactor컴포넌트에 Enable Interation With Ui GameObject옵션 활성화 되어 있으면 유니티 ui와 인터랙션 시도함.
  • 캔버스 또한 Render Mode를 World Space로 설정.
  • Tracked Device Graphic Raycaster컴포넌트가 VR디바이스에 광선으로 캔버스를 인터랙션 해주는 애라 있어야 진행됨.(캔버스를 레이캐스팅을 해주는 컴포넌트)
정리 >> VR 디바이스의 광선으로 인터랙션 할 수 있는 설정
  1.  XR UI Input Module컴포넌트가 Event System에 같이 붙어있어야 함.
  2. 인터랙션을 원하는 캔버스에는 Tracked Device Graphic Raycaster컴포넌트를 붙여야 함.
  3. 손 컨트롤러의 XR Ray Interactor 컴포넌트에서 Enable Interaction with UI GameObject옵션을 활성화 함.

 

9. Haptic (진동)

  • 손 컨트롤러에 있는 XR Interactor컴포넌트에서 Haptic Events에서 활성화시키던지 스크립트에서 XR Controller컴포넌트를 찾아서 SendHapticImpulse() 함수 실행해서 실행해주면 됨.

 

10. XR Socket Interactor

  • 일반적으로 컨트롤러와 같이 사용하지 않고 별도의 공간에 설치하는 식으로 사용하는 Interactable을 꽂았다가 뺏다가 할 수 있는 Interactor.
  • Interactor를 가까이 가져다 대면 자동으로 select됬다가, 다시 집어서 빼면 Deselect가 되는 형태로 작동 함.
  • 보통 방탈출 게임같은 컨텐츠를 만들 때 열쇠(interactable)를 찾아서 열쇠구멍(XR Socket Interactor) 에다가 꽂는 형태로 사용.

 

 

728x90

+ Recent posts