将虚幻引擎官方 Demo 游戏 Lyra 接入 Agones
安装 Visual Studio
-
进入 Visual Studio 下载页面,下载 Visual Studio 并安装,如需免费,可使用社区版。
-
安装时确保以下 C++ 相关选项勾选上。

-
虚幻引擎对最新编译器版本可能有兼容性问题,建议勾选下虚幻引擎支持的最新 MVSC 版本,现在虚幻引擎源码中找到当前首选的编译器版本,文件路径
Engine/Config/Windows/Windows_SDK.json。
-
在 Visual Studio Installer 中点到【单个组件】,搜索并勾选下首选编译器版本相关组件(记得取消勾选下最新版本)。

-
同样也在
Windows_SDK.json文件中可找到建议的 .NET 版本。
-
在【单个组件】中搜索并勾选下 .NET 相关组件(记得取消勾选下最新版本)。

通过源码安装虚幻引擎
虚幻引擎支持通过 Epic Games Launcher 来安装虚幻引擎,也可以通过源码安装。一般虚幻引擎的游戏都结合 Visual Studio 和 C++ 来开发,虚幻引擎需要通过源码方式来安装。
以下是安装步骤:
-
确保已注册 Epic Games 账号与 GitHub 账号。
-
登录Epic Games 官网,进入应用与账户,连接 GitHub 账号。

-
登录 Github 官网,等待接收 Epic Games 加入组织的邀请。
-
接受邀请后进入 Unreal Engine 代码仓库,在 release 页面 下载最新版本的源码压缩包。
-
解压后打开命令行,进入源码目录。
-
执行
Setup.bat,会下载安装一些依赖,预计需要较长时间。
-
执行
GenerateProjectFiles.bat,生成 Visual Studio 项目文件。
-
双击
UE5.sln文件以将项目通过 Visual Studio 加载。
-
解决方案配置设为
Development Editor(开发编辑器)。
-
解决方案平台设为
Win64:
-
在右侧解决方案资源管理器中,右键
UE5,点击【生成】。
-
然后经过漫长的构建等待,具体时长也跟机器性能有关(我这里使用的16c64g的windows云服务器,耗时1小时42分),注意需要 0 失败,如果有发现失败的,要看下失败原因。

-
右键
UE5,点击【设为启动项目】。
-
点击启动调试。

-
如果一切正常,会看到虚幻编辑器启动界面。

下载 Lyra 项目
-
进入 Epic Games 官网 。
-
点击右上角的【下载】,下载
EpicInstaller来安装Epic Games Launcher。 -
打开
Epic Games Launcher后登录 Epic Games 账号。 -
依次点击【虚幻引擎】-【示例】。

-
点击 【Lyra Starter Game】-【创建工程】。

-
选择好位置,点击【创建】。

-
等待下载完成。

配置 Lyra 项目
-
将 Lyra 项目文件夹里放到 UE 源码目录下,Visual Studio 会自动识别并提示是否重新加载,点【是】。
-
右键 Lyra,点击【生成】。

-
等待生成成功。

-
在 Lyra 项目的文件夹下双击 UE 文件(
.uproject) 的图标,在虚幻引擎中打开 Lyra。

-
打开成功后,会看到如下界面。

-
点击【编辑】-【项目设置】。

-
默认地图设置为
L_Expanse,这样启动游戏客户端时会直接进入地图,而不是主菜单,方便测试。
-
回到主界面,依次点击【内容侧滑菜单】-【Plugins】,搜索并双击
B_ShooterBotSpawner打开蓝图窗口。
-
Num bots to Create设为 0,然后点【编译】。
-
关闭蓝图窗口。
编译服务端
-
在 Visual Studio 中,解决方案配置切到
Development Server。
-
右键 Lyra,点击【生成】。

-
经过漫长的等待后,在 Lyra 的
Binaries\Win64目录下会生成LyraServer二进制。
编译客户端
-
在 Visual Studio 中,解决方案配置切到
Development Client。
-
右键 Lyra,点击【生成】。

-
经过漫长的等待后,在 Lyra 的
Binaries\Win64目录下会生成LyraClient二进制。
烘培服务端
-
按照截图勾选
开发和Server。
-
按照如下截图点击【烘培内容】。

-
右下角将显示一个对话框,表明内容正在烘焙。点击此对话框中的 显示输出日志(Show Output Log) ,监控烘焙过程,等待完成。

-
在 Lyra 的
Saved\Cooked目录下可以看到烘培出了WinsowServer文件夹的内容。
-
在命令提示符中找到你的项目目录,并执行
./Binaries/Win64/<PROJECT_NAME>Server.exe -log,测试服务器是否成功运行。
烘培客户端
-
按照截图勾选
开发和Client。
-
按照如下截图点击【烘培内容】。

-
烘培完成后,在 Lyra 的
Saved\Cooked目录下可以看到烘培出了WinsowClient文件夹的内容。
启动服务端和客户端
-
在命令行进入 Lyra 项目的子目录
Binaries\Win64 -
执行这个命令启动服务端:
<PROJECT_NAME>Server.exe -log。
-
执行两次这个命令,启动两个客户端,即两个玩家连上同一房间:
<PROJECT_NAME>Client.exe 127.0.0.1:7777 -WINDOWED -ResX=800 -ResY=450。
交叉编译服务端
-
关闭虚幻引擎编辑器,再重新双击 Lyra 的
uproject文件,以便用虚幻引擎编辑器重新打开 Lyra 项目,确保交叉编译的工具生效。 -
在 UE5 中平台选到 Linux,编译目标选到 Server,点击打包项目。

-
选择输出的目录,我这里直接选 Lyra 项目根目录。

-
等待交叉编译打包完成。

-
完成后可以看到选择的目录下多出一个
LinuxServer的目录,这个就是交叉编译出来的服务端。
服务端接入 Agones
-
下载 Agones 最新 release 的源码压缩包并解压。
-
将
sdks/unreal下的Agones目录拷贝到 Lyra 项目的Plugins目录下。
-
编辑 Lyra 项目的
uproject文件,添加Plugins。{
"Enabled": true,
"Name": "Agones"
},
-
在合适的位置初始化 Agones 的 SDK,调用 SDK 的一些 hook 函数(由于本人对虚幻和C++不熟,这里省略)。
-
按照前面
烘焙服务端和交叉编译服务端的步骤,重新打包服务端。