Unity3D開源了,引擎和MONO編輯器的(de)C#源代碼發布了
Unity3D開源了,引擎和MONO編輯器的C#源(yuán)代(dài)碼發布了
3月23日我們發布了Unity引(yǐn)擎和編輯器的(de)C#源代(dài)碼,僅供Unity學習參考使(shǐ)用。
為何如(rú)此決定(dìng):
為了了解或改進自己的Unity項目,一直以來有用戶對(duì)Unity .NET程序集反匯編,我們的服務條款明確允許這樣做。但(dàn)反(fǎn)匯編有二大缺點:
-
盡管這不難做(zuò),但過(guò)程還是十分麻煩。
-
反匯編後導出的結果不會給出初的(de)注釋和變量名,這樣要理解代碼會很困難。
為了提供方便,不少社區成員不辭辛勞向GitHub倉庫提供反匯編的代(dài)碼。實話說,我們對這件事的感覺比較複雜。一方麵,我們很(hěn)高(gāo)興看到用戶為壯大Unity社區提(tí)供實用的服務。但(dàn)另一方麵,這種行為從嚴格意義上說是違法的(de)。雖然我們(men)的服務條(tiáo)款允許進行反匯編,但服務條款裏(lǐ)卻不允許將這(zhè)些代碼發(fā)布(bù)。
我們經過良久的考慮(lǜ),決(jué)定解決這些問題的*好辦法隻有一個:那就是我們自己發(fā)布源代碼。
要點解釋
為了防止產生誤(wù)解和標題黨,我們認為需(xū)要花些(xiē)篇幅具體解釋一(yī)下我們的(de)做法。
我們不會將Unity開源。抱歉,我們也沒有開源的計劃。我們(men)並非不喜歡(huān)開源,事實上我們其實有很多開源項目,例如:UI係統,Networking等。請參考:Unity開源項目參與指南
如果(guǒ)將(jiāng)來我們再(zài)也不(bú)需要源代碼,而(ér)且這樣做不會影響我們(men)的業務,我們會開(kāi)源所有Unity的代碼。但在可以預見的將來中,我(wǒ)們(men)會保有主引擎的所有權,C#參考源代(dài)碼會在定協議下(xià)發布,用戶僅可以閱讀代碼,不可(kě)以修改代碼。請查看完整的協議文本,請先了解所有細節以免(miǎn)觸及底線做違法的事。
我們也(yě)不會接受C#參考源代碼的合並請求(qiú)。我們既沒有法律框架(jià)也沒有組織框架來處(chù)理這些合並請求(qiú),更不用說準備合(hé)並請求(qiú)這個(gè)行為本身就已經違(wéi)反了參考協議。
我們希望能從中了解到C#參考源代(dài)碼有哪些(xiē)錯誤,請使用Unity Bug Reporter來匯報(bào)錯誤,不要隻是在GitHub上提交合並請(qǐng)求。注意,使用(yòng)Unity Bug Reporter來匯報錯誤時候,需要詳細描述問題,指出在參考源代碼(mǎ)中有哪些與問題相關的代碼行或文件。
源代碼(mǎ)的(de)用意
所(suǒ)有進入UnityEngine和UnityEditor托管程序集中的(de)C#源,其每(měi)個版本(běn)都會從(cóng)Unity 2017.1開始。在未來(lái)的日子裏,這個庫將會在每次新版本發布後不久進行更新。
- 上一篇:Uniyt3D物體移動的多種方法以及手套抓取方法 2018/4/12
- 下一篇:UE4插件,展示如(rú)何(hé)使用第三方庫製作UE4插件 2018/3/20