keywords:CMD Batch, Build Android, Packaging, Building, Unreal Automation Tool, Patching

Blogs & Documents

Build Configurations Reference
https://docs.unrealengine.com/5.3/en-US/build-configurations-reference-for-unreal-engine/

Origin Text: Getting Started with In App Billing APIs on Unreal Engine for Android
https://medium.com/@anirudhd/getting-started-with-in-app-billing-apis-on-unreal-engine-for-android-f3da0ed9b6d8

UE4 如何用命令行来打包你的游戏
https://juejin.cn/post/7163561864071217183

A man’s notes as he discovers how Unreal Engine compiles things
https://github.com/Allar/compiling-unreal

UE4 Building Plugins

Resource Patch
https://www.unrealengine.com/marketplace/en-US/slug/resource-patch

Check All Blueprints Compile
https://www.unrealengine.com/marketplace/en-US/slug/check-blueprints-compile

ue4 assets & extern resource packing plugin.
https://github.com/hxhb/HotPatcher

Reload header files, change your class structure, creates micro-dlls for ultra-fast reloads on big projects
https://www.unrealengine.com/marketplace/en-US/product/c-hot-reload

Hot Code Reloading

A UE4 plugin wrapper for Molecular Matter’s Live++ Hot-Reloading Library
https://github.com/kitelightning/LivePP

Reload header files, change your class structure, creates micro-dlls for ultra-fast reloads on big projects
https://www.unrealengine.com/marketplace/en-US/product/c-hot-reload

Building Scripts (CLI)

Compile Unreal Engine 4.22 using FastBuild
https://github.com/Ronsenval/UnrealEngineCompilationUsingFastBuild

UE4 Plugin Build system
https://github.com/coderespawn/ue4-plugin-build-system

Command-line interface for Unreal Engine 4 (Recommended)
https://github.com/adamrehn/ue4cli

Patching

keywords: 分包, chunk, cooking

ChunkDownloader Patching Solution. Setting up a local host web site
https://docs.unrealengine.com/4.27/en-US/SharingAndReleasing/Patching/ChunkDownloader/

General Patching Information. Information about .pak files, chunking, and other processes related to general patching
https://docs.unrealengine.com/4.27/en-US/SharingAndReleasing/Patching/GeneralPatching/

UE4 原生热更实现方案
https://zhuanlan.zhihu.com/p/523509674

Cooking and Chunking. Cooking Content and Building .pak Files for Distribution
https://docs.unrealengine.com/4.27/en-US/SharingAndReleasing/Patching/GeneralPatching/CookingAndChunking/

Build Commands

Location / directory of building / packing log:

Engine\Programs\AutomationTool\Saved\Logs\UBT-MyProj-Android-Shipping.txt  
Engine\Programs\AutomationTool\Saved\Logs\Logs.txt

UBT (UnrealBuildTool)

UBT Command Arguments

Example:

C:\UE4\Engine\Binaries\DotNET\UnrealBuildTool.exe UnrealHeaderTool Win64 Development -Project=C:\MyGame\MyGame.uproject  C:\MyGame\MyGame.uproject -NoUBTMakefiles  -Manifest=C:\UE4\Engine\Intermediate\Build\Manifest.xml -NoHotReload -log="C:\UE4\Engine\Programs\AutomationTool\Saved\Logs\UBT-UnrealHeaderTool-Win64-Development.txt"

You can find more UBT command example in Engine\Programs\AutomationTool\Saved\Logs\Logs.txt.

UHT (UnrealHeaderTool)

How to debug UnrealHeaderTool

Append follows (exclude UnrealHeaderTool.exe) in Visual Studio debug arguments(Configuration Properties -> Debugging -> Command Arguments), and switch Solution Configurations to Debug:
Game:

UnrealHeaderTool "C:\MyGame\MyGame.uproject" "C:\MyGame\Intermediate\Build\Win64\MyGame\Development\MyGame.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErrors -abslog="C:\MyGame\Engine\Programs\AutomationTool\Saved\Logs\UHT-Rouge-Win64-Development.txt"

UE4 Editor:

UnrealHeaderTool UE4Editor "C:\UE4\Engine\Intermediate\Build\Win64\UE4Editor\Development\UE4Editor.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErrors -abslog="C:\UE4\Engine\Programs\UnrealBuildTool\Log_UHT.txt"

UE5 Editor (Switch Solution Configurations to DebugGame Editor):

UnrealHeaderTool UnrealEditor "C:\UE5\Engine\Intermediate\Build\Win64\UnrealEditor\Development\UnrealEditor.uhtmanifest" -abslog="C:\UE5\Engine\Programs\UnrealBuildTool\Log_UHT.txt"

You can find more UHT command example in Engine\Programs\AutomationTool\Saved\Logs\Logs.txt.

UEBuildXXX.cs

File path

UEBuildTarget.cs & UEBuildModuleCPP.cs:

Engine\Source\Programs\UnrealBuildTool\Configuration\UEBuildTarget.cs
Engine\Source\Programs\UnrealBuildTool\Configuration\UEBuildModuleCPP.cs

UE4 generated header (PCH.Core.h, generated from UEBuildXXX.cs):

UE4\Engine\Intermediate\Build\Win64\UE4Editor\Development\Core\PCH.Core.h

UE5 generated header (PCH.Core.h, generated from UEBuildXXX.cs):

UE5\Engine\Intermediate\Build\Win64\x64\UnrealEditor\Development\Core\PCH.Core.h

青山依旧在,几度夕阳红。----杨慎《临江仙·滚滚长江东逝水》