Unity Androidのコンパイル IL2CPPとMonoの比較
参考文献
https://zhuanlan.zhihu.com/p/19972689?refer=indieace
https://blogs.unity3d.com/cn/author/josh/
他の人のブログやIL2CPPの開発者のブログから、IL2CPPが未来であることが理解できるはずです。そして、現在も改良中です。コンパイル時間が長すぎることについては、iosのようにノーストリップ・モードを採用し、標準ライブラリを実行することで、コンパイル時間を短縮できるかもしれないということです(憶測ですが)。
IL2CPPとMonoの性能比較
テストモデル Lenovo VIBE
<テーブル
時代
IL2CPP
モノ
探す
10000
36
34
GetComponent
10000
12
6
CreatePrimitive
10000
633
716
子プロセスの追加
10000
238
258
Mathf.Acos
10000
0
3
AddComponent
10000
1097
835
リソース.ロード
10000
132
134
AssetBundle.LoadFormFile
100
154
192
TOTAL
2310
2203
データは変化していますが、複数のテストを行ってもほとんど変動していません。
Il2cppとmonoは全体的に似たような性能です。
il2cppはmonoに比べadd get componentで劣り、il2cppはmonoに比べMathで若干優れています。
IL2CPP開発における注意点
IOSと同様、C#のJIT化は禁止されています。
System.Reflection.Emitライブラリのものは使用できません。
外部から参照されるライブラリファイル(自作またはサードパーティ製)については、IL2cpp.exeがc++コードを生成する際にリンクされます。これらのライブラリがコード内の他のプラットフォームで必要とされる場合、または正しく参照されない場合、それらをコメントアウトするか、プラットフォームマクロでインクルードするか、またはリンクは失敗します。
IL2CPP APKインストーラに関する注意事項
Il2cppは初回で正常にインストールされます。
同じパッケージ名でインストールした後、アンインストールして再度インストールすると、起動時にエラーが発生する
byil2cpp が必要とするリソースの抽出に失敗しました。
問題なく携帯電話を再起動しました。
Il2cpp オーバーライド インストール 例外なし
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ハートビート・エフェクトのためのHTML+CSS
-
HTML ホテル フォームによるフィルタリング
-
HTML+cssのボックスモデル例(円、半円など)「border-radius」使いやすい
-
HTMLテーブルのテーブル分割とマージ(colspan, rowspan)
-
ランダム・ネームドロッパーを実装するためのhtmlサンプルコード
-
Html階層型ボックスシャドウ効果サンプルコード
-
QQの一時的なダイアログボックスをポップアップし、友人を追加せずにオンラインで話す効果を達成する方法
-
sublime / vscodeショートカットHTMLコード生成の実装
-
HTMLページを縮小した後にスクロールバーを表示するサンプルコード
-
html のリストボックス、テキストフィールド、ファイルフィールドのコード例