メインコンテンツへスキップ

← 戻る:インデックスページ

2.1.1 変更履歴

依存関係​

  • haply- inverse-c.dllをバージョン 2.1.1 に更新しました(Inverse SDK が 2.1 以上である必要があります)
  • Haply.Inverse.dllをバージョン 2.1.1 に更新しました
  • com.unity.xr.core-utilsをバージョン 2.3.0 に追加しました
警告

Unity の2022.1.0f1 より前のバージョンとの互換性が失われました。 互換性の問題が発生した場合は、より新しいバージョンに更新してください。

破壊的な変更​

  • Inverse3 および VerseGrip は、ConnectionStateChanged イベントの第1引数として device を渡すようになりました
    • ConnectionStateChanged(state, prevState) > ConnectionStateChanged(device, state, prevState)
    • ConnectionStateChangedAsync(state, prevState) > ConnectionStateChangedAsync(device, state, prevState)
  • DeviceMapper の State プロパティが読み取り専用に変更されました

新機能​

  • Inverse3Bodyコンポーネントは、Inverse3 デバイスのボディの向きを、指定された GameObject に適用します。
  • Inverse3:
    • 「デバイスデータ(インスペクター)」には、デバイスに送信された ControlMode そして最後の Force、Position、または Angles が表示されます。
    • JointsAngles および JointsAngularVelocity。
    • Powered は、デバイスが現在電源が入っているかどうかを示します。
    • PowerSupplyStatusChanged Unityのイベントは、電源供給の状態が変化するたびに発生します。
    • Orientation は、Inverse3 デバイスの現在の向きを取得します。
    • OrientationChangedAsync イベントは、ボディの向きが変わるたびに発生します。
    • RequestOrientation() は、ボディの向きを手動で指定します。
    • ControlMode は、現在の制御モード(CursorForce、CursorPosition、JointsTorques、JointsAngles)を取得します。
    • ControlModeChanged Unityのイベントは、制御モードが変更されるたびに発生します。
    • ForceOutput、PositionOutput、JointsTorqueOutput、JointsAnglesOutput は、現在の出力を取得します。
    • Release() は、null 信号を送信することでデバイスの制御をリセットします(TryResetForce() (の代わり)。
    • CoordinateConverter は、プリセットファイルまたは直接入力した値を用いて座標変換の設定を定義します。
    • ErrorEvent は、マッピング済みのデバイスで ClientConnection のエラーイベントが追加された際(メインスレッド上で)に発生します
  • ヴァースグリップ:
    • CoordinateConverter は、プリセットファイルまたは直接入力した値を用いて座標変換の設定を定義します。
    • ErrorEvent は、マッピング済みのデバイスで ClientConnection のエラーイベントが追加された際(メインスレッド上で)に発生します
  • デバイスマッパー:
    • 実行時に接続されたデバイスをマッピングします。
    • 各Inverse3 デバイスについて、Inverse3 の「Power Supply」と「Body Orientation」を取得します。
    • DeviceInfoPollingMode のモードは Manual、Once(デフォルト)、または Continuous です
    • devicesInfoPollDelay は、ボディの向きが指定されている場合の安全な最小値 1sec 、それ以外の場合は 0.5sec に設定されます。
    • コンポーネントが有効になったときにのみ初期化されます。
    • フィルタリング済みデバイスのゲッター:
      • GetInverse3Devices(handedness) は、指定された利き手に基づいてフィルタリングされたInverse3 デバイスを取得します。
      • GetVerseGripDevices(handedness) は、指定された利き手に一致するInverse3 デバイスに関連付けられた VerseGripデバイスを取得します。
      • GetInverse3(handedness) は、指定された利き手に一致する最初のInverse3 デバイスを取得します。
      • GetInverse3(verseGrip) は、指定されたVerseGripデバイスに関連付けられたInverse3 デバイスを取得します。
      • GetVerseGrip(inverse3) は、指定されたInverse3 デバイスに関連付けられているVerseGripデバイスを取得します。
  • VerseGripCursor および Inverse3Body コンポーネントにOrientationSettingsが追加されました。
  • VerseGrip.Orientation は VerseGrip.LocalRotation に置き換えます。
  • Inverse3 キャッシュ用の明示的な インバース3データ 型:
    • キャッシュされた状態プロパティ: CursorPosition、JointsAngles、JointsAngularVelocity、Orientation、 GravityCompensation、StatusPowerSupply、ConfigTorqueScaling
    • キャッシュされた制御出力 プロパティ: ControlMode、CursorForceOutput、CursorPositionOutput、JointsTorqueOutput、 JointsAnglesOutput。
    • coordinateConverter は、指定された座標系において、受信データと送信データを変換するために使用されます。
    • キャッシュはクライアントを購読しており、自動的に更新されます。
    • キャッシュの更新時にイベントを発生させます。
  • 3つのfloat型メンバー j0、j1、j2 を持つ明示的な Joint3 構造体(JointsSetTorque および JointsSetAngles (で使用する)。
  • VerseGrip キャッシュ用の明示的な ヴァースグリップデータ 型:
    • キャッシュされた状態プロパティ: Orientation、IsAttached、ButtonCount。
    • キャッシュされたボタンの状態。
    • キャッシュはクライアントを購読しており、自動的に更新されます。
    • coordinateConverter は、指定された座標系で受信データを変換するために使用されます。
    • キャッシュの更新時にイベントを発生させます。
  • 座標変換(UnityConvert (代替):デバイスの座標空間を Unity の座標空間に変換する方法を個別に定義します:
    • Inverse3CoordinateConverter は、カーソルの座標とボディの向きを変換します。
    • VerseGripCoordinateConverter は、VerseGrip の向きを変更します。
    • Vector3Settings および QuaternionSettings 構造体は、座標系変換の設定を保存するために使用されます。
    • 「コンポーネント」または「Assets」メニューから、Inverse3 およびVerseGrip用のデフォルトの座標変換プリセットを作成します。
      • Inverse3(アーム・フォワード・ポーズ)変換:アームをユーザー側に向け、LED アイコンが 側面に配置されているデバイス用の設定を持つ変換。
      • Inverse3(アイコン・フォワード・ポーズ)変換:LED アイコンをユーザー側に向け、アームが 側面に配置されているデバイス向けの設定を持つ変換。
      • VerseGrip(デフォルト)変換:画面を正面に向け、ユーザー入力ボタンが上部にあるデバイス向けの変換。
  • クライアントコネクション は、デバイスを開いた時点で FirmwareVersion、GravityCompensation、TorqueScaling を取得します。
  • コネクションモニター は GravityCompensation、TorqueScaling、PowerSupply を表示します。

バグ修正​

  • Inverse3.DeviceStateChanged が JointsSetTorque および JointsSetAngles 発火する問題を修正しました
  • 切断後にデバイスが自動的に再接続されるよう修正しました
  • ビルド終了時にクライアントのポーリングスレッドをクリーンアップするように修正した
  • バグの修正および安定性の向上
  • シーンのアンロード/ロード後のデバイスマッピングを修正

非推奨​

  • ClientConnection.Configuration.HapticFrequencyHz は HapticPollFrequency に置き換えられました
  • ClientConnection.Configuration.PollDelayNs は HapticPollDelayNs に置き換えられました
  • DeviceBehaviour.ConnectionStateChangedAsync は、次回のメジャーリリースで削除される予定です
  • Inverse3.Position は Inverse3.CursorPosition に置き換えられました
  • Inverse3.LocalPosition は Inverse3.CursorLocalPosition に置き換えられました
  • Inverse3.TryResetForce() は Release() に置き換えられました
  • VerseGrip.LocalRotation は VerseGrip.Orientation に置き換えられました
  • JointsSetTorque(Vector3) は JointsSetTorques(Joint3) に置き換えられました
  • JointsSetTorque(float, float, float) は JointsSetTorques(float, float, float) に置き換えられました
  • JointsSetAngles(Vector3) は JointsSetAngles(Joint3) に置き換えられました

← インデックスページに戻る