Unity2018.2.8からUnity2018.2.16にアプデしてiPhoneへ書き出そうとしたところ、3つほどのassetからDXT5 compressed textures are not supported when publishing to iPhoneというエラーが出まくりました。
それまでUnity2018.2.8では問題なかくiPhoneへ書き出しできたプロジェクトなのですが、Unityを2018.2.16へアプデしてからビルドしたところ、以下のように画像ごとにエラーが大量に出て書き出せなくなってしまいました。
DXT5 compressed textures are not supported when publishing to iPhone
Assets/UniStorm 3.0/Resources/Icons/Resources/NonPrecipitationIcon.png
Included from scene:
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
で、ググったところコチラのページ(コガネブログ)で似たような問題を解決されていたので参考にしてみました。
こちらでは、Unityのmetaファイルを修正すれば直ると書かれていたのでやってみました。
ちなみに、私はFinderの中にmetaファイルが見えるのが嫌なので、普段は隠す設定にしています。
Edit>ProjectSettings>EditorのInspectorを開いて、VersionControleのModeをVisibleMetaFilesに変えます。
これで、エラーが出た画像のフォルダをFinderで開くと、その画像のmetaファイルも一緒に見えます。
エラーになってる画像のパスを確認して直接Finderで開くか、UnityのProjectタブでファイルの場所へ行って右クリックでReveal in Finderを選んでFinderを開きます。
あとは、このmetaファイルをテキストエディタなどで開いて、platformSettings:のiPhoneの場所にある「textureFormat: -1」を4にするだけでOKです。
これで解決!、、、と思いきや、
metaファイルが1個しかないやんけー!!!
エラーになっている画像は大量にあるのに、metaファイルが1個しかないので他の画像を解決できず、途方にくれながらググりました。
で、ヒントになったのが中国語のページでした。
この中国語ページがヒントになった。
Hierarchyでエラー画像を選択。Inspecorの一番下、画像圧縮欄でiOSのアイコンタブを押して、Override for iOSをチェックするなり、Defaultを設定し直すなりしてApplyで解決。
Google翻訳最高だ。https://t.co/ljIVxrgtO9— ひつじ (@combatsheep) 2018年11月21日
これをGoogle翻訳したところ、テクスチャのフォーマットを変えればOKだよ的な事が書かれていたので閃きました。(っていうか、さっきのmetaファイルの作業もそのまんまなんですけどね)
Unityで画像フォーマットと言えばここですね。
さっきReveavl in FinderしたProjectタブで、画像をクリックしてInspectorを表示させ、一番下にあるDefaultをiPhoneのアイコンのタブに切り替えます。
Override for iOSをチェックしてアクティブにしてApplyで解決しました!
これで再度エラーが出てしまった場合は、Formatを適当なもの(RGBA Compressed PVRTC 4bits)に変えたりして最終的に解決しました。
ついでに、MaxSizeがデカすぎて容量をいたずらに増やしていたので、あえてここを小さくして容量削減もしておきました。
Unity2018.2.16
macOS High Sierra