硬盘忙碌#

这不是强制性的,但我们建议在固态硬盘 (SSD) 上运行您的 Unreal 环境。在调试、日志记录和 Unreal 资产加载之间,硬盘可能会成为您的瓶颈。在 Unreal 加载环境时,您的硬盘会非常忙碌是正常的,但如果 Unreal 游戏运行时您的硬盘性能看起来像这样,那么您可能无法获得良好的飞行体验。

Busy Hard Drive

事实上,如果硬盘如此忙碌,无人机很可能根本无法正常飞行。由于某些未知原因,这个 I/O 瓶颈也会干扰无人机控制回路,如果该回路没有以高频率(300-500 Hz)运行,那么无人机将无法飞行。不足为奇,在 Pixhawk 飞控器上运行的 PX4 固件内部的控制回路以 1000 Hz 运行。

减少 I/O#

如果您这个周末无法跑到 Fry's Electronics 买一个价格过高的超高速 SSD,那么可以采取以下步骤来减少硬盘 I/O

  1. 首先,使用烘焙内容在 UE 编辑器或任何调试环境之外运行 Unreal 环境,并将内容打包到您最快的 SSD 硬盘。您可以使用此菜单选项完成此操作

Package Unreal Project

  1. 如果您必须使用 UE 编辑器(因为您正在积极修改游戏资产),那么至少不要在调试器中运行。如果您正在使用 Visual Studio,请选择不调试启动。
  2. 如果您必须调试应用程序,并且您正在使用 Visual Studio 调试器,请阻止 Visual Studio 记录 Intellitrace 信息。
    转到“工具/选项/调试/Intellitrace”,然后关闭主复选框。
  3. 关闭您的环境可能启用的任何 Unreal 分析,尤其是任何文件日志记录。

页面错误导致的 I/O#

如果您的系统内存不足,它可能会开始将内存分页到磁盘。如果您的操作系统已启用分页到磁盘,请确保它分页到您最快的 SSD。或者如果您有足够的 RAM,请完全禁用分页。事实上,如果您禁用分页并且游戏停止工作,您将确定内存不足。

显然,关闭任何其他不必要的应用程序也应该释放内存,这样您就不会耗尽内存。

理想的运行时性能#

这是我从 UE 编辑器飞行时慢速硬盘的样子。您可以看到它非常忙碌,但无人机仍然可以正常飞行

Package Unreal Project

这是当无人机在 Unreal 烘焙应用程序中飞行时(没有 UE 编辑器,没有调试器)我的快速 SSD 的样子。在这种情况下,它完美飞行不足为奇

Package Unreal Project