UE4如何调试BuildCookRun

了解UAT

UAT是UnrealAutomationTool,最重要的一个作用就是BuildCookRun,也就是编译、烘焙、运行测试一条龙。下面是一则示例:

{你的工程}/Engine/Build/BatchFiles/RunUAT.bat -ScriptsForProject={你的工程}.uproject BuildCookRun -nop4 -project={你的工程}.uproject -cook -stage -archive -archivedirectory={你的工程所在的目录} -package -ue4exe={你的工程}/Engine/Binaries/Win64/UE4Editor-Cmd.exe -compressed -pak -prereqs -nodebuginfo -manifests -targetplatform=Win64 -clientconfig=Development -utf8output -NoCompile

在UAT的脚本(EngineSource\Engine\Build\BatchFiles\RunUAT.bat)中 ↑,最重要的是 47 - 51 行,这说明,UAT对应的工具是 AutomationToolLauncher.exe。

调试UAT

一、首先编译好Programs重的AutomationTool.cs和 AutomationToolLauncher.cs 两个工具;

二、在Rider的右上角调试器中,选择AutomationToolLauncher,并在More Actions中配置参数如下,

Program arguments:

-ScriptsForProject={你的工程}.uproject BuildCookRun -nop4 -project={你的工程}.uproject -cook -stage -archive -archivedirectory={你的工程目录} -package -ue4exe={你的工程}\EngineSource/Engine/Binaries/Win64/UE4Editor-Cmd.exe -compressed -pak -prereqs -nodebuginfo -manifests -targetplatform=Win64 -build -target={你的工程名} -clientconfig=Development -utf8output -compile

备忘一下:原本填写的是 $(LocalDebuggerCommandArguments),其实就是指这些configuration参数。当调试结束后,记得把这个值更改回来。

三、加断点,并点击Debug,开始调试

举个例子,加到这里:

四、顺利完成

这些是关键日志:

Copying NonUFSFiles to staging directory: G:\St\MyProject\Saved\StagedBuilds\WindowsNoEditor

********** STAGE COMMAND COMPLETED **********

********** PACKAGE COMMAND STARTED **********

********** PACKAGE COMMAND COMPLETED **********

********** ARCHIVE COMMAND STARTED **********

Archiving to G:\St\MyProject

********** ARCHIVE COMMAND COMPLETED **********

BUILD SUCCESSFUL

AutomationTool exiting with ExitCode=0 (Success)

相关推荐
清泓y12 天前
UE5--浅析委托原理(Delegate)
c++·ue5·ue4
灵境引路人13 天前
【虚幻引擎UE】UE4.23到UE5.5的核心功能变化
ue5·ue4·虚幻
爆米花煮鸡蛋19 天前
UE4.27打包安卓报错
android·ue4
我命由我1234522 天前
游戏引擎 Unity - Unity 启动(下载 Unity Editor、生成 Unity Personal Edition 许可证)
c语言·c++·后端·unity·c#·游戏引擎·ue4
阿拉丁的梦2 个月前
用c++构建的actor导致整个ue5蓝图项目打不开。
ue4
青年夏日科技工作者2 个月前
UE5.3 虚幻引擎 安卓Android地图插件开发打包
android·ue4
Growthofnotes2 个月前
UE4_用户控件_3_用户控件输入数据的方法
ue4
Alexander yaphets2 个月前
UE4.27 Android环境下获取手机电量
android·ue4
小江村儿的文杰2 个月前
形象地理解UE4中的数据结构 TLinkedListBase
数据结构·ue4
小江村儿的文杰2 个月前
源码理解 UE4中的 FCookStatsManager::FAutoRegisterCallback RegisterCookStats
ue4