ARCoreの始め方(Unity編)
はじめに
GoogleはARCoreを開発していくということなのでちょっと使ってみる
(Tangoは開発終了らしい)
目的
ARCoreのサンプルを動かす
環境
- Windows10
- Unity2017.4.1f1
- ARCore 1.1.0
- 端末 : ZenFone AR
公式のクイックスタート
とりあえずここを参考にする
Quickstart for Unity | ARCore | Google Developers
Unityをインストール
Unityをインストールしていない場合はインストール
Unity 2017.3.0f2以上が必要らしい
ARCore SDK for Unityをダウンロード
ARCore SDK for Unityを公式サイトからダウンロード
Quickstart for Unity | ARCore | Google Developers
Android SDKをインストール
Android SDK version 7.0 (API Level 24)以上が必要らしい
Android SDKは「Android Studio」をインストールすると、一緒に入っている
Android StudioのSDK ManagerでSDKのアップデートなどができる
またSDK Managerを開くとSDKの保存場所が分かる(後でパスを通すときに必要)
Unityを起動
まずインストールしたUnityを起動
「New」ボタンを押すと、新規プロジェクトを作成できる
適当な名前を決めて、プロジェクトを作成
ARCore SDKをインポート
Unityエディタの上部タブから選択していく
Assets > Import Package > Custum Package ...
さっきダウンロードしたARCore SDKを選択するとインポートされる
Android SDKのパスを通す
(もしかすると自動でパスが通っているかも)
Unityエディタの上部タブ
Edit > Prefrences... > External Tools
の下の方にSDKのパスを記述
注意 : Android Studioから手に入るAndroid SDKはそのままではエラーを起こす可能性がある(後述->ビルド時のエラー)
JDKのインストール
JDK(Java Development Kit)が必要なので、インストールしていない人はする
最新のバージョンでも大丈夫だと思う
(ちなみに私のバージョンはjdk1.8.0_151)
Java SE Development Kit 8 - Downloads
そしてパスをちゃんと通す
サンプルのシーンを開く
ARCore SDKが正常にインポートされていると、UnityエディタのProjectビューに「GoogleARCore」があるはず
GoogleARCore > Examples > HelloAR > Scenes > HelloAR
を選択(ダブルクリックとかする)
シーンが開くはず
ビルドセッティング
上部タブから File > Build Setting を選択
- 真ん中右あたりにある「Add Open Scenes」ボタンを押す
- 左下のPlatform選択でAndroidを選択して、「Switch Platform」ボタンを押す
- 「Player Setting」ボタンを押す。Unityエディタの右にあるInspectorビューをみる
- 一番上のCompany NameとProduct Name(アプリ名)を適当に決める(7.で使用)
- Other Settingを開く
- Multithreaded Renderingのチェックを外す
- Package Nameを「com.CompanyName.ProductName」のように書く(4.で決めた通り)
- Minimum API LevelとTarget API LevelをAndroid 7.0以上にする
- XR SettingでARCoreを選択
・端末側で開発者オプションからUSBデバッグを有効にする
・「Build and ran」ボタンを押すと、apkファイルの名前を聞かれるので、適当に名前を付ける
apkファイルの保存場所は、プロジェクトフォルダ直下(Assetsフォルダなどがある層)
ビルド時のエラー(重要)
大半のエラーはAndroid SDKが合ってないか、JDKがあっていないかだと思う
調べたところによると新しいAndroid Studioで手に入るAndroid SDKがUnityと上手く合わないらしい
解決策として、Android SDKの中にあるtoolsだけを古いものと置き換えるとうまくいく
参考(この記事の最後の方にエラーについて書いてくれている)
[Unity] アプリをビルドしてandroid実機上でテストする
アプリが正常に動かない(重要)
ビルドが通ってアプリは起動したが何も起こらない場合は、端末を再起動すると直るかもしれない
私は端末を再起動したら動きました
スクリーンショット
正常に動作したときのスクショ
検出された平面をタッチすると緑のキャラが生成される
おわりに
ARCoreが無事動いてよかった
もしエラーが出て動かない人は頑張ってください
質問してもらえれば何か答えます