4
5

More than 3 years have passed since last update.

Unity使ってAndroidのAR Foundation 環境構築

Last updated at Posted at 2020-12-25

はじめに

ARアプリを作りたいなと思ってUnityで環境構築し始めたら、引っかかることがちょこちょこあったので、備忘として残します。

Androidのカメラに「Hello World」を表示するところまでの手順です。
サンプル画像は下記のような感じ。
ここまではノーコーディングでできます!

image.png

開発環境

  • Windows10
    • Unity(Ver2020.2.1f1)(※1)
    • AndroidStudio(Ver4.1.1)
    • OpenJDK(Ver15.0.1)
  • Androidスマホ(Redmi Note 9S OS Ver:10)

Unity と AndroidStudio と SDK のインストールが必要なので、下記参考URLを元に構築しました。
ただ情報が古くAndroidStudioとSDKのインストールが必要かは実は怪しいです。(ちゃんと調べずやりました、、、)
また、参考URLではOracleJDKなのですが、OracleJDKは有償なので、OpenSDKに置き換えて環境構築しました。

[参考URL]
・Unity、AndroidStudioインストール手順
https://techacademy.jp/magazine/2229
・OpenSDKインストール手順
https://www.javadrive.jp/start/install/index1.html

ちなみに、なぜ怪しいかと思ったかというと、下記画像のようにUnityインストール時にAndroid SDKとOpenJDKのインストールも選択できるからです。
デフォルトでは、両方選択されていなかったのですが、両方インストールしないと結果的にエラーがでたので、Unityインストール時は両方インストールする方が良いです。

image.png

※1
注意点!
Unityのバージョンは、2020じゃないエラーでて先に進めなくなりました。
現在(2020/12現在)Unityを普通にインストールすると、2019.4(LTS)がインストールされるので、下記から2020のバージョンをダウンロードしてインストールしてください。(私はUnityHubボタンを押してインストールしました)
これが一番大事かもしれない。
https://unity3d.com/jp/get-unity/download/archive

プロジェクト作成

1. UnityHubを起動

Unityと一緒にUnityHubがインストールされているはずなので、UnityHubを起動する。

2. 新規プロジェクトを作成

新規作成ボタンの右の▼ボタンを押して、Version20.2.Xを選択する。
プロジェクト名入力(任意)→保存先(任意)→テンプレートで"3D"を選択し、作成ボタン押下。
image.png

3. 開発画面が表示されるまで待つ

こんな画面がでたらプロジェクト生成と起動成功!
image.png

とりあえずAndroidでUnityアプリを起動してみる。

まずは、何もせずにAndroid向けにアプリをビルド→Androidにインストールして、起動するか確認してみる。(何が問題でエラーになったかわかるようにするため)

1. BuildSetting画面を表示する。

Unity画面上の[File]→[Build Settings]を押下

2. Android用にビルドする。

[Android]を選択し、[Switch Platform]ボタンを押下
image.png

3. Android端末を開発者モードをONにして、USBデバッグを有効にする。

この辺を参考。
https://sp7pc.com/google/android/39763

4. PCとAndroidを接続

Android端末とPCをUSBで接続すると、Android側にUSB接続モードを選択する画面が表示されるので、「ファイル転送」を選択しておく。

5. Build & 実行する。

Unity側で[Build And Run]が押せるようになるので、押下する。
image.png

実行ファイルの保存先を聞かれるので、任意のフォルダに任意の名前で保存する。
(今回は"test"という名前にしました)
なお、未確認ですが、任意のフォルダについては、フォルダパスに全角文字が入っていない方が良いかもしれません。(エラー発生時はフォルダを変えよ。という書き込みをいくつか見たので)

Android側でインストールするか?と聞かれるので、インストールすると勝手に実行される。

スマホで下記のような画面がでたらビルド成功!

Unity に AR開発用のPackageをインストールする。

1.PackageManagerを表示する。

[Window]→[Package Manager]を選択
image.png

2.Packageをインストールする。

下記5つのpackageをインストールする。
・AR Foundation
・ARCore XR Plugin
・ARKit XR Plugin
・Multiplayer HLAPI
・XR Legacy Input Helpers

  • インストール方法は、まず表示PackageをUnity Registryにする。

image.png

  • インストールしたいパッケージを選択し、installボタンを押下する。
    image.png

  • Multiplayer HLAPIt と XR Legacy Input Helpersについて
    Multiplayer HLAPIt と XR Legacy Input HelpersはPackage一覧に表示されていないので、
    [+]ボタン→[Add package from git URL]を押下して、それぞれ下記を入力するとインストールできる。
    com.unity.xr.legacyinputhelpers
    com.unity.multiplayer-hlapi

image.png

AR表示用のオブジェクトを追加する。

下記の図の通り、HierarchyウインドウのSampleSceneを右クリックし、

1. [GameObject]→[XR]から下記2つを選択する。

・AR Session Origin
・AR Session

image.png

2. 1. と同じ要領で、[GameObject]→[3DObject]→[3D Text]を選択する。

3. 初めから表示されている[Main Camera]は不要なため、削除する。

最終的には下記のようになってればOK.
image.png

ビルド設定を変更する。

1. BuildSetting画面からPlayer設定画面を表示する。

Unity画面上の[File]→[Build Settings]を押下し、[Player Settings]ボタンを押下する。
image.png

2. Other Settingを変更する。

[Player]→[Androidアイコン]→[Other settings]を選択
image.png

3. Vulkan削除

Vulkanを選択し、[-]ボタンを押下
image.png

4. Multihreaded Renderingのチェックを外す

カクツキがなくなるらしい。
image.png

5. ミニマムバージョンとターゲットバージョンを変更する。

使っているAndroidのバージョンに合わせて変更する。(ただし、API level24未満は対応してないとかなんとか)
image.png

6. XR Plug-in ManagementのAR Coreにチェック入れる

これをしないと。ARカメラが起動しなかった。
image.png

build & 実行

前述の"とりあえずAndroidでUnityアプリを起動してみる。"と同じ操作をすると、
Android端末側でアプリが起動する。
カメラが起動して、カメラ越しに周りを見渡すと、「Hello World」くんがどこかにいるはずです。
(変なところにいます。)

Hello Worldくんの場所を変える

Hierarchyウインドウの3D Textオブジェクト(New Text)を選択し、Transformのところで位置や大きさが変更できるので、変えてみます。
私の場合、下記のように変更すると、割と近くにいてくれました。
image.png

参考URL

・プロジェクト作成関連
https://qiita.com/gremito/items/a2dd75e9488a51eb4ce9
https://simanezumi1989.hatenablog.com/entry/2020/03/07/154232
https://www.wwwmaplesyrup-cs6.work/entry/2019/09/12/130738
https://note.com/npaka/n/nc24ba42aa710

・エラー時解決
https://qiita.com/nazo_no_otoko/items/51106fe86511b2adb8ad

4
5
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
5