Unity IL2CPP vs .NET 8: Compatibility Decision Pending
0 reputation · 31 Aug 2021, 23:35 UTC
Goal
Determine whether Unity’s IL2CPP scripting backend can build and run projects that target the .NET 8 runtime, and identify the unresolved decisions that govern this interoperability.
Constraints
Unity historically targets .NET Standard 2.0; experimental .NET 2.1 support was added in 2022.3, but full .NET 8 compatibility remains unverified. Build failures report missing type definitions, and the runtime still uses Mono 6.x, which may not support .NET 8 features. The Unity Package Manager’s NuGet integration currently relies on .NET 6, hinting at a potential API mismatch if .NET 8 is adopted.
Unresolved Questions
- Does IL2CPP currently build for .NET 8, or is it restricted to .NET Standard 2.0/2.1?
- Which type definitions are missing in .NET 8 builds, and are they slated for inclusion in a future Unity release?
- Will Mono 6.x be able to execute code compiled against .NET 8, or will a runtime upgrade be required?