EOS - 集成EOS到项目中
Lazy loaded imageEOS - 集成EOS到项目中
type
status
date
slug
summary
tags
category
icon
password

准备工作(安装SDK与测试)

下载完成后解压并打开 Samples 目录,该目录下是使用各个 EOS 模块的案例。为了测试,build AuthAndFirends 。下载好 SDK 后,在官网上创建一个项目。
notion image
上图是创建好的项目,将这个页面中的各种 Key 复制到 SampleConstants.h 文件中。然后切换到本页面的 Client 标签栏,滚动到页面底部 Add new client policy 。 根据自己需要选择一个或者创建一个自定义 policy ,为了方便测试,可以创建一个所有 Features 都开启的 policy。创建完 policy 后再创建一个使用该 policy 的 client ,这样做以后,上图的 client 部分就会多出一个 client 。可以将它的 ID 和 Secret 复制到 SampleConstants.h 中,接着就可以开始本地调试了。
notion image
在调试前,还应该在上图页面中配置一下。在 Linked Clients 中添加之前创建的 client ,点开检查下 Permissions (不一定要修改)。按照下图方法就可测试登录:
notion image
 
 

集成到项目中

 
打开在需要集成 EOS 的项目目录,如果没有 Plugins 目录则创建一个,将引擎目录下(UE_XX\Engine\Plugins\Online)的 OnlineSubsystemEOS 目录拷贝到项目目录下的 Plugins 目录中,接着重新编译项目即可。
notion image
在插件设置中开启这个插件,如下图:
notion image
在项目设置的插件栏目找到这个插件名,将 https://dev.epicgames.com/portal 中对应项目的项目设置中的 key 复制并设置,如下图:
notion image
添加配置到 项目目录/Config/DefaultEngine.ini 中,配置内容如下:

登录与创建 Session 功能

只有用户登录后,才能进行创建 Session、销毁 Session 等操作。首先在项目的 项目名.Build.cs 中添加模块:"OnlineSubsystem", "OnlineSubsystemEOS" 。在项目中创建一个 GameInstance,并在项目设置中设置为当前的 GameInstance 。C++ 代码如下:
实现代码如下:
为了测试,创建一个 Widget :
notion image
notion image
在角色蓝图中的 BeginPlay 中令其开局创建:
notion image
下图为跑通的 Log:
notion image

登录工具

上面的代码每次运行游戏都要在弹出的网页登录,非常麻烦,可以使用官方提供的工具简化流程。在下载的 SDK 目录中寻找工具(EOS-SDK-30020700-vX.X.X-new\SDK\Tools\EOS_DevAuthTool-win32-x64-X.X.X)。解压后打开该目录中的 DevAuthTool ,登录:
notion image
修改 Login 函数:
此时,不需要频繁登录了。

EOS Plus

使用 EOS Plus ,可以同时支持多个平台,比如同时支持 Steam 和 Epic 平台。首先开启 Steam 插件。
notion image
https://dev.epicgames.com/portal 中,找到对应项目的项目设置,切换到 Identity Provider标签栏,添加一个 Identity Provider 。
notion image
💡
480 是 Steam 的测试 id。 Encryption Key 为:ed9386073647cea58b7721490d59ed445723f0f66e7414e1533ba33cd803bdbd
为了开启 EOS Pluse 并兼容 Steam,需要修改项目目录 Config 下的 BaseEngine.ini 文件,配置如下:
此时启动游戏,如果 Steam 开启并登录了,游戏中就会显示 Steam 面板。

销毁会话

UEOSGameInstance 中添加代码:
在蓝图中创建 Destroy Session 按钮,绑定 DestroySession 函数即可。

获取好友列表

代码如下:

显示 UI

显示好友与邀请好友 UI,代码如下:

寻找并加入 Session

代码如下:
 
 
分析 UE 官方脚本解决安卓环境配置问题(并优化画质)分析 UE 官方脚本解决安卓环境配置问题(并优化画质)
Loading...