この前、Unityで作ったアプリで特定の端末のレイアウト崩れが起きていないか確認したい状況がありました。
Unityで画面サイズを確認したい端末と同じにすれば大体は確認できるのですが、
ステータスバーの表示を含めたレイアウトを確認したかったので、手元ない端末を確認するにはシミュレーターを使うしかありませんでした。
Unityで作ったアプリをiOSのシミュレーターで確認したい場合にやるべきこと
今までUnityで作ったアプリをiOSシミュレーターで確認したことがなかったので、UnityでビルドしたプロジェクトをXcodeでビルドすれば普通にシミュレーター動くだろうって思ってました。
が、そんなことはないようです。
まず、Unityで生成したプロジェクトをXcodeで開いてみたら、シミュレーターが選択できない(表示されない)状態でした。
ネットで調べた結果、Unityで出力したプロジェクトでシミュレーターを表示させるには、Xcodeの「Build Settings」>「Supported Platforms」を「iOS」に変更する必要があるようだったので、「iOS」に変更しました。
一応、これでシミュレーターが選択できるようになったのですが、
この状態でXcodeでビルドしてみたらエラーが大量に出ました...
実機転送はできるけど、シミュレーターではエラーが出るので再度調査しました。
調査した結果、UnityでiOSのシミュレーターで動作確認したい場合は、
Unityの「Build Settings」>「Player Settings」>「Other Settings」にある、
「Target SDK」を「Device SDK」から「Simulator SDK」に変更する必要があるようです。
UnityのバージョンによってはこれをやるだけでOKな場合もあるようですが、僕の場合は、「Simulator SDK」に変更したら、Build Settingsで以下のような表示が出て、プロジェクトの出力ができない状態になりました。
In order to build the Xcode project for Simulator make sure that either GLES2 or GLES3 is added to the 'Graphics APIs' list because currently Metal is not supported in the Simulator
このアラートの対処法としては内容に沿って「Other Settings」の「Auto Graphics API」のチェックを外して、「GLES2」か「GLES3」を追加する必要があるようです。
【変更前】
【変更後】
これでUnityからiOSプロジェクトを出力できるようになりました。
この状態でもう一度Xcodeでビルドしてみたら、無事シミュレーターで動作確認できるようになりました。
一応、シミュレーターで動作確認できたのはよかったのですが、シミュレーターで確認したい場合に毎回設定を変更してからプロジェクトを出力しないといけないんだとしたら結構面倒そうですね...
時間があるときにもっと良いやり方がないか調べてみたいと思います。
参考:
UnityプロジェクトをiOS Simulatorで実行する時の注意点 - Qiita