1.4 调试程序
游戏开发中出现错误是正常的,调试程序发现错误非常重要。本节将介绍调试程序的几种常用方式。
1.4.1 显示Log
在Unity编辑器下方有一个Console窗口,用来显示控制台信息,如果程序出现错误,这里会用红色的字体显示出错误的位置和原因,我们也可以在程序中添加输出到控制台的代码来显示一些调试结果:
Debug.Log("Hello, world");
运行程序,当执行到Debug.Log代码时,在控制台会对应显示出Hello, world信息,如图1-13所示。
图1-13 显示调试信息
如果将Debug.Log替换为Debug.LogError,控制台显示的文字将呈红色显示。
这些Log内容不仅会在Unity编辑器中出现,在游戏运行中仍然存在,如果是运行到手机上,可以通过工具实时查看,因此对于最后发布的版本要注意控制输出Log的数量。
在Console窗口的右侧选择【Open Editor Log】,会打开编辑器的Log文档,当创建出游戏后,在这个Log文档中会显示出游戏的资源分配情况,如图1-14所示。
图1-14 Log中保存的信息
1.4.2 在Visual Studio中设置断点
在安装Unity时,如果安装了Microsoft Visual Studio Tools for Unity,即可使用Visual Studio调试Unity程序。方法很简单,首先选择代码,按F9键设置断点,然后到Visual Studio的工具栏中选择Attach to Unity and Play,如图1-15所示,Unity编辑器即会在调试状态下运行游戏。
图1-15 在Visual Studio中调试Unity程序
当程序运行至断点设置位置时即会暂停,可以通过Visual Studio提供的工具查看分析程序运行状况,如图1-16所示。按F5键可以继续断点后面的程序,或者按F11、F10键执行单步调试,最后按Shift + F5组合键停止调试。
图1-16 查看程序运行状况
1.4.3 在MonoDevelop中设置断点
Unity自带的Mono脚本编辑器也提供了断点调试功能,使用方法如下:
步骤 01 使用MonoDevelop作为默认的脚本编辑器。在Project窗口中双击C#脚本打开MonoDevelop编辑器。
步骤 02 在代码中按F9键设置断点。
步骤 03 在MonoDevelop的菜单栏中选择【Run】→【Run With】→【Unity Debugger】。
步骤 04 在Unity编辑器中运行游戏,当运行到断点时游戏会自动暂停,这时可以在MonoDevelop中查看调试信息,如图1-17所示。按F5键可以继续断点后面的程序,所有的快捷键与Visual Studio几乎是一样的。
图1-17 利用断点调试