最初にVRTKを使用せずにHTC Viveのアプリケーションを作成し始めました。最近、私たちはVRTKの使用に切り替わり、あるコントローラーがトリガーを保持していて、もう1つのコントローラーが別のボタンを押しているときにいくつかのアクションを実行したいという問題に直面しました。 VRTKを使ってこれをどのように達成するのですか? 我々の現在のコード:第2コントローラのアクションVRTK HTC Vive
controllerMain = SteamVR_Controller.Input((int)trackedObj.index);
controllerSecondary = SteamVR_Controller.Input(SteamVR_Controller.GetDeviceIndex(SteamVR_Controller.DeviceRelation.Leftmost));
// In Update()
if (controllerMain.GetPressDown(triggerButton) && controllerSecondary.GetPressDown(triggerButton))
{
scaleSelected(gameObj); //enlarges selected GameObject based on distance between controllers
}
if (controllerMain.GetPressDown(triggerButton) && controllerSecondary.GetPressDown(gripButton))
{
deleteObject(gameObj); //delete selected GameObject
}
私は両方のコントローラがVRTKのドキュメント内の同じオブジェクトと対話するために使用されているすべての例を見つけることができませんでした。 docs/examplesでは、すべてがイベントベースですが、コードはそうではなく、両方のコントローラでのアクションの例はありません。どのように私たちは同様の行動を達成するのですか?
編集 - VRTK
はい、これは機能しますが(本質的に私たちが持っているもの)、私は特にVRTKソリューションを探しています。どのコントローラが私にイベントを送っているのかをVRTK経由でどのように知ることができますか? – stackErr
@stackErrあなたの質問に誤解して申し訳ありません –