Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Unityがマルチプラット フォームビルドできる理由は? よく聞くIL2CPPって? 調べてみ...

Unityがマルチプラット フォームビルドできる理由は? よく聞くIL2CPPって? 調べてみました!

2025/7/5 Iwaken Lab. ”プログラミング入門”座談会

Avatar for donabe

donabe

July 05, 2025
Tweet

More Decks by donabe

Other Decks in Technology

Transcript

  1. スクリプティングバックエンドの比較 IL2CPP Mono 6 JIT(実行時コンパイル) AOT(事前コンパイル) Unity固有 .NET Framework ランタイムコード生成☓

    ビルド時間長い ランタイムコード生成◯ ビルド時間短い ※MonoBehaviorとは関係ないよ! 実行時高速 実行時そこそこ
  2. ILとは? C# 8 中間言語 ※.NET系以外でも存在する概念 VB F# NativeCode(マシン語) IL .NET系のものはCIL(Common

    Intermediate Language)と呼んだりする JIT ILについては深ぼるのはまたの機会に…
  3. IL2CPPとMono実行時の比較 C# Logic 16 IL VES(仮想実行環境) Native C# コンパイラ 各種デバイスに配置

    実行時に生成(JIT) 実行時はネイティブコードを動かすだけ なので高速 実行時にJITコンパイル 二回目以降は高速になる Monoランタイム ただAOTのコードは制約が多い
  4. 参考 19 IL2CPP のしくみ IL2CPP内部の紹介 Unity における .NET の概要 IL2CPPに関する軽い話

    Unity開発するにあたって知っておきたいコンパイラのすゝめ