주요 콘텐츠로 건너뛰기
버전: 2.2.0

Inverse3 및 VerseGrip 커서

하플리 인버스 유니티 패키지는 인버스3 및 버즈그립 디바이스를 위한 특수 커서 컴포넌트를 도입하여 유니티 환경 내에서 정밀한 제어와 상호 작용을 가능하게 합니다. 이러한 컴포넌트인 Inverse3 커서VerseGrip 커서는 해당 디바이스 컨트롤러의 데이터를 기반으로 게임 오브젝트의 위치와 회전을 동적으로 조정하도록 설계되었습니다.

개요

커서 컴포넌트는 실제 Haply 디바이스와 Unity의 가상 게임 오브젝트 사이의 다리 역할을 하며, 디바이스의 위치 및 회전 데이터를 게임 오브젝트의 움직임과 방향으로 변환합니다. 이러한 변환을 통해 사용자는 가상 환경과 직관적인 방식으로 상호 작용할 수 있으며, 물리적 움직임을 가상의 반응으로 반영할 수 있습니다.

커서 동작 기본 클래스

커서 구성 요소의 핵심은 CursorBehaviour 클래스에서 공유되는 기본 기능을 제공합니다. Inverse3Cursor 그리고 VerseGripCursor. 여기에는 디바이스 연결, 모델 인스턴스화 및 가시성 제어 관리가 포함됩니다.

주요 속성 및 메서드

  • 장치: 커서를 제어 장치에 연결하며, 런타임에 자동으로 설정됩니다.
  • 모델 프리팹: 의 자식으로 자동 인스턴스화되는 커서 모델에 대한 프리팹을 지정합니다. ModelParent.
  • ModelParent: 인스턴스화된 모델 프리팹의 부모 트랜스폼을 정의합니다. 설정하지 않으면 기본적으로 커서의 트랜스폼이 사용됩니다.
  • 모델: 씬의 기존 커서 모델을 직접 참조합니다. 설정하면 다음과 같은 인스턴스화를 우회합니다. ModelPrefab.
  • HideControllerModel: 커서 모델의 가시성을 제어하여 게임플레이 요구 사항에 따라 동적으로 표시/숨길 수 있도록 합니다.
  • 반지름: 반경: 커서 모델이 구인 경우 모델의 메시 바운드에서 계산된 커서 모델의 반경을 나타냅니다.

참고: 예상치 못한 동작을 방지하려면 커서 컴포넌트에서 커서 모델을 올바르게 참조하는 것이 중요합니다.

커서

햅틱 릭으로 생성된 기본 커서 모델에는 세 축을 나타내는 컬러 점이 있습니다: 앞으로 (파란색), 위로 (녹색), 오른쪽 (빨간색). 이 디자인은 가상 환경 내에서 디바이스의 방향을 시각화하는 데 도움이 됩니다. 보정된 버즈그립의 경우 앞으로는 포 인팅 방향과 정렬되어야 하고 위쪽은 위쪽 면과 정렬되어야 합니다.

Inverse3 커서 컴포넌트

Inverse3Cursor 는 특히 Inverse3 디바이스를 지원하며, 커서의 로컬 위치가 디바이스의 물리적 위치를 반영하도록 Unity에서 커서의 로컬 위치를 업데이트합니다.

그리고 PositionSmoothness 설정을 사용하면 커서의 움직임 부드러움을 조정하여 커서의 물리적 움직임에 대한 반응성을 제어함으로써 사용자 경험을 향상시킬 수 있습니다.

VerseGrip 커서 컴포넌트

VerseGripCursor 는 VerseGrip 디바이스로 기능을 확장하여 디바이스의 물리적 회전을 반영하도록 Unity에서 커서의 회전을 업데이트합니다.

그리고 useDeviceLocalSpace 설정을 사용하면 월드 또는 부모 오브젝트 방향 사이에서 커서 정렬을 선택할 수 있어 디자인 유연성이 향상됩니다.

그리고 RotationSmoothness 설정은 커서의 회전 부드러움을 제어하여 개발자가 실제 버즈그립 방향 변화에 대한 커서의 반응성을 미세 조정할 수 있도록 합니다.

구현 세부 정보

초기화 시 커서 컴포넌트는 지정된 커서 컴포넌트를 인스턴스화합니다. ModelPrefab 의 자녀로서 ModelParent 만약 Model 가 할당되지 않아 씬의 시각적 표현을 보장합니다. 이러한 컴포넌트는 관련 컴포넌트와 동기화됩니다. 디바이스 컨트롤러를 클릭해 커서의 위치와 회전을 실제 기기의 움직임에 따라 실시간으로 조정합니다.

두 컴포넌트를 동일한 게임 오브젝트에 부착하여 위치와 회전을 제어하거나 별개의 사용 사례에 맞게 분리할 수 있어 개발자는 Unity에서 몰입형 햅틱 경험을 제작할 수 있는 다양한 툴셋을 사용할 수 있습니다.