Unity引擎及编辑器C#源代码发布

3月23日我们在GitHub上发布了Unity引擎和编辑器的C#源代码,仅供Unity学习参考使用。


为何如此决定

为了了解或改进自己的Unity项目,一直以来有用户对Unity .NET程序集反汇编,我们的服务条款明确允许这样做。但反汇编有二大缺点:

  • 尽管这不难做,但过程还是十分麻烦。

  • 反汇编后导出的结果不会给出最初的注释和变量名,这样要理解代码会很困难。

 

为了提供方便,不少社区成员不辞辛劳向GitHub仓库提供反汇编的代码。实话说,我们对这件事的感觉比较复杂。一方面,我们很高兴看到用户为壮大Unity社区提供实用的服务。但另一方面,这种行为从严格意义上说是违法的。虽然我们的服务条款允许进行反汇编,但服务条款里却不允许将这些代码发布

 

我们经过良久的考虑,决定解决这些问题的最好办法只有一个:那就是我们自己发布源代码。

 

要点解释

为了防止产生误解和标题党,我们认为需要花些篇幅具体解释一下我们的做法。

 

我们不会将Unity开源抱歉,我们也没有开源的计划。我们并非不喜欢开源,事实上我们其实有很多开源项目,例如:UI系统,Networking等。请参考:Unity开源项目参与指南。


如果将来我们再也不需要源代码,而且这样做不会影响我们的业务,我们会开源所有Unity的代码。但在可以预见的将来中,我们会保有主引擎的所有权,C#参考源代码会在特定协议下发布,用户仅可以阅读代码,不可以修改代码。请查看完整的协议文本,请先了解所有细节以免触及底线做违法的事。

 

我们也不会接受C#参考源代码的合并请求。我们既没有法律框架也没有组织框架来处理这些合并请求,更不用说准备合并请求这个行为本身就已经违反了参考协议。


我们希望能从中了解到C#参考源代码有哪些错误,请使用Unity Bug Reporter来汇报错误,不要只是在GitHub上提交合并请求。注意,使用Unity Bug Reporter来汇报错误时候,需要详细描述问题,指出在参考源代码中有哪些与问题相关的代码行或文件。

 

源代码的用意

所有进入UnityEngine和UnityEditor托管程序集中的C#源,其每个版本都会从Unity 2017.1开始。在未来的日子里,这个库将会在每次新版本发布后不久进行更新。

 

通过查看每次提交,你可以发现在后续版本之间发生了哪些变化。例如:你可以看到Unity 2017.3.1 patch 2的更新中修改了这些文件:

 

Unity引擎及编辑器C#源代码发布_第1张图片


下载源代码及参考信息


  • Unity引擎及编辑器C#源代码地址:

    https://github.com/Unity-Technologies/UnityCsReference

  • Unity开源项目参与指南

  • 服务条款及完整协议

    https://unity3d.com/cn/legal/terms-of-service/software

    https://unity3d.com/cn/legal/licenses/Unity_Reference_Only_License


小结


以上就是这篇文章的所有内容。请享受将其用于Unity学习参考的过程。并且继续支持Unity吧!

原文: https://mp.weixin.qq.com/s/RIMKIZI04rBJiVYz1qSk-A



.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

640?wx_fmt=jpeg

你可能感兴趣的:(Unity引擎及编辑器C#源代码发布)