Unity 5 Personal Edition でGearVR用自作アプリを作る環境設定

思っていた以上に難儀でしたが、なんとか自作のUnityアプリをGearVRに対応させることができました。備忘録としてここにメモしておきます。

 

※(2015/7/8 追記)Unity5.1.1p3でUnityビルトインVR対応機能であるVirtual Reality SupportedでVR仕様に変換できることを確認しました。

(2015/10/11 追記)Unity5.2.1p2では再び実機で動作させた際に強制終了してしまいましたが、Unity5.2.2p3では正常に動作しました。

 

以下はUnity 5.1.1p時点での記事になります。

 

f:id:kamata0satisfy:20150624222614p:plain

使用したのはUnity 5.1.1p + ovr_mobile_sdk_0.6.0.1 です。

公式のVRサポートであるVirtual Reality Supported機能は、無償版である Unity Personal Editionのバージョン5.1.1p時点では使用できないようです。

  

 

以下のサイトを参考にさせていただきました。

tsubakit1.hateblo.jp

psychic-vr-lab.com

Gear VRとGalaxy S6を買ったので原点に戻ってミクさんに踊っていただいた - ReDo

 

 

以下のように開発環境導入を行いました。

Androidアプリ開発環境

  • JDK(8u45)の導入
  • Android SDKの導入
  • Unity プロジェクトのBuild Settings を開き、Texture CompressionをETC 2(GLES3.0)に変更
  • Player SettingsのIdentification - Bundle identifierの名称を変更

Gear VR 用アプリ開発環境

Oculus用Unityプラグイン

  • Oculus公式HPからovr_mobile_sdk_0.6.0.1をDL
  • VrSamples\Unity\UnityIntegration\UnityIntegrationにあるUnityIntegration.unityPackageをインポート
  • プロジェクトのMain CameraをOVR\Prefabs\OVRPlayerController.prefabに置き換える

 

このうち、Oculus用のUnityプラグインについては使用したくありませんでした。

その理由は、チェックをいれるだけでカメラを両眼仕様にしてくれるOculus用機能のVirtual Reality Supportedの存在です。

f:id:kamata0satisfy:20150624224724p:plain

Unity 5.1以降、Gear VRにもこの機能が対応したと聞き、設定が面倒なことをするよりもせっかく対応機能があるのだからコレを使ったほうが良いに決まってる!と考えたのです。

 

しかし何度ビルドすれどもGearVRでは起動せず、「予期せず終了しました」と出るだけ。

フォーラムを覗いてみると、どうやら同じ症状の人がチラホラ。

(参考: http://forum.unity3d.com/threads/unity-5-1-0p1-crashing-on-gearvr.334282/ )

 

この機能はProfessional版でのみ有効ということでしょうか?

ということで、諦めてovr_mobile_sdkを導入したところでやっとこさGearVRで正常に動くアプリがビルドできました。

f:id:kamata0satisfy:20150624222614p:plain

ちなみにUnity 5.1.1fなどでは、ovr_mobile_sdkを使っても片目しか画面が表示されないバグがあるようです。

 

いろいろと手間がかかりましたが、とりあえずこれで開発を始めることができそうです。