UnityでSpriteSkinがmissingになる

Unity

Unityで2Dアニメーションを作って、アセットバンドルに詰めると、実機でSpriteSkinがmissingになりアニメーションしない現象があった。初めて使う機能なので、使い方に問題があるかと調べていたが、結果としてはSpriteSkinがストリッピンングで消えていたのが原因だった。ストリッピングされないように link.xml を設定すると動いた。

<linker>
     <assembly fullname="Unity.2D.Animation.Runtime">
          <type fullname="UnityEngine.Experimental.U2D.Animation"/>
     </assembly>
</linker>

link.xmlについては↓を参照。

IL2CPP を使ったマネージバイトコードストリッピング - Unity マニュアル
マネージバイトコードストリッピングは、マネージアセンブリ (DLL) から使用しないコードを削除します。その処理は、まずルートアセンブリを定義し、それから、静的コード解析を使用してそれらのルートアセンブリが使用するマネージコードを定義します。アクセスできないコードはすべて削除されます。バイトコードストリッピングがコード...

コメント