Unity2018.3.5fにVRTKをセットアップする

VRゲーム開発の入り口

VRTKはUnityで簡単にVRゲームを作成するためのツールです
現在は

  • Asset Storeからは v3.2.0
  • GitHubからは v3.2.1 

がダウンロードできるようです

ただ、現状のVRTKはいろいろトラップがあるようで・・・
Unity Asset Storeで配布されているもの、GitHubのReleasesページのものは、実は中身が古い
最新のSteamVR SDK2系にVRTKは対応していない。(SteamVR SDK Ver1.2.3を利用する必要あり

とのことで、今回はGitHubからダウンロードしたものを適用してみます

GitHubからコンポーネントを入手

ここからダウンロードできます
https://github.com/thestonefox/VRTK

緑色の「Clone or download」をクリックし、「Download ZIP」をクリックしてダウンロードし、展開します

Unityに取り込む

展開したディレクトリの「VRTK」フォルダを、UnityのAssetフォルダ配下にコピーします

SteamVR SDKを取り込む

SteamVR SDKを取り込みます
https://github.com/thestonefox/VRTK
から、Ver1.2.3がダウンロードできます

Unityを開いた状態で、ダウンロードした「SteamVR.Plugin.unitypackage」をダブルクリックすれば、Unity内へ取り込まれます

プロジェクトのセットアップ

VRTKを利用するには、手順に沿ってコンポーネントを設定していく必要があります
https://vrtoolkit.readme.io/docs/getting-started
の「USING VRTK IN YOUR OWN PROJECT」の手順をもとに行います


1. SDK Manager設定

空のゲームオブジェクトを作成し、「VRTK_SDKManager」スクリプトをアタッチ


2.SDK Setupの設定

  1. 空のオブジェクトを作成し、「VRTK_SDKSetup」スクリプトをアタッチ
  2. SteamVR SDKの「CameraRig」プレハブを、先ほど作成したVRTK_Setupスクリプトをアタッチしたオブジェクトの子に設定(CameraRigはSteamVR/Prefabs配下にあります)
  3. VRTK_SDKSetupの「SDK Selection」でSteamVRを選択
  4. ObjectReferencesに自動で値が設定されるのを確認

ここまで作業すると、以下のような画面になります


3.SDK Managerのセットアップ

SDK Managerに先ほど作成したSDK Setupオブジェクトを認識させます
「VRTK_SDKManager」スクリプトの「Setups」で+ボタンを押し、レコードを追加
その後、「Auto Populate」ボタンを押せば、自動でSetupオブジェクトが認識されるはずです
ここまで作業すると、以下のような画像になっているかと思います

4.コントローラの設定

最後にコントローラのスクリプトエイリアスを設定します
実際に開発するときは、スクリプトエイリアスとして設定したオブジェクトにいろいろなコンポーネントを追加して
開発を行っていくようです

といっても、空のオブジェクトを2つ追加し、それぞれをVRTK_SDKManagerの「Script Aliases」に設定するだけです
ここまでの作業を行うと、以下のような画面になります

以上

ここまでで、最低限のセットアップは完了です
Unityで再生ボタンを押せば、デフォルトのゲーム画面がVR空間内で見渡せるはずです

終わりに

ここまでの説明では、VRTKを使用するメリットはあまり感じられませんが、このツールを使用することで「テレポート移動を行う」「VR空間内で物をつかむ」といった動作が簡単に行えます
VRTKの「Examples」フォルダの中に、いくつかのサンプルシーンが収められているので、ぜひ遊んでみてください