本文へスキップ

←目次ページに戻る

2.0.0 変更履歴

依存関係​

  • Haply Inverse ランタイム 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に置き換えました。
  • Run(callback) メソッドをサブスクリプション用の高頻度イベントとして DeviceStateChanged(device)に置き換えました。
  • hapticThread.onInitialized イベントを Inverse3.DeviceOpenedに置き換えました。
  • handleThread.onInitialized イベントを VerseGrip.DeviceOpenedに置き換えました。
  • カーソル position および velocityは、もはやハプティックコールバックの引数として渡されません。
  • スレッドセーフなマネージド型 AdditionalDataを削除し、ユーザー定義のデータ処理方式に置き換えました。

新機能​

  • 接続されたデバイスの状態を視覚化するモニタリングウィンドウ([Window] > [Haply ] > [Connection Monitor])
  • 必要なGameObjectをすべて含め、シーンを手軽に設定できる「Haply 」作成メニュー(GameObject >Haply > Haptic Rig)
  • Inverse3 およびVerseGripデバイスを自動的に割り当てるDeviceMapper
  • クライアント構成コンポーネント:特定の接続ユースケースや、希望するハプティックループの 周波数を制御します。
  • 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: ハンドネスに応じた作業空間の中心座標の提供
  • ヴァースグリップ コンポーネント (HandleThread の代替): 高周波スレッドからVerseGripの方向を取得し、 ボタンの状態や装着状態の情報も含まれます。
    • 高周波で実行される別のハプティックスレッドで発生する VerseGrip.DeviceStateChanged イベント
    • ハプティックスレッド内で使用する VerseGrip.GetButton, VerseGrip.GetButtonDown, VerseGrip.GetButtonUp メソッドとして、 UnityEngine.Inputと同じロジックに従います。
    • シーンおよびUIとのインタラクションに関連して、メインスレッドで発生するUnityイベント: VerseGrip.ButtonDown, VerseGrip.ButtonUp, VerseGrip.Attached, VerseGrip.Detached
  • シーン内のカーソルの位置と方向を可視化し、 モデルを管理するためのInverse3CursorおよびVerseGripCursorコンポーネント
  • ワークスペースのサイズ変更や位置指定を容易にする「HapticOrigin」GameObject
  • ギズモを用いた装置の位置、向き、および利き手の可視化
  • ギズモを用いた到達可能作業領域の可視化
  • フィルタリングされたロギング
  • チュートリアルのサンプル
  • 実験用サンプル

バグの修正および改善点​

  • デバイスを検出した際、Inverse3 の利き手情報を提供します。利き手を確認するためにデバイスを開ける必要はもうありません。
  • デバイスの自動検出(Haply のInverse ServiceおよびDeviceMapperを使用)
  • ハプティックループの周波数を約1000Hzから約4000kHzに引き上げる

←目次ページに戻る