Unityで始めるOculus Goアプリ開発(gitの設定、コントローラの表示まで)

Kohei Tabata
6 min readJun 3, 2018

--

こんにちは、田畑(@nerd0geek1)です。

今回はタイトルの通り、プロジェクトのセットアップと実装を少し進めていこうと思います。

Gitのセットアップ

前回同様プロジェクトを作成し、プロジェクトのルートディレクトリで

git init

を実行し、プロジェクトをgitで管理します。
その後
github/gitignore からUnity用のgitignoreをダウンロード、または

brew install gibo

gibo をインストールし、

gibo Unity >> .gitignore

でUnity用の.gitignoreを配置します。

その結果、このようなファイル構成になります。

Unityのバージョン管理についてのマニュアルにも以下のようにあるので、
Assets/Packages/ProjectSettingsを管理しておけば良さそうです。

When checking the project into a version control system, you should add the Assets, Packages and the ProjectSettings directories to the system.

それぞれの役割は以下の通り。

  • Assets
    公式資料によると「Unity プロジェクトで使用するアセットが含まれている主なフォルダー」とのことです。音声・テクスチャなどの素材やSceneがこのディレクトリに入るみたいです、きっと。
  • Packages
    詳しくは調べきれてませんが、Unityサービス で利用中のサービスを管理するためのファイルのようです。PodfileGemfileのイメージ。
  • ProjectSettings
    公式資料では明言されていませんが、 ProjectSettings/ 内のファイルが「グローバル設定を行うために」使われている点から推測するに、 iOSプロジェクトの project.pbxproj に相当するものと考えると良さそうです。

ここまでで一旦commitします。

前回の作業を適用

前回のポストの作業内容をプロジェクトに適用します。
ProjectSettings.assetGraphicsSettings.asset が変更されました。

ProjectSettings.asset ではBundle Identifierが更新され、API Levelも上がり、Platformの設定もAndroid用のものに切り替わっています。

GraphicsSettings.asset のほうはよくわかりませんが、おそらく XR Settings 関連かと思われます。

Oculus Utilities for Unityを追加

色々調べたところ、コントローラをOculus内で表示するにはOculus Utilities for Unityをダウンロードして使えば良い、とのことだったので、ダウンロード。

ダウンロードしたファイルを取り込むためには、 Assets > Import Package > Custom Package... を選択して

ダウンロードしてきた.unitypackage ファイルを選択します。

importするファイルの確認画面が表示されるので、そのまま全てimportします(全てimportしても生成されるapkのサイズには影響しないので、一旦全部importするのが良さそうです)。

AssetsOculusPlugins が追加されているのが確認できます。

差分はこんな感じです。

ここまででまたcommitします。

コントローラの表示

最後にコントローラを表示していきます。

まず、SampleSceneからMain Cameraを削除し、Assets > Oculus > VR > Prefabs からOVRCameraRigSampleSceneにドラッグ&ドロップします。

これでカメラがMain CameraからOVRCameraRig に切り替わりました。

次に OVRCameraRig >TrackingSpace > RightHandAnchorAssets > Oculus > VR > Prefabs > TrackedRemote > OculusGoControllerModel をドラッグ&ドロップします。

これでコントローラを表示する準備が整いました。

ビルドすると

コントローラが表示されました!

まとめ

今回はコントローラを表示するところまで実装しました。

次回は

  • Main CameraOVRCameraRigの関係
  • RightHandAnchor って?
  • コントローラの左右に対応するためにはどうすれば良い?

あたりをまとめていきたいと思います。

--

--