LoginSignup
4
1

More than 1 year has passed since last update.

AndroidアプリでARしてみる

Posted at

この記事について

全く埋まらない社内アドベントカレンダーを埋めるべく、UnityでARアプリを作成しました。

バージョン

参考ページよりバージョンを上げるとエラーが多すぎて対応できなかったので、参考ページとバージョンを合わせています。
- Unity 2019.4.34f1
- ARCore SDK for Unity v1.16.0

作ってみる

プロジェクト作成

  • 3Dテンプレートでプロジェクトを作成します image.png

必要パッケージのインストール

[Window] -> [Package Manager]を選択します。

image.png

Multiplayer HLAPIXR Legacy Input Helperを検索してインストールします。
Multiplayer HLAPIは複数バージョンあるようですが、とりあえず1.0.8をインストールしました。

image.png

ARCoreパッケージのインストール

[Assets] -> [Import Package]を選択し、ARCoreパッケージをインストールします。
image.png

image.png

サンプルシーンを開く

Projectタブで[GoogleARCore] -> [Examples] -> [HelloAR] -> [Scenes]の中にあるHelloARを開きます。
image.png

ビルド設定

[File] -> [Build Settings]でビルド設定を開く。

image.png

Androidを選択して、[Switch Platform]を選択する。
image.png

[Player Settings]を選択して、設定を行う。

[Player]を選択し、[Androidタブ(ドロイド君のマーク)] -> [Other Settings]を開く
[Graphics APIs]からVulkanを削除(選択して、[-]をクリック)
image.png

[Minimum API Level]を[Android 7.0 Nougat]に切り替える
image.png

[XR Setting]を開いて、[ARCore Supported]にチェックを入れる
image.png

ビルド

ビルドして、apkファイルをAndroidにコピーする

結果

アプリを起動したらなんか出てきました。
Screenshot_20211228-174333.png

Σ(゚Д゚)
Screenshot_20211228-174339.png

Unityでビルドできたのでとりあえず良し!!!

ハマったところ

Unity 2021.2.7f1でビルドすると失敗する

そもそも、Multiplayer HLAPIXR Legacy Input Helperがパッケージマネージャーからインストールできない。
[プロジェクト名] -> [Packages]内のmanifestを修正してインストールしてみたが、作業中に色々とエラーが多発して対処が難しい(面倒くさい)ので、Unityのバージョンは安定版にしました。

マニフェスト修正は以下を参考にしました。
- https://docs.unity3d.com/ja/2019.4/Manual/com.unity.xr.legacyinputhelpers.html
- https://docs.unity3d.com/ja/2019.4/Manual/com.unity.multiplayer-hlapi.html
- https://qiita.com/ELIXIR/items/4874e491bbbbce0b88ac

[プロジェクト名] -> [Packages] -> manifestを修正するとプロジェクトを開くときにエラーが出る

JSONの書き方間違えました。

Unity 2019.4.34f1でプロジェクトを作成したのに、Unity 2021.2.7f1と挙動が変わらない

プロジェクト作成時にバージョンを忘れました。

Unity 2021.2.7f1だと、Graphics APIが任意に変更できない?

Unity 2021.2.7f1だと、デフォルトで Player Settings の「Auto Graphics API」にチェックが付いてる

apkがインストールできない

信頼できないアプリをインストールできるようにしましょう(端末によって若干操作が異なる)

参考資料

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1