12月になってUnity2017.3.0f3がリリースされたのでアップデートはしたものの、暫く実機(Android端末)テストはしてませんでした。
で。久しぶりに、ってかアップデートしてからは初めてプロジェクトをビルドして実機で動かしてみると困った問題が発生
スプライトが表示されない
PCではきちんと表示されているのにAndroidで動かしてみるとスプライトが表示されない、ビルド時にエラーは出てないし、実機でエラーログを出力するようにしても特にエラーが発生しているわけではないみたい。う~ん、困った・・・
色々調べていると表示されないスプライトは決まっていることが判明、InspectorのOverride for Androidの設定で圧縮形式にETC2を指定していたスプライトが駄目っぽい。
ならばと他の形式に変えてApplyボタンを押してみると今度はconsole上に
Assertion failed: TLS Allocator ALLOC_TEMP_THREAD...
と表示されてエラーとなった。
ん~。。。どうにもならん。。。
仕方ないのでグーグル翻訳先生の手を借りながらUnityのフォーラムを漁ってみるとそれらしき答えが、どうやらUnity2017.3.0f3から「Crunch圧縮」がデフォルトで有効になっているのでそれを外す必要があるみたい。
「Crunch圧縮」・・・どこ?
QuaritySettingsにはないし、当該のスプライトのInspectorには
ないし・・・(。´・ω・)ん?・・・・あった!!
Defaultタブにありました。
表示上ではチェックされてないけどUnity内部ではデフォルトで有効になっているらしい。なので、このチェックを有効⇒無効とした後にApplyボタンを押してスプライトを変更する。
これで再度プロジェクトをビルドして実機で動かしてみると・・・
表示されたーーーー!!!
( ´Д`)=3 フゥ・・・
アップデートされたからといってホイホイ手を出すと痛い目を見る、という話でした。