The default Scripting Runtime Version is .NET 4.6. (.NET 3.5 is marked as deprecated.) This option is a per-Project setting that you specify in the Unity Editor Player settings (Edit > Project Settings, then select the Player category), in the Configuration section:
The equivalent scripting API is the PlayerSettings.scriptingRuntimeVersion property.
Important: Changing this property requires an Editor restart because it affects the Editor as well as Players.
By default nothing should change about how Unity behaves or what .NET functionality is available. Once you use .NET 4.6 for a project, you will be able to use C# 6, .NET 4.6 class libraries, and new runtime features in user scripts and precompiled assemblies.
Note The .Net 3.5 scripting runtime is deprecated, but it will be available for Unity 2018.3 and 2018.4 LTS. Please migrate or start new Projects with the .NET 4.x runtime.
所有平台,但影响方式不同:
启用此选项后,Editor 和 Standalone(独立平台)使用新版本的 Mono。
所有游戏主机平台仅在面向新的 .NET 版本时才能使用 IL2CPP。
iOS 和 WebGL 将继续仅支持 IL2CPP。
Android 将继续同时支持 Mono 和 IL2CPP。
其他平台仍在进行相关工作以便支持新的 Mono 或 IL2CPP
IL2CPP 全面支持新的 .NET 4.6 API 和功能。
新的 Mono/IL2CPP 已通过 Unity 的内部自动化测试。当然,我们预计您仍可能遇到问题。如果遇到任何问题,请提交错误报告。
不包含。这是对类库和运行时的升级,但我们仍在使用 Boehm GC。我们正计划推出与 IL2CPP 结合使用的新版 Boehm(因此 IL2CPP 和 Mono 将具有完全相同的 GC)。
较新的 Mono 垃圾回收器 (SGen) 要求在 Unity 中进行额外的工作,一旦新的运行时和类库稳定后就会跟进。
新的 Mono 需要 VSTU 3.1。请安装此必要版本以便在 Windows 上使用新的 Mono 运行时。
.NET 4.6 类库比我们当前的 .NET 3.5 类库大得多。我们正在积极致力于改进托管链接器以便进一步减小大小。
Additionally, we are working on a new Unity specific class library API profile (like our current unity profile) that will:
a) 专门用于在 AOT 平台上工作
b) 具有更小的外围应用 (surface area),并在内部采用可剥离/可链接的设计
c) 支持 netstandard 2.0(尚待正式发布)
请提交错误报告。我们将迅速修复问题!
2018–08–02 Page published with no editorial review
从 2018.1 开始,MonoDevelop 由 Visual Studio 取代
.Net 3.5 scripting runtime deprecated in Unity 2018.3 NewIn20183