VR日記その19 -XR Plugin ManagementとXR Interaction Tool Kitを使ってみる
「今だから聞きたい 『一番新しい xRアプリの作り方』 2020年 最新版」というスライドが紹介されていたので見てみた。
基礎的な事項が紹介されていたが、XR Plugin Management を使った環境構築をしたことが無かったので試しにやってみた。(今まで使っていたのは Oculus Integration。)
①インポートと設定
Package Managerよりインポートを行う。XR Plugin Managementがビルド設定をスムーズに行うためのもので、XR Interaction Tool KitがコントローラなどのVR空間での操作をしやすくするもの…だと思う。
設定はスライドのp9~10の通りに行った。
Project Settingsを開き、PlayerよりMinimum API Levelを6.0に設定、XR Plug-in ManagementからOculusにチェックを入れた。(OculusQuestを使用しているため)
OculusにはMultiPassを選択し、V2 Signinfgにチェックを入れた。
試しにBuildをしてみて成功することを確認し、中身の設定に取り掛かった。スライドの22の通り、カメラをVR用に変更した。
その後コントローラを準備する…と思ったが手やコントローラのモデルが無かったので、スライド35にあるXR Interaction Toolkit Examplesを流用することにした。
https://github.com/Unity-Technologies/XR-Interaction-Toolkit-Examples
サンプルシーンで設定の仕方を確認し、次いでにコントローラのプレハブを拝借をしてプロジェクトを作成していった。
②作ったもの
VRで神経衰弱(マッチングゲーム)したらどうなるんだろうとふと思ったので作ってみることに。まだ未完だが、こんな感じの物を。
箱と中のオブジェくとで1つのセットとした。箱にはアニメーションを設定し、開くようにした。さらにXR Sinple Interactableスクリプトを設定し、クリックするとオブジェクトに設定されたスクリプトが動くようにした。
ついでに効果音をだすAudioSourceも箱に設定している。
オブジェクトの方に設定されたスクリプトでは、動作した時に自分の色と形(個別に設定)、そして自分と同じプレハブ内にある箱をGameManagerに渡すようにした。
スクリプト全体はこんな感じ。
GameManagerではマッチングの判定やスコア管理を行っている。先のながれで呼び出された関数はマッチング判定を行っている。最初の1回目は値を保持するだけ、2回目で一致orしないで処理を行っている。
正しいと効果音を再生する。(動画にはないがパーティクルも再生するようにした。)
間違っていると状態をリセットする。
大雑把にはこんな感じで出来ている。
現在は配置をランダムにするのと、種類や数をもっと増やすことを検討している。今の方法だと出現するオブジェクトをランダムにするのが大変(13種類なら13種のプレハブを用意する必要がある。トランプの通りにすると52種を用意する必要があり面倒)のでどうしようか検討中。
この記事が気に入ったらサポートをしてみませんか?