【Unity】Cloud Build + ARKit Remote を動かしてみた
はじめに
Unity Cloud Build って便利ですよね!! Windows マシンしかなくてもiOSのビルドができちゃうので!
ただ、ビルドには時間がかかるようで
https://www.slideshare.net/MakotoIto2/unity-cloud-build-63711473 より
ので、ほぼ空に等しいARKit Remote のScene だけをビルドしようとしても平均 20- 30 分位かかります。
cloud build するとその間にお風呂にはいれて便利(ここで泣く
— てんちょー@めぐるーまー (@shop_0761) June 4, 2018
このタイミング(WWDC直前)で Mac を調達するのもアレなので、せっせと試していた、というところです。
(いろいろあって計10回ビルドして、ここまでたどり着いた)
環境は以下のとおりです。
- Windows 10
- iPhone X (iOS 11.3.1)
- Unity 2017.1.3f1
- Unity Cloud Build (Xcode 9.3, Unity2017.1.3f1)
- Unity ARKit Plugin
https://bitbucket.org/Unity-Technologies/unity-arkit-plugin/src/default/
前提としては、
ことです。2つ目に関してですが、Windows 環境だとiTunesにD&Dするとインストールできるとかなんとか 見たんですが、うまく行かなかったのでゴニョゴニョしていれました。
D&Dでできるとか書いてあるけどできないので終わりたい
— てんちょー@めぐるーまー (@shop_0761) May 29, 2018
(2017の秋にはうまく行ったんだけどなぁ…
はい。
ポイント
以下試したこと全て書いときます。どれが不要か検証するのはしんどいので許してください。
勘で優先度高そうな順に書いておきます。
Cameraの使用許可の設定
最終的にはここでつまってました。 このときの挙動としては、connectedまではいけるけど、ARKit起動しようとすると静かにお亡くなる。 といったケースでした。
そういや、アクセス許可出さなきゃいけないよなーと思ってたらドンピシャの記事を見つけました。
こちらにある PostBuilder.csをそのまま使いましょう。ありがとうございます。
Debug ビルドにする
Cloud Build 側で設定できます
Unity Cloud Build の設定
適当に進めるとUnityのバージョンが最新のままビルドされてしまう可能性があります。 というのも、最初 Unity 2017.4系で試していたらもりもり謎のエラーが出たので、 Pluginの側の最新バージョンに合わせました。
そのため、バージョンはここ由来です。
Unity と XCode バージョンを設定できるので一応やっておきましょう。
Target Minimum iOS Version
Cloud Build 側のログを見ていたら
'ARAnchor' is only available on iOS 11.0 or newer
みたいなwarningがもりもり出ていたので、とりあえず直そうと思って設定しました。
ただ、このままビルドすると、今度はビルドに失敗します。
invalid iOS deployment version '-miphoneos-version-min=11.0', iOS 10 is the maximum deployment target for 32-bit targets [-Winvalid-ios-deployment-target]
これで検索するとこちらのブログが
どうやらビルドターゲットの設定が必要そうです。 で、Configuration の中にあったので設定したら治りました。
Graphics API
なんかフォーラム読んでたらmetalだけにしてるのを見つけたので、一応
でもいらなそうな気がする