下載uGUI源代碼
uGUI源代碼地址:https://bitbucket.org/Unity-Technologies/ui
下載代碼工具:tortoisehg-3.6.2-x64.msi
http://pan.baidu.com/s/1jGQaAuM
使用自己編譯的uGUI
1.首選下載uGUI代碼,如何下載參考相關文檔。
2.使用vs2012打開解決方案UISystem.sln,看到三個工程。
- UnityEditor.UI工程:生成Edtior/UnityEditor.UI.dll,主要是包含各UGUI控件在Editor的Inspector功能。
- UnityEngine.UI工程:生成Standalone/UnityEngine.UI.dll,主要是UGUI在發布包中使用的功能。
- UnityEngine.UI-Editor工程:生成UnityEngine.UI.dll,主要是UGUI在編輯器中使用的功能。
3.修改DLL輸出路徑
UnityEditor.UI工程輸出路徑:d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\Editor\
UnityEngine.UI
工程輸出路徑:d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\Standalone\
UnityEngine.UI-Editor
工程輸出路徑:d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\

到這步按F7就可以把uGUI代碼編譯出的dll給unity使用。
uGUI單步調試
uGUI單步調試
1.使用工具pdb2mdb.exe生成mdb文件
不過在Unity中還是無法調試到uGUI的源代碼中,因為剛剛編譯出來的調試信息文件是pdb,而mono的調試信息文件是mdb。因此我們需要用pdb2mdb工具將它進行。轉工具:d:\Program Files\Unity\Editor\Data\MonoBleedingEdge\lib\mono\4.5\pdb2mdb.exe
把CMD工作目錄轉到d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem。然后開始轉換。

但還是報錯了:

未經處理的異常: System.IO.FileNotFoundException: 未能加載文件或程序集“Mono.Cec
il, Version=0.9.5.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756”或它的某
一個依賴項。系統找不到指定的文件。
在 Pdb2Mdb.Driver.Main(String[] args)
解決方法:
下一個新的
pdb2mdb.exe工具
終於成功了:

可以看到目錄d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\下生成了
UnityEngine.UI.dll.mdb文件。
2.開始單步調試:
A.下好斷點。

B.運行Unity3D測試例子。

C.把dll附加到unity中去

4.做相應操作觸發斷點。(我這里是點擊測試例子的按鈕)

注意點:
1. 開代理工具 Proxifier 后。然后Attach Unity Debugger就不成功了。
leofang
2016年1月12日,星期二
附件列表