一、对于程序逻辑比较简单时主要时在Unity控制台进行调试

1、Unity控制台上代码调试

可以在Unity的C#脚本中通过:Debug.Log() 或 Print() 来输出显示在Unity的console中,进行调试错误。

注意:Print() 函数 只能在C#脚本继承了MonoBehaviour类之后才可以使用,因为Print()是MonoBehaviour类中的成员。而Debug.Log() 则无论继承与否都可以使用。

在调试过程中所添加的 Debug.Log() 或 Print() ,在调试结束后一定要及时删除,因为在 Update 函数中的其每帧都会执行,会极其消耗CPU

  C#脚本(02)—— 代码调试

  • Clear :清空
  • Collapse:相同的输出时折叠起来,只显示一行
  • Clear on Play:在运行时清除之前的输出结果,只显示当前这次运行的结果
  • Error Pause:出错时会暂停

2、定义公有变量,程序运行后在检视面板查看数据

在C#脚本中定义的公有变量 time,用来显示运行的时间

 C#脚本(02)—— 代码调试 

在Unity 的检视面板中显示的该变量值

 C#脚本(02)—— 代码调试


二、程序逻辑比较复杂时,主要使用VS来进行调试

1、C# 脚本 Start 函数中代码的调试

(1)、调试步骤

  • 在可能出错的地方加断点
  • 启动调试
  • 在Unity中运行场景

(2)、在按 F11 执行单步调试过程中,可以在需要修改的代码行处右键,选择快速监视

C#脚本(02)—— 代码调试

然后在表达式一栏填写自己想要计算和测试的变量的值

C#脚本(02)—— 代码调试

(3)、还可以在即时窗口中进行同样的操作

C#脚本(02)—— 代码调试

 在即时窗口中进行变量的操作,还可以输入 transform 等变量来查看该变量的在Unity中的取值

C#脚本(02)—— 代码调试

2、C# 脚本 Update 函数中代码的调试

与Start函数中代码调试类似,不同的是过程设置

  • 首先在VS中按F5执行调试,此时无断点
  • 在Unity中点击运行,并进行单帧运行大指定的位置,暂停运行
  • 回到VS中,创建断点,然后再进行断点的调试
  • Unity中单帧执行

相关文章: