Unity 5 使用Roslyn编译器支持C# 7
- Unity 2017可选使用新的Mono编译器,支持.NET 4.6和C# 6,解决bug的同时,代码优化更佳。
- Unity 5可以使用社区开源方案:https://bitbucket.org/alexzzzz/unity-c-5.0-and-6.0-integration/overview
- 在Unity 5.5.4中的试用情况:
CSharp70Support 3.2.3 (for Net 4.6)
尝试失败,不能正常编译。CSharp70Support 2.0.5
使用Roslyn成功:- 把
CSharp70Support
目录解压到与Assets
并列的位置。 - 导入
CSharp70Support\CSharp70Support.unitypackage
。 - 重启Unity。
- (可选)创建
Assets\CSharpCompilerWrapper.rsp
文件,加入-unsafe
等项目所需的编译选项。 - (可选)下载升级Roslyn版本:
Roslyn 2.0.0.61501
,或者自行替换CSharp70Support\Roslyn
中的文件。 - (可选)运行
CSharp70Support\ngen install.cmd
可小幅提升编译性能。
- 把
- Rider支持此插件,可以自动切换.NET版本。
- Unity 5.5.4自带的Mono也可以支持C# 6,在
mcs.rsp
文件中添加一行:-langversion:6
即可。
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">