Oculus GO を購入!UnityのFPSゲームをOculus Goにビルドする方法を学ぶ

遅ればせながら、Oculus GOを購入しました。この記事では、 Oculus GOを購入してから、Unityのひらがな撃ち合い風FPSゲームをビルドするまでについて書きます。

  1. PC側の設定
  2. Unity側の設定
  3. Oculus Goにビルド
  4. FPSゲームをやってみた感想と問題点
  5. アプリの消し方

電源(充電アダプタ)がデフォルトでは付属していないので、予め購入しておくと良いと思います。

スマホとWIFIを使って、一通り設定を終わらせます。重要なので二度書きますが、スマホとWIFIがないとOculusGOの設定ができないので、電源(チャージャー)、スマホ、WIFI環境が無いと多分設定ができないか、面倒な事になると思います。

付属品、コントローラー・説明書・布・リモコン電池・リモコンストラップ・USBケーブル・スペーサー

設定が終わって、一通りYOUTUBEとかで遊び、ジェットコースターに酔ったりしたところで、OculusGoの設定を始めました。まず、参考にしたサイトは下記の2つでほぼ網羅していると思います。補足などを私が追記することにします。

https://freesworder.net/unity-oculus-go-build/

UnityではじめるOculus Go VRアプリ開発 (Mac OS)

0.開発者用Oculus Goの設定

開発者用のOculusGOの設定は、上の2つのウェブサイトに描かれている通りに行いました。特に追記も無いほど簡単だったので、それについてはこの記事には書きません。上のリンクより設定方法をご確認ください。

1.PC側の設定

まず、前提としてOculusGoはアンドロイドであるそうなので、そのためのPC側の設定をする必要があります。もうしてある人はこの章は不要です。

まずは、Java SE Development Kit をダウンロード、インストールします。

acceptに✔を入れてから、ダウンロードできるようになります。
インストールが始まると取り合えず言われるままにインストールしてみました。
一切逆らいませんでした。
しばらく待たされます。(数分)
企業でないから関係ないのでしょうか。
特にここも変更しませんでした。
役立つそうなので次のステップを押します。
私にとっては、全然役に立ちませんでした。

次に、Android SDKのダウンロードとインストールを行います。公式のウェブサイトからダウンロードできます。

ボタンを押すと自動でダウンロードされます。
同意しないとダウンロードできません。
インストールも一切逆らいませんでした。
言われるがままにNextを押します。
同じく迷わすNextです。
インストールが数分で完了します。
これでスタートに✔を入れた状態でFinishしました。
すると、ここで困ったことに二択を迫られます。

調べると、ここで二択をどうすればいいのかについて書いてあるウェブサイトがありましたので転載します。これを読めば、初めてダウンロードする人は下の選択肢を選べばよいという事が分かります。

https://original-game.com/develop-android-app-1/
インストールは気長に待ちましょう。
インストール終了。ここまで約20分ほどかかりました。

これで、事前処理は終わりです。次はUnity側の設定とビルドになります。

2.Unity側の設定

ビルドの仕方なのですが、上の方に転載した記事の通りに進めました。Unityのバージョンが違うせいか、ウインドウの配置などが異なるので、私の環境での見え方を参考までに張り付けておきます。

デフォルト値からここは何も触っていません。

PlayerSettingを開きます。そして、XR Settings のVirtual Reality Supportedに✔を入れますそして、+ボタンからOculusを選びます。

そして、Other SettingsのIdentificationから、Package Nameを分かるように変えます。それから、上の記事によるとMinimum API LevelをKitKat(LV19)にするようです。これは今の所何の設定なのか分かっていませんが。



最後にPreferenceのExternal ToolsでAndroid SDKのパスとJDKが有効になっている事を確認します。

これでUnity側の設定は終了です。

3.Oculus Goにビルド

次に、OculusGoをPCにUSB接続します。「allow usb debugging ?」 と聞かれたので 「always allow from this computer 」に✔を入れました。そして、ビルドを実行します。この時、場所を聞かれるのですが、OculusGoはウィンドウから選択できません。よってどこにビルドすればいいんだろう?としばらく考えたり調べたりしました。

何所にビルドすればいいのだろうと場所に迷った。。。

これはどの記事にも書いてなかったのですが、ビルドの場所はあまり関係ないのか、デフォルトで開かれたフォルダを変更せずに、名前.apkとして保存すると、なんとPCに繋いであったOculusGoに自動的に転送されました。仕組みは謎です。

転送が終わり、OculusGoを被ると、Unityのロゴが出てきて、アプリがスタートします。

4.FPSゲームをやってみた感想と問題点

やった、FPSゲームが動きました!まず、良い所から感想を。首を回すと辺りを見回せます!そして狙った方向に顔を向けてトリガーボタンを押すときちんと撃てます。まるでゲームの世界にいるかの様。しかし、いくつかの問題点も発覚。

(このうちUIオブジェクトの照準と文字は表示されず。)

まず、FPSなのにその場から全く動けないという致命的な事が判明!残念ながらスクロールが前進や、後進、横移動に自動対応している訳ではないのですね。それからUIの照準と文字が見えません。これもデフォルトでは対応していないようです。

前進、後進、横移動について、OculusGoを使用してできないか色々調べてみたところ、やはりもうやっている人がいるのですね。FPS風に車を動かしている人がいました。

Oculus Goでサクッと車を動かす

これはかなりのヒントになりました。というかほぼ答えです。OculusGoには付属のコントローラーというものがありまして、それの先端に向かって上の部分がスクロールできるようになっているのですが、これがAxis2D.Primary.Touchpadを検知するようになっているみたいです。

詳しくは下の記事の添付画像に各ボタンが何を検知しているのかの解説がありましたので転載します。レーザーも見える化できるようなので心躍ります。

https://o21o21.hatenablog.jp/entry/oculus-go-importing-utilities

次の問題点の、UIの表示なのですが、これも対応できそうな記事を作成されている方がいらっしゃいますね。素晴らしいです。

Oculus GoのコントローラからレーザーポインタによりUIを操作するまで

OculusGoをuGUIに対応させる #OculusGoDev

これらの記事を見る限り、現時点で私はできませんが、おそらくはできるようになるはずだと思います。

5.アプリの消し方

気になるのがアプリの消し方です。ホームボタンを戻すとゲームを止める事が出来ますが、アプリ開発の際に溜まってしまったら、消すことが必須です。

戻るボタンを押して、アプリを終了すると、提供元不明のアプリとしてライブラリの中に保存されている事が確認できますが、Oculus Go側からはアンインストールできないようです。

調べてみると、アプリを消すためにはコマンドプロンプトからできる(Windowsの場合)ようです。下記に方法解説をしているサイトを転載します。

http://rikoubou.hatenablog.com/entry/2018/06/16/232026

今日の所はとりあえずUnity自体がOculus Goで動いてくれたので大満足です。これからゆるゆるとコントローラーのカスタマイズを行っていきたいなと考えている次第です。

おすすめの記事