備忘録を兼ねて、Google ARCoreを実行させるための基本的な設定について纏めてみたいと思います。
Unityのインストールについては割愛しますが、ここに記載されているバージョンを満たすものをインストールしましょう。

使用した環境

本設定時に使用した環境は以下のようになります。
ソフトウェアバージョン
Unity2017.4.0f1(Personal)
ARCore SDK for Unityv1.1.0
デバイスZenfone AR
OSAndroid 7.0
ちなみに使用したZenfone ARはドライバに不具合があるらしく、端末を起動してから26時間ぐらい経過するとTrackingが開始できなくなります。これが発生した場合、端末を再起動することで直ります(詳細はGithubのissue #183#286を参照してみてください)。

設定手順

  1. 環境構築
  2. まずはUnityプロジェクトの環境構築を実施します。詳細はこちらを参照してください。
  3. "Main Camera"を削除
  4. Google Tangoのときと同じように、まずはUnityプロジェクトでデフォルトで設定されている"Main Camera"を削除します。
  5. プレハブ"ARCore Device"をHierarchyに追加

  6. ここまでで、ARとしての最低限の機能として、以下のことができるようになります。
    • 背景画像がカメラからの入力になる
    • デバイスのpose(position and orientation)が取得できる(Frame.Pose)
    • ARCoreが認識したそれぞれの座標を取得できる(Frame.PointCloud)
    • 平面の認識(Session.GetTrackables())
Google Tangoと違って、この段階で大抵のことができるようになっています。
付加機能として、「Environmental Light」を動作できるようにしたい場合、Prefab"Environmetal Light"を追加することで可能です。

機能の無効化

先の通り、ARCoreDeviceを追加することで大抵の機能が使用できるようになりますが、逆に使用したくないので無効化したい場合は、以下のようにGameObject「ARCore Device」のコンポーネント「AR Core Session」のプロパティ「Session Config」から変更が可能です。

コメントの投稿