日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

unity腳本教程 基于unity3d的畢業(yè)設(shè)計

接下來的幾天呢,大智作為探路者帶你一塊探索一下Unity2020.1里面有什么好玩的東西 。
這一次咱們來看看腳本編程方面的更新 。主要包含以下幾個方面:

  • 代碼默認(rèn)將是Release模式,提高編輯器性能
  • 支持泛型類型序列化
  • Code Coverage代碼覆蓋率(Preview)
  • 各個IDE集成支持移到了packages中
代碼默認(rèn)將是Release模式,提高編輯器性能從Unity2020.1開始,Unity編輯器代碼的編譯模式默認(rèn)是Release模式,可以提高性能,但是無法連接調(diào)試器(debugger),最主要是沒辦法斷點調(diào)試 。
那如何設(shè)置可以連接調(diào)試器,斷點調(diào)試呢?
可以在Unity窗口的右下角進(jìn)行切換到Debug模式,如下圖:

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


切換到Debug模式后就可以連接調(diào)試器,進(jìn)行斷點調(diào)試了 。
支持泛型類型序列化之前,如果你想要一個泛型類型作為SerializeField,你需要定義一個非泛型的子類 。

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


Unity2020.1移除了這個限制,你可以直接使用泛型類型作為SerializeField 。

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


那泛型類型在Inspector上會如何顯示呢?
答案是:會根據(jù)具體泛型類型顯示在Inspector上 。
如上面的代碼中泛型實例類型是string,Inspector上也會顯示string的輸入框 。

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


Code Coverage代碼覆蓋率(Preview)Code Coverage這個預(yù)覽包,可以在運(yùn)行Test Runner的時候自動幫你統(tǒng)計代碼覆蓋率 。
在Unity2020之后,啟用預(yù)覽包移到了菜單欄Edit > Project Settings > Package Manager中的Enable Preview Packages 。如下圖:

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


之后就可以在Package Manager中安裝這個包了 。

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


安裝好以后可以在菜單欄Window > Generic > Code Coverage打開 。

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


接著需要在Edit > Preferences > General中勾選Enable Code Coverage 。啟用后編輯器的開銷會增加、性能會稍有降低,建議在不使用時禁用功能 。勾選后包便能訪問Mono暴露的覆蓋數(shù)據(jù)的接口 。接著,需要重啟Unity 。
單次測試完成時,包會生成一份HTML報告,其中展示了總代碼行覆蓋率和每個類單獨的覆蓋情況 。

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


HTML報告中最為重要的數(shù)值是覆蓋行數(shù),表示了測試中所覆蓋的代碼量 。比如,數(shù)值為75%表明有四分之一的代碼行沒有測試到 。數(shù)值在計算時會考慮到哪些代碼行可以被測試到 。
Coverage History中的圖表(截圖中的紅線)表明了每次項目測試時的覆蓋率,覆蓋率越高越好 。如果有所下跌,可以編寫更多的測試用例來提升覆蓋率 。
Code Coverage目前支持EditMode(編輯模式)和PlayMode(運(yùn)行模式)測試,可以跟蹤長期的覆蓋量,可與Test Runner一同使用 。如果沒有任何測試用例,也可以使用Coverage Recording(覆蓋記錄)功能記錄覆蓋數(shù)據(jù) 。
如果你想更深入了解Code Coverage這個包,可以在Package Manager中導(dǎo)入Samples,里面有示例和教程文檔,安裝入口如下圖所示:

unity腳本教程 基于unity3d的畢業(yè)設(shè)計


image.png
各個IDE集成支持移到了packages中

推薦閱讀