UE构建基础和实践:一、概述
序言
构建这个概念是和应用程序包及资源等相关的,它的特点是使用脚本控制一系列的任务的处理,以减少人力操作带来的成本和操作失误风险。
在UE的概念里,构建往往是和打包相关的(如编译、cook、压缩打包等)。但是在项目日常的开发中,构建的语义会更加的广泛,据我所知它可能包含:
- 打各个平台的应用程序包
- 编译引擎
- 编译客户端
- Cook资源
- 资源扫描
- 脚本扫描
- 生成表格、协议、navmesh等各类资源
- ...
我们编写自动化脚本和使用CI/CD平台(如jenkins,鹅厂的蓝盾等)以自动化流水线的形式进行任务来提高生产力。
经典的构建样例
以出应用程序包为例:UE的构建应用程序包需要相关的代码和各种资源,我们可以抽象出其任务节点:
- 检查各个仓库(分支等),并拉取:
- 客户端代码
- 美术资源
- 引擎
- 自动化脚本
- ...
- 按照次序执行各种自动化脚本
- 分析归档构建结果(各种统计,版本号相关等)
- 把构建结果上传的仓库/服务器
- 通知执行人构建结果
UE的打包构建
构建入口代码流
跟进UE的构建入口:
可以看到最后都是调用到了UAT的BuildCookRun.Automation
脚本
注:RunUAT可以直接使用命令构建,也可以运行BuildGraph脚本
打包构建大概的流程阶段和文件流
这里先做一个大概的总结,后续系列文章里我会贴出我的实践测试以及关键代码流。
结语
这个系列我打算以一个经典案例——构建应用程序包为切入点,完整的实践和分析一个构建流程,并理解构建的基本流程和相关知识技能。这一篇大概描述了下UE的构建的宏观上概念,有些地方没有实践不太好理解,我会在后面的文章通过结合实践和分析来解释这些概念。最后,UE项目的构建是复杂的工作,本系列文章只是介绍了它的原生的基本用法,它大多只是执行UE预定义的参数和命令。在实际生产环境中,会对其进行优化和修改以符合实际需要(实际上,我们项目对其做了一定程度上的修改和优化)。
附录
项目打包整体工作流参考
- 资源cook处理和打包平台关联,可以延迟到打包阶段进行,采用多机器并行来加速
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」