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进行修改,采用国内镜像源(如阿里,腾讯等)

经过漫长的等待后,我们终于得到了项目的安装包。来看看它在真机上的运行情况吧:

参考资料

  1. Downloading Unreal Engine Source Code
  2. Setting Up Visual Studio Development Environment for C++ Projects in Unreal Engine
  3. Building Unreal Engine from Source
  4. Set Up Android SDK, NDK, and Android Studio using Turnkey for Unreal Engine
  5. 【UE5.4】猫猫都能看懂的Android打包新版攻略_ue5.4安卓打包-CSDN博客