先日書いたように、Quest2アプリ開発でMRTKを使うと何かと便利です。
MRTKを使った時のQuest2での移動は、デフォルトでテレポート移動となりますが、このテレポート移動の挙動を変更する方法についてです。
MRTKの設定を変えたり、挙動を確認したりする時には、Profilerを見ていくのが定石となります。
ProfilerからVRのテレポート時に使われていそうなアセットを探すと‥
この「ParabolicTeleportPointer」プレファブが使われていそうなことがわかります。
前回の記事 の最後で説明したように、Oculus Linkを使ってEditorデバッグを行うと、実際にシーン上にParabolicTeleportPointerがインスタンス化されているのも確認できるので、間違いなさそうですね!
では、ParabolicTeleportPointerプレファブの設定を見てみましょう。
いろいろ設定変更が出来そうですね。例えば左右に回転する時の回転量は「Rotation Amount」で、デフォルトでは90度となっています。
ところが、プレファブの設定を変更しようとしても編集不可(immutable)になっているケースが多いかと思います。
これは、MRTKをUPM経由でのインポートしている際に起こります。UPMでインポートされたアセットは読み取り専用となり、編集できません。
なので、プレファブ自体をAssets以下のどこかにコピーして編集できるようにしましょう。
次に、設定変更したプレファブをProfilerに設定する方法です。
これはMRTKあるあるですが、デフォルトのProfilerは編集できないので、「DefaultMixedRealityInputPointerProfile」をcloneして編集できるようにしましょう。
その上で、ParabolicTeleportPointerを編集したものに入れ替えます。
いろいろカスタマイズして自分好みの挙動に変更していきましょう!