docs.unity3d.com
    目次を表示する/隠す

    XR Controller (Action-based)

    Input System から XR Interaction ステートに送られる選択などのアクションを使用して、追跡される入力コントローラーデバイスの特徴値を解釈します。加えて、追跡対象デバイスの現在のポーズ値をゲームオブジェクトのトランスフォームに適用します。

    この動作を行うには、Edit > Project Settings > Player の Active Input Handling 設定で Input System を有効にして、入力値の読み取りを可能にする必要があります。それぞれの入力アクションでも、アクションの現在値の読み取りを有効にする必要があります。Input Action Asset の入力アクションに対する外部からの参照は、デフォルトでは有効になっていません。

    Select Action、Activate Action、UI Press Action の各プロパティには、それぞれ Select Action Value、Activate Action Value、UI Press Action Value という対応するプロパティがあります。これらのアクションの アクションタイプ は、前者が普通は Button タイプのアクションで、後者は任意の Value タイプのアクションです。このコンポーネントはフレームごとに Select Action の実行状況を読み取り、Select インタラクションステートがアクティブかどうかを把握するとともに、Select Action Value から float 値を取得します。Select Action Value が設定されていない場合は、float 値は代わりに Select Action から読み取られます。このプロセスは Activate アクションと UI Press アクションでも同様です。

    [!ノート] 2 種類の Input Action (入力アクション) があることで、開発者は例えば Select Action と <XRController>{LeftHand}/gripPressed のバインディングパスを設定し、Select Value Action と <XRController>{LeftHand}/grip のバインディングを設定することができます。コントロールが押されるときのしきい値は、Select Action に使用される gripPressed のプラットフォームによって決定され、軸の値は grip から読み取ることができます。しきい値を自身で制御する場合は、両方のアクションを単一の Value タイプの Select Action に統合し、想定される Axis コントロールタイプと grip のバインディングパスを設定します。また、Press インタラクションを追加して、Press Point を調節することができます。

    アセットをインポートしてこのコンポーネントの設定を効率化する手順については、Starter Assets サンプルを参照してください。このサンプルには、このコンポーネントの設定を助ける入力アクションとプリセットのデフォルトセットが含まれています。

    Controller (Action-based) コンポーネント

    プロパティ 説明
    Update Tracking Type コントローラーがトラッキング入力をサンプリングするフレーム内の時間。
     Update Update Tracking Type を Update に設定すると、MonoBehaviour Update ステップの間でのみトラッキング入力をサンプリングします。
     Before Render Update Tracking Type を Before Render に設定すると、レンダリング直前のステップの間でのみトラッキング入力をサンプリングします。
     Update And Before Render Update Tracking Type を Update And Before Render に設定すると、フレーム内における上記のどちらのタイミングでもトラッキング入力をサンプリングします。
    Enable Input Tracking 対象のコントローラーで入力ポーズトラッキングを有効にするかどうか。有効にすると、Unity はフレームごとにコントローラーデバイスの現在のトラッキングポーズ入力を読み取ります。
    現在の入力を読み取るのではなく、記録したポーズ入力を再生するなどの方法で、手動でコントローラーのステートを設定する場合は、このオプションを無効にすることができます。
    Position Action
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference このゲームオブジェクトに対する位置トラッキングに使用する Input System アクション。Vector3Control コントロールである必要があります。
    Rotation Action
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference このゲームオブジェクトに対する回転トラッキングに使用する Input System アクション。QuaternionControl コントロールである必要があります。
    Tracking State Action
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference このゲームオブジェクトの位置と回転が更新されるときに、トラッキングステートを取得する Input System アクション。位置や回転が設定されていない場合は、追跡対象デバイスのトラッキングステートにフォールバックして位置または回転アクションを進めます。IntegerControl コントロールである必要があります。
    Enable Input Actions 対象のコントローラーで XR Interaction イベントの入力を有効にするかどうか。有効にすると、Unity はフレームごとにコントローラーデバイスの現在の入力を読み取ります。
    現在の入力を読み取るのではなく、記録した入力を再生するなどの方法で、手動でコントローラーのステートを設定する場合は、このオプションを無効にすることができます。
    Select Action
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference インタラクタブルの選択に使用する Input System アクション。ボタンのようなインタラクションか ButtonControl コントロールを伴うアクションである必要があります。
    Select Action Value 任意で設定し、設定なしの場合は Select Action を使用します。
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference 異なる場合は、Select Action の float 値を読み取る Input System アクション。AxisControl または Vector2Control コントロールである必要があります。
    Activate Action
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference 選択されているインタラクタブルのアクティベートに使用する Input System アクション。ボタンのようなインタラクションか ButtonControl コントロールを伴うアクションである必要があります。
    Activate Action Value 任意で設定し、設定なしの場合は Activate Action を使用します。
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference 異なる場合は、Activate Action の float 値を読み取る Input System アクション。AxisControl または Vector2Control コントロールである必要があります。
    UI Press Action 任意で設定し、Enable Interaction with UI GameObjects が有効な場合に XR Ray Interactor によって使用されます。
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference Canvas UI インタラクションに使用する Input System アクション。ボタンのようなインタラクションか ButtonControl コントロールを伴うアクションである必要があります。
    UI Press Action Value 任意で設定し、設定なしの場合は UI Press Action を使用します。
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference 異なる場合は、UI Press Action の float 値を読み取る Input System アクション。AxisControl または Vector2Control コントロールである必要があります。
    Haptic Device Action
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference 触覚インパルスを送信するデバイスの特定に使用する Input System アクション。アクションを推進しているアクティブなコントロールに関係するあらゆるコントロールタイプ。
    Rotate Anchor Action 任意で設定し、Anchor Control が有効な場合に XR Ray Interactor によって使用されます。
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference インタラクターのアタッチポイントの回転に使用する Input System アクション。Vector2Control コントロールである必要があります。回転の入力として X 軸を使用します。
    Translate Anchor Action 任意で設定し、Anchor Control が有効な場合に XR Ray Interactor によって使用されます。
     Use Reference 付随するフィールドを使用して外部的に定義されるアクションへの参照を有効にします。
     Reference インタラクターのアタッチポイントをインタラクターに近付けたり、反対に遠ざけたりするために使用される Input System アクション。Vector2Control コントロールである必要があります。移動の入力として Y 軸を使用します。
    Model Prefab このコントローラー用に示され、この動作によって自動でインスタンス化されるコントローラーモデルのプレハブ。
    この動作は、開始時に自動でプレハブのインスタンスを modelParent (下記参照) の子としてインスタンス化します。ただし、model (下記参照) がすでに設定されている場合は、この値は無視されます。
    Model Parent この動作でモデルプレハブがインスタンス化されるときに、その親として使用されるトランスフォーム。
    自動でインスタンス化され、未設定であれば Awake に設定されます。この設定によって以前のオブジェクトが自動で除去されることはありません。
    Model シーン内に存在するコントローラーモデルのインスタンス。modelPrefab (上記参照) を使用するのではなく、既存のオブジェクトに設定することができます。
    設定する場合は、この動作の子ゲームオブジェクトを参照します。そうすると、コントローラーのポーズで更新されるようになります。
    Animate Model インタラクションイベントに応じてモデルをアニメーション化するかどうか。有効にすると、選択時または選択解除時に名前付きのアニメーショントリガーがアクティブになります。
    トップに戻る
    Copyright © 2023 Unity Technologies — 商標と利用規約
    • 法律関連
    • プライバシーポリシー
    • クッキー
    • 私の個人情報を販売または共有しない
    • Your Privacy Choices (Cookie Settings)