下载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\
![](https://i-blog.csdnimg.cn/blog_migrate/6a313fb1bfe49428f9b91619fd04ed2b.png)
到这步按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。然后开始转换。
![](https://i-blog.csdnimg.cn/blog_migrate/15bc8b61ee83b686097f6a0cdf8b853c.png)
但还是报错了:
![](https://i-blog.csdnimg.cn/blog_migrate/895413d3e92f352dee3871cd787a1a49.png)
未经处理的异常: System.IO.FileNotFoundException: 未能加载文件或程序集“Mono.Cec
il, Version=0.9.5.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756”或它的某
一个依赖项。系统找不到指定的文件。
在 Pdb2Mdb.Driver.Main(String[] args)
解决方法:
下一个新的
pdb2mdb.exe工具
终于成功了:
![](https://i-blog.csdnimg.cn/blog_migrate/f24e2fcca308edd28cbe36d83c0f96d6.png)
可以看到目录d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\下生成了
UnityEngine.UI.dll.mdb文件。
2.开始单步调试:
A.下好断点。
![](https://i-blog.csdnimg.cn/blog_migrate/702a6cbf25ce19560f3b73ef8e40b77e.png)
B.运行Unity3D测试例子。
![](https://i-blog.csdnimg.cn/blog_migrate/8f597699c687e8cc8038419fd5427981.png)
C.把dll附加到unity中去
![](https://i-blog.csdnimg.cn/blog_migrate/9754e565c9ea917f35814847c7ee395a.png)
4.做相应操作触发断点。(我这里是点击测试例子的按钮)
![](https://i-blog.csdnimg.cn/blog_migrate/3ae910e46f8a93000c9b7cd9cdb2f5d4.png)
注意点:
1. 开代理工具 Proxifier 后。然后Attach Unity Debugger就不成功了。
leofang
2016年1月12日,星期二
附件列表