本文へスキップ

DeviceMapper コンポーネント

Haply Inverse UnityプラグインのDeviceMapperコンポーネントは、Inverse3 やVerseGripなどのHaply デバイスを検出、マッピング、接続し、シーン内のGameObjectやDeviceControllersとともに管理できるように設計されています。 このコンポーネントは、これらのデバイスとやり取りするための統合インターフェースを提供し、実行時の状況に応じて動的な制御や設定を可能にします。

概要​

DeviceMapperの主な機能は、接続されたデバイスのリストを表示し、それらをシーン内のDevice Controllersにマッピングすることです。

DeviceMapper コンポーネント

基本設定​

DeviceMapperコンポーネントには、次のようなデフォルト設定が含まれています:

  • デバイスのリストを自動取得:このオプションを有効にすると、DeviceMapperは起動時にHTTPリクエストを使用して、接続されているデバイスのリストを自動的に取得します。
  • 自動割り当て:有効にすると、DeviceMapperが接続されたデバイスをシーン内のデバイスコントローラーに自動的にマッピングします。
  • 自動接続:有効にすると、DeviceMapperがデバイスとのWebSocket接続を自動的に確立します。

詳細設定​

DeviceMapper の詳細設定

Show Advanced Settings ボタンをクリックすると デバイスマッパー コンポーネントの追加設定を確認できます:

  • デバイスリストURI: 接続済みのデバイスの一覧を取得するためのURIです。デフォルト値は http://localhost:10000/3.1/devicesです。
  • フェッチ再試行遅延: 最初のリクエストが失敗した場合、デバイス一覧を再度取得するまで待機する時間(秒単位)です。デフォルト値は 5です。
  • サーバーURI: デバイスサーバーに接続するためのURIです。デフォルト値は ws://localhost:10001です。

統計​

Statistics フォールドアウトを広げると デバイスマッパー接続速度やJSONペイロードの内容に関する統計情報を提供します。これにより、開発者はデバイスの監視や管理が可能になり、開発中のトラブルシューティングもより容易に行えるようになります。

「Ready」イベント​

DeviceMapper コンポーネントは、接続されたすべてのデバイスがマッピングされ、接続されると Ready イベントを発生させます。 このイベントは GetInverse3Controller または GetVerseGripControllerこのようなデバイスのゲッターメソッドを安全に使用できるタイミングを示しており、その後の操作のためにシーンのデバイスコントローラーを取得することができます。

デバイス・コントローラのリスト​

Unityエディタで DeviceMapperは、接続されたデバイスに関連付けられたシーンの「デバイスコントローラー」リストを動的に提供します。 このリストには、デバイスの種類、ID、接続状態などの詳細情報が含まれます。

デバイス一覧

上級者向け機能​

スクリプト内でDeviceMapperコンポーネントを使用して、デバイスを手動で一覧表示、マッピング、接続する方法については、手順を詳しく解説した「デバイスマッピング」チュートリアルを参照してください。