欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Unity3D自带MonoDevelop编辑器断点调试教程

程序员文章站 2022-06-06 08:00:29
Unity3D自带MonoDevelop编辑器断点调试教程...

断点调试功能可谓是程序员必备的功能了。unity3d支持编写js和c#脚本,但很多人可能不知道,其实unity3d也能对程序进行断点调试的。不过这个断点调试功能只限于使用unity3d自带的monodevelop编辑器。而用visual studio是不行的。听说有个叫做unityvs的东西可以使用vs对unity进行断点debug,不过没试过。

好了,简单的说说做法吧:

首先肯定是先要把脚本编辑器指定为monodevelop了

Unity3D自带MonoDevelop编辑器断点调试教程

Unity3D自带MonoDevelop编辑器断点调试教程

选择好之后,可以在项目面板右键选择sync monodevelop project来打开monodevelop。

Unity3D自带MonoDevelop编辑器断点调试教程

因为需要有脚本才能对脚本进行调试,所以我写了个很简单的脚本,里面有两个按钮,按第一个“add”按钮的时候,程序会用一个循环的方式把从0到9的数加起来,然后累加给sum。按第二个按钮时,会把sum清零。 

Unity3D自带MonoDevelop编辑器断点调试教程

写好脚本之后,把脚本随便拖到场景的物体上面,我们准备调试了。在调试之前,我们需要把monodevelop和unity3d进行连接。

具体的连接方法有2种:

第一种,先把当前场景保存一下,然后关掉unity。回到monodevelop,按f5或者点击debug按钮。

Unity3D自带MonoDevelop编辑器断点调试教程

这样,monodevelop会打开一个新的unity3d界面,这时候连接完成了。

第二种方法,无需关掉unity,在monodevelop的run菜单下选择attach to process 

Unity3D自带MonoDevelop编辑器断点调试教程

然后选择unity的进程,点击attach按钮。

Unity3D自带MonoDevelop编辑器断点调试教程

 这时候,monodevelop就连接上了unity了。

当连接好了unity3d之后,右边的调试按钮就变成可用了,我们把视窗显示选择debug。

Unity3D自带MonoDevelop编辑器断点调试教程

debug模式脚本下面的位置会多出两个窗口。 

Unity3D自带MonoDevelop编辑器断点调试教程

回到unity,点击运行按钮,会看到刚才的脚本已经运行了。里面有两个按钮。 

Unity3D自带MonoDevelop编辑器断点调试教程

回到monodevelop,在脚本里面我们打一个断点(在行号左边点一下) 

Unity3D自带MonoDevelop编辑器断点调试教程

 然后回到unity里面,点击第一个按钮“add”。这时候断点起作用了,程序会暂停,monodevelop跳到断点的行。

Unity3D自带MonoDevelop编辑器断点调试教程

留意看下面debug的locals信息,会看到当前状态下的变量i和sum的值。

Unity3D自带MonoDevelop编辑器断点调试教程

使用调试按钮,让程序单步的运行

Unity3D自带MonoDevelop编辑器断点调试教程

我们看到了当前的变量i和sum的实际变化情况。

Unity3D自带MonoDevelop编辑器断点调试教程

到这里,断点调试已经完成。

调试完之后,我建议最好把monodevelop和unity3d的连接断开。假如你不断开的话,unity会一直处于很卡的状态。

断开的方法也是有几种了,首先对应debug按钮有一个断开的按钮,可以直接点击断开。

Unity3D自带MonoDevelop编辑器断点调试教程

或者我们可以把刚才附加的进程detach掉。 

Unity3D自带MonoDevelop编辑器断点调试教程

Unity3D自带MonoDevelop编辑器断点调试教程

再或者,我们可以点击这个插头按钮,把debugger 断开。

Unity3D自带MonoDevelop编辑器断点调试教程

这两种方法连接unity,我建议还是使用第二种附加进程的方式吧。毕竟你不可能每次调试都要关掉一次unity然后再从monodevelop打开一次unity。所以,编写脚本的时候,把连接detach掉,等需要调试的时候,再把进程attach上去,进行调试就行了。

相关标签: 编辑器 Unity