サンプルプロジェクトをビルドしてみよう
前回は、モバイルVRの開発に必要な環境をセットアップする方法を解説した。今回は、Unityから実機にサンプルプロジェクトをビルドして、実際にヴァーチャル空間に入ってみよう。
サンプルプロジェクトを入手する
Unityを通して、様々な便利ツールやアートアセットをダウンロードできる仕組みが「Unity Asset Store」だ。もちろん、このAsset StoreからVRの開発に役立つアセットも入手できる。中でも特におすすめしたいのが、Unityがオフィシャルで提供するアセット「VR Samples」だ(図1)。このサンプルアセットには、VRの開発に役立つ便利ツールだけでなく、銃や乗り物、UIといったヴァーチャル空間での使用に適したアートアセットも梱包されているのだ。しかも、ありがたいことに無料で提供されている。このVR Samplesを使って、UnityにおけるVR開発のはじめの一歩を踏み出してみよう。
VR Samplesのダウンロードとインポート
それでは、早速Asset StoreからVR Samplesをダウンロードしてインポートしてみよう。次の手順で操作を行なってほしい。
- 操作を始める前に、あらかじめ新規のプロジェクトを作っておこう。その後、Unityのメニューから「Window」→「Asset Store」を選択してアセットストアを開く。このとき、Unityアカウントでログインしておく必要がある。アセットストアが開いたら、画面上のサーチボックスに「VR」と入力して検索しよう(図2)。
- 検索結果が表示されるので、VR Sampleを見つけよう(図3)。見つけたらダブルクリックして開き、画面左上の[ダウンロード]ボタンをクリックすれば、自身のUnityアカウントにダウンロードされる(図4)。
ダウンロードが完了したら、[Import]ボタンをクリックしてプロジェクトにインポートしよう。
Gear VR 向けにビルドする
サンプルプロジェクトのインポートが済んだら、いよいよ Gear VR向けにビルドを行ってみよう。なお、この手順で何かしらトラブルが起こった場合、第2回で紹介した環境構築も含めて、もう一度見直してみてほしい。
また、ハコスコ/Google Cardboard 向けにビルドするには、これにさらに手を加える必要がある。そのためにはUnityに関する解説をもう少しだけ行う必要があるため、次回の解説とさせていただきたい。
- Unityを起動し、まずは第2回で作成した.osig ファイルをPlugins/Android/Assetsの中に格納しておこう(図6)
- 「File」→「Build Settings」と選択してビルド設定を開く
- Platform から「Android」を選択し、画面左下の[Switch Platform]をクリックする。しばらくして、ビルドプラットフォームが「Android」に変わったことを確認する(図7)
- 画面7の右下にある[Build]もしくは[Build And Run]ボタンをクリックし、これからビルドする.apkファイルの保存先を指定する(図8)
- ビルドに問題がなければ、3で指定した名前の.apk ファイルが生成される。[Build And Run]ボタンをクリックし、かつ端末が適切に接続されていれば.apkファイルが自動で端末に転送されるはずだ(図9)。
- なお、.apk のみがビルドされた場合は、次のようにadb コマンドを使って実機に転送しよう。
- GearVR に装着し、さっそく遊んでみよう(図10)。基本的はGear VRの横のタッチボタンで先にすすめる他、タッチパッドを接続している場合はそちらも使用できる。
adb install ***.apk
ここまで、モバイルデバイス上でVRの確認方法を紹介してきたが、「いちいちビルドするのは面倒だ」と思う人もいるはずだ。そこで、開発PCに「DK2」や「CV-1」といったOculusデバイスを取り付けると、直接Unityエディタ上にVRを表示できる。開発のイテレーションを早めるためには、これらのデスクトップ用デバイスを利用するのも手だ。実際には、次の手順で操作をしていこう。
- PCにOculusデバイスを接続し、必要なランタイム等をインストールする
- Unityのメニューから[Edit]→[Project Settings]→[Player]を選択する
- 「PC, Mac & Linux Standalone」であることを確認し、「Other Settings」の「Virtual Reality Supported」にチェックを入れる(図11)
- [Play]ボタンをクリックしてゲームを実行すると、接続したOculusデバイスにVRを表示できる
これで、サンプルプロジェクトをGear VR向けにビルドできるようになった。「やっとVR開発のはじめの一歩」を踏み出せたと行っても良いかもしれない。しかし、オリジナルのVRコンテンツを生み出すためには、もう少し開発環境であるUnityの仕組みを知らなくてはならない。また、今回は触れられなかったハコスコ/Google Cardboardの解説も、次回で併せて行っていく予定だ。お楽しみに。
筆者の所属するGREE VR Studioで開発したGear VR向けコンテンツ「Tomb of the Golems」が4月より公開となった。もちろん筆者も開発に関わっており、ぜひプレイしていただければ幸甚の至りである。
【イベントレポート】Unite 2016 Tokyo が開催
本連載でも使用しているゲームエンジン「Unity」のカンファレンス「Unite 2016 Tokyo」が4月に開催された。本イベントは毎年開催されており、Unityに関する最新のトピックを扱ったセッションが発表された。もちろん、そこにはVRに関するものも含まれている。これらのセッションの多くは、スライドとともに無料で閲覧できるようになっている。そこで、オススメのVR関連セッションをここで紹介しておきたい。
モバイル端末向けのUnityアプリケーションの最適化実践テクニック
モバイル開発における最適化(処理負荷を軽減すること)に関するセッション。本講演はVRをターゲットにしてはいないが、ここで解説されているほぼすべての内容がモバイルVRでの開発にも適応できるので、もしコンテンツの処理負荷に悩んでいる場合は、この資料をチェックしてみると何かヒントが得られるかもしれない。セッション資料はこちら。
実践!Oculus Rift - VR開発テクニック
Oculus社の技術者による講演で、Oculusデバイスを使った開発の基本的な部分を解説している。Rift(CV-1など)といったPC向けのデバイスに関する内容が中心だが、制作したアプリの申請フローの解説がされている点に注目したい。セッション資料はこちら。
VR分野でのUnity総括
VR制作ツールとしてのUnityに焦点を当てたセッション。UnityはOculusだけでなく、さまざまなVRデバイスに対応しているということがわかる。今後のVR機能におけるロードマップも紹介されている。セッション資料はこちら。
ホンモノ志向のVR空間づくり
技術解説ばかりの講演が多い中、「ものの見え方」を解説するという珍しいタイプのセッション。スクリーン(画面)に投影される映像と、我々が目で見ている映像は本質的に異なるものである、ということを改めて気付かされる。セッション資料はこちら。
Unity5を使った「いけにえと雪のセツナ」の雪世界の作り方
こちらも、VRとは直接関係ないセッションだが、細かいチューニングやグラフィックのクオリティアップのテクニックが多く紹介されている。モバイルVRでもぜひ役立てたい。セッション資料はこちら。