テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

【Unity】AndroidでIL2CPPを使用する

Unity 5.2 からIL2CPP(C#のコードをC++に変換する)が使用できるようになりました(プレビューとして)

やり方をココにメモしておきます。

設定方法

Preference(MacならばUnity > Preference、Windowsならば Edit > Preference)を開き、External Toolsを選択します。

f:id:tsubaki_t1:20150915010844p:plain

AndroidSDKとJDKとNDK等々、設定していないパッケージを「Download」ボタンを押してダウンロード先へジャンプし、ダウンロードします。

圧縮ファイル(もしくはインストーラー)を解凍し、「Browse」ボタンで解凍したフォルダを選択します。

Editor > Project Settings > Playerでプレイヤー設定を開き、Android の Other Settings の Configuration の Scripting Background を IL2CPP に設定します。

f:id:tsubaki_t1:20150915011431p:plain

あとはAndroidをビルドすれば、C#のマネージドコードがC++をすっ飛ばして.soに変換されて出力されます。

CPPのコードを見たい

現段階のIL2CPP(Android)は.soを直接出力します。

で、この変換前のソースコードですが、Tmp/StagingArea/IL2Cpp/il2cppoutputにあるソースコードが多分それです。なので、この辺りを超頑張って自分で改造して、超頑張ってビルドすれば、改造が可能かもしれません。(未検証)

f:id:tsubaki_t1:20150915012202p:plain