テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

プラットフォームをiOSやAndroidに切り替えるとエディタがクラッシュする問題について

4.1系でプラットフォームをiOSAndroidに切り替える際、Unityエディタが強制終了する問題が発生しているらしい。要するにSwitch PlatformでiOSAndroidを選択するとエディタがクラッシュする。

Crash immediately upon trying to build to Android
http://forum.unity3d.com/threads/174123-Crash-immediately-upon-trying-to-build-to-Android

この現象は詳しい発生条件は不明だが、挙動を確認する限り
どうやらプラットフォーム切替時にシーンにNGUIのUIButton等があるとクラッシュするらしい。もしくは、複雑な参照を持ったオブジェクト(NGUIでよくあるプレハブの入れ子的なもの)があるとクラッシュするらしい。

対策としては2つの方法が提案されている。ただ、後者は現実的ではないので前者を使うのが良いと思う。

・一旦空のシーンを表示してからプラットフォームを切り替える
・NGUIのExecuteInEditModeの記述を全部抜く

もう一つ、Libraryを削除することで対策できているケースもあるらしい。

【Unity】SwitchPlatformでクラッシュ
http://blog.goo.ne.jp/katerkurz/e/5e9f7f32574807f31b0e70741850da6b

確認する限り、(実際に送信しているならば)複数人からバグレポートが送信されているみたいだし、割とフェイタルな問題なので次のバージョンかパッチかで修正されると思う。ただ、それまではクラッシュしたら上記の方法を試してみるが吉。

それとシーンは定期的に保存するオススメ。
物理的・電子的にアクシデントは唐突にやってくる。
地震・電源抜け・PC終了・作業巻き戻しコンボは地味に痛い。本当に地味に痛い。