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)

相关推荐
小江村儿的文杰8 天前
UE4 UAT 的六大流程 build cook stage pacakge archive deploy 与UAT的参数
ue4
小江村儿的文杰8 天前
UE4 Rider调试时添加自定义命令行参数
ue4
小江村儿的文杰10 天前
UE4 Mac构建编译报错 no template named “is_void_v” in namespace “std”
macos·ue4
小江村儿的文杰10 天前
理解UE4中C++17的...符号及enable_if_t的用法及SFINAE思想
数据结构·c++·ue4
小江村儿的文杰10 天前
UE4 Mac构建编译报错 no member named “disjunction” in namespace “std”
ue4
小江村儿的文杰11 天前
UE4 Rider如何直接调试PC DebugGame
ue4
DongDongBaJiaYou22 天前
UE5打包,LoadObject加载不出网格|动画
ue5·ue4·虚幻·虚幻引擎
二DUAN帝2 个月前
UE实现路径回放、自动驾驶功能简记
人工智能·websocket·机器学习·ue5·自动驾驶·ue4·cesiumforue
3A是个坏同志3 个月前
UE4手动实现billboard效果让物体始终面向相机正面
ue4
致命的邂逅4 个月前
UE4游戏查找本地角色数据的方法-SDK
游戏·ue4