【Unity】il2cppビルド時にリフレクション使用している関数が消える

DEVELOP, Unity

どこからも参照されていないけど独自スクリプトから関数を呼び出している、リフレクションを使用しているなど、そんな特殊な環境においては関数やクラスが バイトコードストリッピングで消えるのを防ぎたい。これは対処出来ます。

IL2CPP を使ったマネージバイトコードストリップ – Unity マニュアル

対処方法

Assets以下にlink.xmlを追加する。

<linker>
	<assembly fullname="UnityEngine">
		<type fullname="UnityEngine.Mathf" preserve="all"/>
	</assembly>
</linker>

サンプルではMathfをストリッピング対象から外しています。

Posted by kazupon