Unity的asm筆記


使用asm的好處

減少修改C#后unity編譯dll的時間,對於項目中的C#代碼越多效果越明顯,比如我們的一個3dmmo項目是純C#開發,每次修改C#后編譯時間就要26s以上

在Unity2018.2中已支持asm

注意事項

引用報錯

把第三方庫或不常改動的代碼放到 Standard Assets或Plugins 目錄下,會最先編譯,且不能依賴於其它腳本

注:建議每一個asm中的代碼是獨立的,不依賴於外部,但asm之間可以相互引用

腳本引用丟失

如果美術資源上綁定的MonoBehaviour腳本沒有做成asm,而在客戶端工程中此代碼做成了asm則會出現問題,具體表現為gameobject上引用的腳本丟失,在代碼中GetComponent無法查找到。

解決辦法就是兩個工程的做法需要一樣。

注:我在unity2018.4.15中遇到這個問題

各版本Unity的差異

在Unity的Project視圖中點右鍵 - Create,有以下選項

  • Create - Assembly Definition

  • Create - Assembly Definition ,創建出一個xx.asmdef,unity2018.4.15只有此項
  • Create - Assembly Definition Reference,創建出一個xx.asmref,在unity2019.3.7有這項,用來asm之間相互引用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM