0

私のカスタム コントローラーには 3 つのポインターがあります。

  1. レイポインター(動作良好)
  2. ポケポインタ(動作良好)
  3. グラブ ポインター (SpherePointer.cs コンポーネントを含む) が機能しない

MRTK 2.3 では、それらすべてが機能していました。シーンは何も変更せず、MRTK 2.4 に更新しました。

MRTK 2.4 ではグラブ ポインターが機能しなくなりました...nearGrabbable オブジェクトの近くに移動すると、GrabPointer として認識されないため、グラブできません (エディターで黄色のデバッグ レイが描画されていません) )。

しかし、Articulated Hand GrabPointer を使用しているときは機能します。ということで、プレハブをコピーしてポーズアクションとポインターアクションだけ変えてみたらダメでした。SpherePointer を使用するときに何が欠けていますか?

コントローラーは、次のようにポーズを変更します。

CoreServices.InputSystem.RaisePoseInputChanged(InputSource, ControllerHandedness, Interactions[i].MixedRealityInputAction, controllerPose);
                

ボタンを押すと、次のようになります。

CoreServices.InputSystem?.RaiseOnInputDown(InputSource, ControllerHandedness, Interactions[i].MixedRealityInputAction);
CoreServices.InputSystem?.RaiseOnInputUp(InputSource, ControllerHandedness, Interactions[i].MixedRealityInputAction);

編集:

バグを再現するためのカスタム入力デバイスへのリンク: https://wetransfer.com/downloads/27b3f2b90c18516dc47a35cf645dc25820200728111556/10711a

  1. 空の新しい Unity プロジェクトを作成します (2018.4.X、ただし 2019.4.X と同じ)
  2. MRTK 2.4 をインポートする
  3. カスタム入力パッケージをインポートする
  4. Bug Scene を開き、カスタム入力デバイスで球体ポインターが機能していないことを確認します。
4

1 に答える 1