1 - 源码构建UE
本文将记录我从源码构建UE5.4.4,创建一个FPS项目,然后打安卓包的过程~
从源码构建UE
在获取UE源码之前,请确保你的github账号和Epic账号绑定好,并且加入Epic组织。接下来看看如何获取UE源码。
获取UE源码
首先需要在Github上获取UE的仓库地址,然后就能克隆了。克隆需要一点时间,可以先配置Visual Studio。经过漫长的等待后,源码仓库已经被克隆到指定地点,接下来需要选择对应版本分支,我这里用5.4.4-release
:
git checkout refs/tags/5.4.4-release
配置Visual Studio
首先是VS版本的选择,UE5.4以后只能用VS2022去编译构建工程,这一点需要注意。其次是VS自身的配置,如果是初次安装VS,需要安装如下模块:
- .Net桌面开发
- C++桌面开发
- 泛用Windows平台开发/Windows应用程序开发
- C++游戏开发:在默认选中的基础上,还需要安装:
- C++ profiling tools
- C++ AddressSanitizer
- Windows 10 SDK (10.0.18362 or Newer)
如果不是初次安装VS,可以在搜索框中搜索Visual Studio Installer
,然后对VS2022进行修改,查看是否安装了这些模块。
安装完模块后,如果之后选用VS开发UE项目,可以参考资料2的Recommended Settings
对VS进行设置,方便后续开发。
运行脚本
然后进入项目文件夹,运行Setup.bat
脚本。这个脚本会下载引擎的二进制内容,以及安装一些前置软件并初始化UE文件关联。
cd UnrealEngine
./setup.bat
setup.bat
运行完毕后,需要运行GenerateProjectFiles.bat
脚本,为VS2022编译构建引擎生成项目文件:
./GenerateProjectFiles.bat
构建引擎
接下来双击UE5.sln
项目文件进入项目,将解决方案配置改为Development Editor
,目标平台是Win64
,然后右键UE5,点击生成即可。等待很久时间后,引擎也是构建好了,接下来就可以创建项目开始学习了。
创建工程
只需选中 游戏->第一人称射击
模板,然后创建一个C++工程即可。在编辑器中,可以通过编辑器偏好设置 -> 通用设置 -> 源代码
中选择用Visual Studio 2022还是用Rider进行C++脚本编程。
打安卓包
配置安卓SDK
官网上资料要求配置如下版本的环境:
- Current UE Version: 5.4.4
- Android Studio Version: Flamingo 2022.2.1 Patch 2 May 24, 2023
- Android SDK:
- Recommended: SDK 34
- Minimum for compilation: SDK 34
- Minimum SDK for shipping on devices: 26
- NDK Version: r25b
- Build-tools: 34.0.0
- Java runtime: OpenJDK 17.0.6 2023-01-17
- AGDE v23.1.82+ required for AGDE debugging.
在UE5.4中,Android环境使用Turkey来配置。可以通过在编辑器里运行,或者在命令行上运行。这里选择前者,通过平台 -> 安卓 -> 安装SDK
,即可一键为你配置安装。如果电脑没有安装Android Studio,它也会为你安装,然后需要你根据教程4去配置安装SDK。
项目设置
安装好SDK后,还需要在项目设置里对平台 -> 安卓
进行如包名等的设置,然后就能打包了。
进一步的设置(例如是否打包成.apk
而不是.obb
)详见参考资料5。
打包
打包则通过编辑器首页中的平台 -> 安卓 -> 打包
完成,这里选择ETC2的包(ETC2应该是纹理压缩格式)。
在打包的过程中可能会出现和网络相关的错误,例如:
- Gradle安装超时:可以直接从报错网址上下载,然后解压到
C:/Users/你的用户名/.gradle/wrapper/dists/gradle[版本号]/[校验字符串]/
中。 - Gradle部分插件安装超时:可以将引擎中
/Engine/Build/Android/Java/gradle/build.gradle
进行修改,采用国内镜像源(如阿里,腾讯等)
经过漫长的等待后,我们终于得到了项目的安装包。来看看它在真机上的运行情况吧:
参考资料
- Downloading Unreal Engine Source Code
- Setting Up Visual Studio Development Environment for C++ Projects in Unreal Engine
- Building Unreal Engine from Source
- Set Up Android SDK, NDK, and Android Studio using Turnkey for Unreal Engine
- 【UE5.4】猫猫都能看懂的Android打包新版攻略_ue5.4安卓打包-CSDN博客