Unity的ugui是作为一个插件放在Unity里面的,所以没有ugui,unity也一样能正常运行。基于这一点,用以下方法进行UGUI源码调试,会非常方便。
0. 准备工作
- 根据自己电脑上的Unity安装目录,找到UGUI存放的地方。进入此目录(我电脑上的目录是D:\Program Files\Unity\Editor\Data\UnityExtensions\Unity)。
- Unity目录下的GUISytem文件夹就是UGUI存放的地方。
- 首先,备份此文件夹。
- 然后,删除此文件夹。(再次进入Unity程序,会发现没有UI选项了)
- 至此,准备工作做完。
1. 下载UGUI源码
可以在Unity官方开源的地方下载。
我下载的版本是2017.2f3,zip格式。
2. 拷贝UGUI代码至项目文件
- 首先,打开Unity并创建一个新的项目。
- 然后,把刚刚下载的UGUI源码中UnityEditor.UI、UnityEngine.UI两个文件夹,拷贝到刚刚新建的项目Assets目录下。
- 删除两个文件夹里面的bin、obj和Properties文件夹,以及.csproj文件。这些都是不必要的内容,只保留源码。
- UnityEditor.UI文件夹是UGUI的编辑器实现类,因为Unity中规定编辑器实现类必须以Editor命名,所以要将UnityEditor.UI改名为Editor。
- 最后,重启Unity,再打开刚刚新建的项目(为了让加入的UI生效)。(至此,已经将UGUI源码添加到了项目里面,为源码调试做好了准备)
3. 源码调试测试
- 右键创建一个UGUI的Button。
- 然后在Button的Inspector面板里的Button(Script)处,右键-Edit Script,这样就打开了Button脚本的源码。
- 在源码中Button.cs中找到Press()方法,并在方法内的第一行代码处打断点,然后点击附加到Unity,运行此脚本。
- 然后回到Unity,运行这个项目,再点击Button按钮。你会发现刚刚的断点命中了。
这样调试源码就方便很多,以后学习UGUI源码就用这种方式。还有,unity的官方文档(在文档的UnityEngine.UI模块下)对UGUI的解释很清楚了,可以对照着看,会轻松很多。