주요 내용으로 이동

←목차로 돌아가기

2.0.0 업데이트 내역

의존성​

  • Haply 인버스 런타임 SDK 2.0.0 버전
    • haply-inverse-service.exe: 최소 2.0.0 버전 (백그라운드에서 실행되어야 함)
    • haply-inverse-c.dll: 2.0.0 버전 (포함됨)
  • Haply.Inverse.dll: 2.0.0 버전 (포함됨)

파괴적인 변경​

  • HapticThread 와 HandleThread 를 Inverse3VerseGrip으로 대체하십시오.
  • 사용 DeviceStateChanged(device) 고빈도 구독 이벤트 대체 Run(callback) 방법.
  • 将 hapticThread.onInitialized 사건을 다음으로 대체합니다. Inverse3.DeviceOpened。
  • 将 handleThread.onInitialized 사건을 다음으로 대체합니다. VerseGrip.DeviceOpened。
  • 촉각 피드백 매개변수에 커서가 더 이상 포함되지 않습니다. position 와 velocity。
  • 스레드 안전성이 보장된 관리형 코드를 제거했습니다. AdditionalData,대신 사용자가 직접 데이터 처리 방식을 정의하도록 변경했습니다.

새로운 기능​

  • 모니터링 창(Window > Haply > Connection Monitor)은 연결된 장치의 상태를 시각적으로 확인하는 데 사용됩니다.
  • Haply 메뉴를 생성하면(GameObject > Haply > Haptic Rig), 한 번의 클릭으로 씬 설정을 완료하고 필요한 모든 GameObject를 자동으로 추가할 수 있습니다.
  • DeviceMapper는Inverse3 및 VerseGrip 장치를 할당하는 데 사용됩니다.
  • ‘클라이언트 구성’ 구성 요소는 특정 연결 시나리오에 사용되며, 필요한 햅틱 루프 주파수를 제어할 수 있습니다.
  • Inverse3 구성 요소 (HapticThread 대체), Inverse3 기기의 위치를 파악하고, 고주파 스레드에서 힘을 제어하는 데 사용됩니다.
    • Inverse3.DeviceStateChanged 이 이벤트는 고주파로 실행되는 별도의 터치 처리 스레드에서 발생합니다.
    • 장치의 국소 좌표계를 장면의 세계 좌표계로 자동으로 변환하며, 이에 사용되는 스레드 안전 캐시 변환 행렬은 다음과 같습니다. LocalToWorldMatrix 와 WorldToLocalMatrix。
    • Inverse3.LocalPosition 와 Inverse3.LocalVelocity 장치의 국소 공간에서 처리되지 않은 커서 좌표를 제공합니다.
    • Inverse3.Position 와 Inverse3.Velocity 세계 좌표 변환을 거친 커서 좌표를 제공합니다.
    • Inverse3.SetLocalForce 와 Inverse3.SetLocalPosition 장치를 국소 좌표계를 통해 제어하는 방법.
    • Inverse3.SetForce 와 Inverse3.SetPosition 세계 좌표를 통해 장치를 제어하는 방법.
    • Inverse3.JointsSetTorque,모터를 직접 제어하는 데 사용됩니다.
    • Inverse3.JointsSetAngles,장비의 암 위치를 직접 제어하는 데 사용됩니다.
    • Inverse3.WorkspaceCenter 좌우 방향에 따라 작업 공간의 중심 좌표를 제공합니다.
  • VerseGrip 구성 요소 (HandleThread 대체),고주파 스레드에서 VerseGrip의 자세와 버튼 상태 및 흡착 상태를 가져오는 데 사용됩니다.
    • VerseGrip.DeviceStateChanged 이 이벤트는 고주파로 실행되는 별도의 터치 처리 스레드에서 발생합니다.
    • VerseGrip.GetButton、VerseGrip.GetButtonDown 와 VerseGrip.GetButtonUp 촉각 스레드 내에서 사용되는 방법이며, 그 논리는 UnityEngine.Input 일관성을 유지하십시오.
    • Unity 이벤트는 메인 스레드에서 발생하며, 씬 및 UI 상호작용에 사용됩니다:VerseGrip.ButtonDown、VerseGrip.ButtonUp、VerseGrip.Attached, 그리고 VerseGrip.Detached。
  • Inverse3Cursor 및 VerseGripCursor 컴포넌트는 씬 내에서 커서의 위치와 자세를 시각화하고, 모델을 관리하는 데 사용됩니다.
  • HapticOrigin GameObject는 작업 공간의 확대/축소 및 위치 지정을 용이하게 합니다.
  • 기즈모를 사용하여 장치의 위치, 자세 및 좌우 방향을 시각화할 수 있습니다.
  • 기즈모를 사용하여 작업 공간의 가시 영역을 시각화할 수 있습니다.
  • 로그 필터링 기능.
  • 튜토리얼 예시.
  • 실험용 예시.

버그 수정 및 개선 사항​

  • 기기가 감지되면 즉시 Inverse3 의 좌우 방향 정보가 제공되므로, 기기를 직접 열어 확인할 필요가 없습니다.
  • 장치 자동 감지 ( Haply 의 Inverse Service 및 DeviceMapper활용)
  • 촉각 루프 주파수를 약 1000Hz에서 약 4000kHz로 높입니다.

←목차로 돌아가기