周星星
回答者
回答于 2026-10-22
常见排查步骤
- 查看崩溃日志:引擎崩溃后会在项目目录的
Saved/Logs下生成日志文件,或在系统临时目录生成.dmp转储文件。通过日志中的调用栈(Call Stack)可定位引发崩溃的具体模块或代码行。 - 安全模式启动:在启动编辑器时使用命令行参数
-safe,禁用第三方插件和自定义模块。若安全模式下不再崩溃,说明问题出在某个插件或扩展上。 - 检查硬件与驱动:确认显卡驱动是否为官方稳定版本,而非测试版。同时监控运行时的内存占用,虚幻四对内存消耗较大,内存不足会导致直接闪退。
- 清理中间文件:删除项目目录下的
Binaries、Intermediate和Saved文件夹,然后重新生成项目文件并编译。这能解决因缓存损坏或编译残留导致的崩溃。 - 排查蓝图与代码:若在特定操作(如打开某关卡或点击某按钮)时崩溃,重点检查相关的蓝图逻辑或C++代码,尤其是空指针访问、死循环或数组越界。
判断依据
- 启动即崩溃:多为显卡驱动、DirectX版本或引擎安装损坏。
- 加载特定资产时崩溃:多为该资产文件损坏或引用丢失。
- 运行一段时间后崩溃:多为内存泄漏或资源未释放。
适用条件
上述方法适用于Unreal Engine 4.x各版本的编辑器崩溃及打包后运行崩溃的初步排查。
常见误区
- 盲目重装引擎:多数崩溃源于项目配置或插件冲突,重装引擎无法解决问题。
- 忽略日志信息:仅凭现象猜测原因效率极低,调用栈是定位问题的核心依据。
- 混用不同版本的插件:升级引擎版本后未同步更新或重新编译插件,极易引发内存访问异常。