ugui原始碼
以設定color為例 如果你呼叫了 sprite.color = color.red
首先color這個屬性是在父類graphic中的字段,如圖如果你去set顏色的話 會呼叫 setverticesdirty()函式
函式長這樣。
其中呼叫了canvasupdateregistry.registercanvaselementforgraphicrebuild()方法 並且傳入本身
層層呼叫會發現最後呼叫到了這個函式
這個函式也就是把這個介面加入到佇列裡面,佇列什麼時候會呼叫呢
乙個名為performupdate()的函式內呼叫的 可以看到會呼叫這個介面的 rebuild函式也就是graphic的rebuild函式
然後會呼叫到 updategeometry(),最後會呼叫到onpopulatemesh()函式
在這裡完成了 網格的重建以及顏色 uv資訊等更新
performupdate()這個函式什麼時候呼叫的呢?
檢視引用得知 是註冊了乙個事件,那這個時間從官網可以看到 是每次相機重新整理之前會呼叫一次 ,也就是說順序大概是
1. 把要改動的graphic加入到全域性佇列當中
2.然後攝像機每次渲染之前全部呼叫這些graphic的rebuild()函式 最後呼叫到了自身的onpopulatemesh()函式 然後重新整理
Unity UGUI原始碼除錯與修改
unityeditor.ui工程生成editor unityeditor.ui.dll,主要包含各ugui控制項在editor的inspector功能。unityengine.ui工程生成standalone unityengine.ui.dll,主要是ugui在發布包中使用的功能。unityeng...
Unity UGUI原始碼除錯與修改
關於ugui就不過多介紹了,那麼直接進入主題 3.使用文字開啟readme.md檔案,獲取ugui檔案路徑。本人的版本是windows版本,所以路徑如下 data unityextensions unity guisystem 4.關於ugui原始碼聯調 簡單粗暴的方式如下 備份guisystem目...
Fabric 原始碼解析 原始碼目錄解析
這裡對重要的一些目錄進行說明 bccsp 與密碼學 加密 簽名 證書等等 相關的加密服務 將fabric中用到的密碼學相關的函式抽象成了一組介面,便於拓展。bddtests 一種新型的軟體開發模式 行為驅動開 需求 開發 common 一些公共庫 錯誤處理 日誌處理 賬本儲存 策略以及各種工具等等 ...