Interhaptics XR SDK (Open XR)
このセクションでは、OpenXR 互換のヘッドセットおよびコントローラーを使用して Unity ゲームで再生するハプティック効果を追加する手順を、ステップバイステップで示します。サンプルシーンとスクリプトはすでに Interhaptics Core SDK に提供されており、Interhaptics Core SDK/Assets/Scenes/SampleScene_XR.unity のパスにあります。
ステップ 1: Interhaptics Core SDK のセットアップ
Interhaptics Core SDK は、ドキュメントに記載のとおり、Unity Package Manager 経由でインストールできます。
ステップ 2: OpenXR 環境のセットアップ
Unity Player Settings を開き、XR Plugin Management タブに移動します。まだインストールされていない場合は、XR Plugin Management をセットアップしてください。"PC" または "Android" プラットフォームを選択し、利用可能なビルドターゲットを確認します。OpenXR をクリックし、適切な OpenXR プラグインのロードを待ちます。
注意: カラースペースを Linear に調整したり、ARM 64 ビルドアーキテクチャを選択したりするなど、OpenXR とは無関係な特定の設定は、Meta Quest や Pico Neo のようなスタンドアロンヘッドセット向けにビルドする際に必要となる場合があります。ただし、これらの設定はこのドキュメントでは扱いません。

プロンプトが表示されたら、"Yes" を選択して新しい input system パッケージをインストールし、Unity を再起動します。

OpenXR サブタブで "Interaction Profiles" セクションを見つけて、使用しているコントローラーのプロファイルを追加します。
OpenXR 環境のセットアップが完了すると、アプリケーションをさまざまな XR プラットフォームでビルドし、コントローラーから/コントローラー上で目的の入力と出力を生成できるようになります。

ステップ 3: カスタムハプティクス用 GameObject の追加
- HapticManager 用の空の GameObject を作成します。必要に応じて永続化することもできます。
- XR Rig に各コントローラーごとに 1 つずつ HapticBodyPart コンポーネントを追加します。Body Part を Hand に設定し、正しい向きに設定します。
- cube などの通常の GameObject を作成します。これは、ハプティックフィードバックのトリガーとして機能します。
- トリガー用 GameObject に SpatialHapticSource コンポーネントを追加します。ここでハプティック効果のオフセット (例: 振動を 2 秒遅延) を設定できます。

ステップ 4: ハプティック効果の追加
- Interhaptics SDK パッケージには 30 を超えるハプティック効果がオーディオとともに含まれており、選択して使用できます。
- Haptic Composer で作成したカスタムハプティック効果をインポートして使用することもできます。
- Unity で再生を押して、コライダーに触れてハプティックフィードバックをトリガーします。
トラブルシューティング:
- ハプティクスが再生されない場合は、選択したランタイムが OpenXR を介したハプティクスをサポートしているかどうかを確認してください。
- XInput と競合する場合は、Interhaptics/Runtime/Platforms ディレクトリから XInput フォルダを削除してください。