Unityは、小さなボールの突き刺しが膜を貫通しないことに気づきました

序章

oculus Quest2では、手の指先のpokeボタンはフィルムが被りません。具体的にはコードで制限しています。詳細はoculus Questパッケージ内のHandPokeLimiterVisual.csを参照してください。その他のオブジェクト(小さなボール)は以下のように実装しています。 ) as pokeInteractors to poke the button. ボタンを押したときにボールはボタンを通過しません。
まず、公式の指先を実現するための論理的な方法について説明します。

公式の指先ポーク制限

ポケマスター - 指先

画像の説明を追加してください
特定のジェスチャ トラッキングは、oculus パッケージの Interaction->Scenes->Examples->PokeExample の場合のモジュール構造を使用します。その中で、HandPokeInteractor が重要な Poke Interactor と Hand Poke Limiter Visual コードをマウントしていることがわかります。
Poke Interactor の赤いボックスで表示されるリストには、指先の座標をインポートする変数 Point Transform が表示されます。ここでは人差し指の座標をインポートします。したがって、ポケのリーダーになりたい場合は、このコードをマウントし、ポケのリーダーの座標をインポートする必要があります。そうすれば、小さなボールの場合をより明確に見ることができます。
画像の説明を追加してください

モールドを着用したくない場合は、リーダーも制限コードを実装する必要があります。手のコードの場合は、主に、押下を検出したときに指先の位置を変更し、範囲内に制限されます。指先が固定されたり手首がランダムに回転したりしないように手首の姿勢を制御しますが、実際の測定後も他の指は無制限に動くことができます。
画像の説明を追加してください
touchPoint は押されたサーフェス、delta は前のフレームの変位、radius は動きを制限する半径、touchnormal はポークの法線、つまり法線に沿って半径の距離だけ移動します。
半径は上記のPoke Interactorのパラメータから変更できます。

ポークキー

poke ユーザーは、poke インタラブルをマウントします。これらは主に、ボタンのホバー、選択の押下などのパラメーターです。
そしてボタンを押したときに発生する各種イベントを設定するInteractable Unityイベントをマウントします。
画像の説明を追加してください

ブロードキャスト

ポーカーとポーキーを設定したら、pointableCanvasModule を設定して、eventSystem とブロードキャスト用の PointableCanvasModule をマウントします。
画像の説明を追加してください

小さなボールケース

ポケリーダー - 小さなボール

小さなボールを作成し、上記の 2 つのコードをその小さなボールにマウントし、その小さなボールを Point Transform にドラッグします。画像の説明を追加してください
Ball Limit のgithub コードを参照して、星を付けてください~

件名キー

上記の 2 つのコードをキーに入力します。
ボールが垂直にボタンを押してより長い距離を移動できるようにするために、ここでのキャンセル選択ノーマルを 1 に変更します。前の 10 の 0.3 では短すぎます。つまり、ボールが下向きに 1 を超えている場合です。ボタン表面では、選択されていないとみなされ、select = true の場合に制限コードが制限されます。
画像の説明を追加してください
ボタンは、さまざまな状態に応じてイベント応答を設定することもできます。このコンポーネントでは、リストにイベントを追加し、ここに応答関数をマウントできます。
たとえば、次の例は、
Buttomvisual は私のコンポーネントの 1 つであり、そのコンポーネントには interactableColorVisual コードがあり、コードにはパブリック関数 synHover() と synSelect() があります。
このリスト内のコンポーネントをドラッグ アンド ドロップし、右側で応答するコードと対応する関数を選択します。
画像の説明を追加してください

ブロードキャスト

同様に、公式モジュールと同様に、ブロードキャストを設定する必要があります。上のスクリーンショットの設定を参照してください。

おすすめ

転載: blog.csdn.net/Carol_learning/article/details/130810855