[VR] Oculus Goで動くVR空間の作成

株式会社プライムストラクチャーの若手エンジニアのSayaです。
今回はゲームエンジンのUnityを用いたVR空間の作成を行なっていきたいと思います。

Unityとは

ゲームエンジンの一つ。
iOSやAndroid、Windowsなど様々なデバイスに対応したゲームの作成が可能。

VRとは

Virtual Realityの略語。仮想現実とも訳される。
ヘッドセットを用いて、使用者に仮想環境を現実のように見せる技術。
ゲームや医療、芸術といった様々な分野での応用が期待されています。

今回はOculus Goと呼ばれるHMD型のヘッドセットを使用します。

余談ですが、最近VR、AR、 MRをまとめて「XR」と呼ぶらしいです。→VR、AR、MR、SRに続き最近登場した新しい用語『xR』とは?|TIME&SPACE by KDDI
Unityの公式チュートリアルでもVRがXRにまとめられています。

実行環境

macOS High Sierra 10.13.6
Unity 2018.2.9f1

必要なソフトウェアのインストール

  • Unityのダウンロード
    こちらのページでUnityをダウンロードします。

  • Android Studio&SDKのダウンロード
    こちらのページでAndroid Studioをダウンロードします。SDKも一緒に入っています。

  • JDKのインストール
    こちらのページからJava Development Kit (JDK)をダウンロードします。

全部合わせると容量をそれなりに食ってしまうので容量に余裕を持ってインストールすることをオススメします。

Unity側の設定

  • プロジェクトの作成
    インストールしたUnityを開いて、NewProjectから新しいプロジェクトを作成します。
    Templateを3Dで作成します。
  • 作成した空間にオブジェクトを置く
    作成した空間にHierarchyタブのCreateから3Dオブジェクトを選択して好きなオブジェクトを配置します。筆者はTree(デフォルトではただの白い木)を配置しました。

Oculus Go側の設定

  • Oculus Goを開発者モードにする
    Oculus Goの設定に使用したアプリを開き、設定タブを開きます。
    自分のアカウントの下に表示される、接続しているOculus Goを選択し、その他の設定を開きます。
    そこから開発者モードをオンにします。

  • Oculus Developersの登録
    開発者モードをオンにしようとするとOculus Developersのページに飛ぶので、デベロッパー登録をするために自分のFacebookアカウントにログインします。
    規約に同意した後、団体名を決めてデベロッパー登録が出来ます。
    その後、また最初のアプリに戻ると開発者モードをオンに出来るようになります。

Unityのビルド設定

  • Androidビルド設定
    Oculus GoはAndroidで作られている為、Androidでビルドします。
    FileからBuild Settingsを選択して、PlatformとしてAndroidにSwitch Platformします。
    切り替えられない時はアンドロイドモジュールをOpen Download Pageで開いて入手しましょう。
    また、Build SettingsからPlayer Settingsを押下して出てくるインスペクタ上で以下のように設定します。

    • Player Settings
      • CompanyNameをcom.CompanyName.ProductNameのように変える。
      • Other SettingsからColor SpaceをGammaに変更する。
      • Other Settings内のMinimum API Level をAPI Level 19に変更する。
    • XR Settings
      • Virtual Reality Supported にチェックを入れる。
      • Virtual Reality SDKsで右下の+ボタンからOculusを追加する。
    • SDKとJDKの設定
      UnityタブのPreferencesからExternal Toolsを開き、Android項目のSDKとJDKを設定します。
      Browseボタンで参照できます。
      SDKをBrowseで参照すると/Users/UserName/Library/Android/sdk
      JDKをBrowseで参照すると
      /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/
      のようにパスが参照されます。

Oculus Goへ反映

Oculus GoにmicroUSBを差し込んでPCと繋げます。
Oculus Go側にパソコンのアクセスを求めるかどうかのポップアップが出るので許可をします。
そしてUnityのFileタブからBuild&Runを押すと、Made With Unityロゴが表示され、

この空間がOculusGoで見えるようになります。

見上げるととても高い木でした。

まとめ

今回はUnity上でVR空間を作って実際にOculusGoで体験してみました。
今後はもっと空間を充実させてどのような体験が得られるか試してみたいと思います。

参考文献

https://framesynthesis.jp/tech/unity/oculusgo/
https://qiita.com/shiruco/items/435bce396c42f764e4ae


Githubに今回行なった内容が載せてあります。
https://github.com/Saya-hack/VR_OculusGo_Unity