调试 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 对象的额外数据。 例如,在调试器中查看 Scene 时,您现在会看到根游戏对象的列表,每个 GameObject 都会显示子游戏对象和附加组件。 ECS 实体 对象也会显示组件数据。

Pausepoints and Tracepoints
暂停点是一种新的调试器断点类型,它不会暂停代码的执行,而是在当前帧结束时暂停 Unity 编辑器。 这使您可以在代码中设置暂停条件(例如,按下按钮、达到某个健康值或只是走某条代码路径),然后使用 Unity 编辑器的 检查器 窗口检查游戏的当前状态。 因此,与断点不同,暂停点不会暂停 Unity 编辑器。
Set a Unity pausepoint
请执行以下操作之一:
Set a line breakpoint to a required line of code. Then, right-click the breakpoint and in the context menu, choose 转换为 Unity 暂停点.

Right-click the gutter area or the line number and choose 添加 Unity 暂停点 from the menu.

Optionally, set an additional condition or a hit count for the pausepoint.
一旦执行到达暂停点,Unity 编辑器将切换到暂停模式,允许您检查游戏的当前状态,甚至更改任何值。
If you use tracepoints, they will output to the Unity Console:

Debug textures
Pause the debugger when a texture object is available in the context.
In the 调试窗口, find the desired texture object and click 视图 next to it.
In the popup that appears, use the zoom and pan controls to study the texture:

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