読者です 読者をやめる 読者になる 読者になる

UnityでiOS向けのビルドを短時間で終わらせる簡単な方法

Unity

この記事の環境:Unity version 5.4.0f3


Unityで開発していると、どうしても実機でテストしなくちゃならないことがあります。

例えば、加速度センサを使ったゲームとかはPC上ではテストできません。

そこでiOS用にビルドしなくちゃいけないんですが、これがめちゃくちゃ遅い。

Unityクラウドビルドを利用したり、自分でCI導入したりすべしという話もあるのですが、知ってる人には当たり前なビルド時間を短縮する方法があります。

それは、Player SettingsのConfiguration部分の設定を変えることです。

デフォルトでは、以下のようになっていると思います。
f:id:wkpn:20160814144518p:plain

ちょっと実機でテストする分には、この辺りの設定を変えてしまっても、ほとんど問題ありません。試しに、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の使ってみた感想を書こうと思います。


Divide Number Puzzle

Divide Number Puzzle

  • Ken Watanabe
  • Games
  • Free
play.google.com