调试 Unity 应用程序
JetBrains Rider 允许您使用 调试器的全部功能调试 Unity 游戏脚本,包括条件和依赖断点、监视、表达式求值等。
在本地计算机上调试 Unity 应用程序
确保您要调试的项目已在 Unity 编辑器中打开。
在 JetBrains Rider 中,打开相应的 Unity 项目解决方案。
通过单击代码所需行旁边的边距 设置断点。
选择 附加到 Unity Editor 并运行 运行配置。
通过以下任一方式启动调试会话:
点击
工具栏。
在主菜单中选择 。
按下 Shift+F9。
在远程设备上调试 Unity 应用程序
确保您要调试的项目已在远程设备上的 Unity 播放器中打开。
在 JetBrains Rider 中,打开相应的 Unity 项目解决方案。
通过单击代码所需行旁边的边距 设置断点。
确保在 Unity 的 构建设置 中选择了 开发构建 和 脚本调试 选项。
确保远程设备对当前网络可见,并且防火墙规则允许当前进程的 UDP 消息传入。
如果您使用的是 Apple USB 设备,请确保已安装 iTunes 或 Apple Mobile Device 服务。
从主菜单中选择 。
在打开的窗口中,单击 手动添加玩家地址 并指定 主持人 IP 地址和 端口 以连接到 Unity 播放器。
在列表中选择 Unity 进程并单击 确定。
使用 Rider 或 Unity 播放器中的 Play 按钮运行应用程序。
在开发 Android 游戏时,通常需要在实际的 Android 设备上调试游戏,以确保其正常运行。 一种方法是通过 USB 使用 Android 调试桥 (adb)——Android SDK 中包含的命令行工具。
通过 USB 使用 adb 调试 Android 设备上的 Unity 应用程序
在支持 Android 的 Unity 版本中打开 Unity 项目。
使用 构建设置 对话框将构建目标更改为 Android,并通过 USB 构建并部署到已连接的 Android 设备。
在 Rider 中,从菜单中选择 ,并选择要调试的 Android 设备和 Unity 项目。 设备上运行的多个 Unity 项目将分别列出。
添加断点并正常调试。 自动创建的临时 运行配置可用于快速重新连接。
请注意,在调试 Unity 应用程序时,调试器会显示一些 Unity 对象的额外数据。 例如,在调试器中查看 场景 时,您现在会看到根游戏对象的列表,每个 游戏对象 都会显示子游戏对象和附加组件。 ECS 实体 对象也会显示组件数据。

Pausepoint 与 Tracepoint
暂停点是一种新的调试器断点类型,它不会暂停代码的执行,而是在当前帧结束时暂停 Unity 编辑器。 这使您可以在代码中设置暂停条件(例如,按下按钮、达到某个健康值或只是走某条代码路径),然后使用 Unity 编辑器的 检查器 窗口检查游戏的当前状态。 因此,与断点不同,暂停点不会暂停 Unity 编辑器。
设置 Unity Pausepoint
请执行以下操作之一:
在所需代码行设置行断点。 然后,右键单击断点,在上下文菜单中选择 转换为 Unity 暂停点。

右键单击边距区域或行号,在菜单中选择 添加 Unity 暂停点。

根据需要为 Pausepoint 设置附加的 条件或命中次数。
一旦执行到达暂停点,Unity 编辑器将切换到暂停模式,允许您检查游戏的当前状态,甚至更改任何值。
如果使用 Tracepoint ,其输出将显示在 Unity 控制台中:

调试纹理
当上下文中有纹理对象可用时暂停调试器。
在 调试窗口 中,找到所需的纹理对象,并单击其旁边的 视图。
在弹出的窗口中,使用缩放和平移控件查看纹理:

排查调试 Unity 播放器的问题
如果您在调试 Unity 播放器时遇到一些问题,请参考 Unity 插件 GitHub 仓库的 故障排查页面。