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

디바이스맵퍼 컴포넌트

해플라이 인버스 유니티 플러그인의 디바이스맵퍼 컴포넌트는 씬의 게임 오브젝트 및 디바이스 컨트롤러를 통해 인버스3 및 버즈그립과 같은 해플라이 디바이스의 검색, 열기 및 매핑을 관리하도록 설계되었습니다. 이러한 디바이스와 상호 작용하기 위한 통합 인터페이스를 제공하여 런타임 조건에 따라 동적으로 제어하고 구성할 수 있습니다.

개요

디바이스맵퍼의 주요 기능은 소프트웨어와 연결된 Haply 하드웨어 간의 통신을 원활하게 하는 것입니다.

디바이스가 올바르게 초기화되고 매핑되도록 하며, 각 디바이스의 상태를 유지하여 Unity 애플리케이션에서 반응형 인터랙티브 경험을 구현합니다.

디바이스맵퍼 컴포넌트

장치 정보 투표

성능과 실시간 데이터 정확도의 균형을 맞추기 위해 디바이스맵퍼는 폴링 메커니즘을 사용하여 전원 공급 상태, 본체 방향과 같은 특정 디바이스 정보를 업데이트합니다. 본체 방향. 폴링 동작은 다음 모드로 제어됩니다:

  • 투표 모드:

    • 수동: 이 모드에서는 사용자 또는 개발자가 명시적으로 요청하는 경우에만 디바이스 정보가 업데이트됩니다. 이 모드는 성능 친화적이며 실시간 업데이트가 중요하지 않은 시나리오에 적합합니다.
    • 한 번: 이 모드는 디바이스를 연 직후 디바이스 정보를 한 번만 업데이트합니다. 초기화 시 디바이스 상태의 스냅샷을 제공하므로 초기 조건을 설정하는 데 유용합니다.
    • 연속: 이 모드에서는 컴포넌트가 지정된 간격으로 장치 정보를 지속적으로 업데이트합니다. devicesInfoPollDelay 설정으로 변경합니다. 이 모드는 최신 정보를 보장하지만 설정 또는 디버깅 단계에서만 사용하는 것이 좋습니다.
  • 투표 지연: : The devicesInfoPollDelay 설정은 연속 모드에서 적용할 수 있으며, 디바이스 정보의 자동 업데이트 간격을 초 단위로 정의합니다. 허용되는 최소 지연 시간은 0.5초이며, 햅틱 떨림의 위험을 최소화하기 위해 최소 1초를 권장합니다. 개발자는 이 설정을 신중하게 관리하여 적시 데이터의 필요성과 잠재적인 성능 영향 간의 균형을 맞춰야 합니다.

경고

지속적인 폴링은 잦은 업데이트로 인해 햅틱 피드백 시스템의 성능과 반응성을 방해할 수 있는 햅틱 떨림을 유발할 수 있습니다.

준비 이벤트

그리고 DeviceMapper 컴포넌트가 트리거되면 Ready 이벤트가 발생하면 연결된 모든 장치가 열리고 매핑됩니다. 이 이벤트는 다음과 같은 장치 가져오기 메서드 사용을 시작해도 안전하다는 신호를 보냅니다. GetInverse3 또는 GetVerseGrip를 사용하여 장면의 디바이스 컨트롤러를 검색하여 추가 상호 작용을 할 수 있습니다.

장치 목록

Unity 에디터에서 DeviceMapper 는 플레이 모드에서 인스펙터에 표시되는 연결된 디바이스의 동적 목록을 제공합니다. 이 목록에는 장치 유형, ID, 연결 상태 등의 세부 정보가 포함되어 있어 개발자가 장치를 모니터링 및 관리하고 개발 중 문제를 쉽게 해결할 수 있도록 도와줍니다.

디바이스맵퍼