UnityでiOS向けのビルドを短時間で終わらせる簡単な方法
この記事の環境:Unity version 5.4.0f3
Unityで開発していると、どうしても実機でテストしなくちゃならないことがあります。
例えば、加速度センサを使ったゲームとかはPC上ではテストできません。
そこでiOS用にビルドしなくちゃいけないんですが、これがめちゃくちゃ遅い。
Unityクラウドビルドを利用したり、自分でCI導入したりすべしという話もあるのですが、知ってる人には当たり前なビルド時間を短縮する方法があります。
それは、Player SettingsのConfiguration部分の設定を変えることです。
デフォルトでは、以下のようになっていると思います。
ちょっと実機でテストする分には、この辺りの設定を変えてしまっても、ほとんど問題ありません。試しに、Scripting Backend、Target Device、Architectureの設定を変えて、空のシーンをビルドした時にビルド時間を比べてみました。
Scripting Backend | Target Device | Architecture | Unity上でのビルド時間 | XCodeでのビルド時間 | 合計のビルド時間 |
IL2CPP | iPhone + iPad | Universal | 0:42 | 1:40 | 2:22 |
IL2CPP | iPhone only | Universal | 0:36 | 1:42 | 2:18 |
IL2CPP | iPhone only | ARMv7 | 0:37 | 1:10 | 1:47 |
Mono2x | iPhone only | (ARMv7) | 0:15 | 0:21 | 0:36 |
一番おそいのと、一番はやいのとだと約4倍の差が!
UniversalからARMv7にするだけでコンパイルするファイル数が160ファイルから80ファイルに、さらにMono2xにすると49ファイルに減りました。そりゃぁ早くなるわけだ。
最終確認は「IL2CPP,iPhone + iPad,Universal」の設定にする必要がありますが、ちょっと実機確認したいぐらいのときは「Mono2x,iPhone only」にしとくのが良さそうです。
UniversalにしてビルドしないとiTunes Connectへのアップロードができないので注意してください。
ってここまで書いて、上記の話をとある場所で言ったらUnity Remoteは使わんのかーって言われて、えっ何それ?(・o・)ってなったんで、明日は後日Unity Remoteの使ってみた感想を書こうと思います。
play.google.com