将亚马逊添加GameLift到 O3DE 游戏客户端和服务器 - 亚马逊 GameLift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将亚马逊添加GameLift到 O3DE 游戏客户端和服务器

您可以使用 O3DE(一种开源、跨平台的实时 3D 引擎)来创建高性能的交互式体验,包括游戏和模拟。O3DE 渲染器和工具封装在模块化框架中,您可以使用首选开发工具对其进行修改和扩展。

模块化框架使用 Gems,其中包含具有标准接口和资产的库。选择你自己的 Gem,根据你的要求选择要添加的功能。

亚马逊 GameLift Gem 提供以下功能:

亚马逊GameLift整合

一个扩展 O3DE 网络层并让多人游戏 Gem 与亚马逊GameLift专用服务器解决方案配合使用的框架。Gem 提供与亚马逊GameLift服务器 SDK 和 SD Amazon K 客户端(调用亚马逊GameLift服务本身)的集成。

编译和打包管理

关于打包和选择性上传专用服务器版本和 Amazon Cloud Development Kit (Amazon CDK) (Amazon CDK) 应用程序以设置和更新资源的说明。

亚马逊 GameLift Gem 设置

按照本节中的步骤在 O3DE 中设置亚马逊 GameLift Gem。

先决条件
开启亚马逊 GameLift Gem 及其依赖项
  1. 打开项目管理器

  2. 打开项目下的菜单,然后选择编辑项目设置...

  3. 选择 “配置宝石”。

  4. 开启亚马逊GameLift宝石和以下依赖宝石:

    • AmazonCore Gem — 提供在 O3DE Amazon Web Services 中使用的框架。

    • 多人游戏 Gem — 通过扩展网络框架提供多人游戏功能。

包括亚马逊 GameLift Gem 静态库
  1. Gem::AWSGameLift.Server.StaticBUILD_DEPENDENCIES为您的项目服务器目标包括 as。

    ly_add_target( NAME YourProject.Server.Static STATIC ... BUILD DEPENDCIES PUBLIC ... PRIVATE ... Gem::AWSGameLift.Server.Static )
  2. AWSGameLiftService将您的项目服务器系统组件设置为必填项。

    void YourProjectServerSystemComponent::GetRequiredServices(AZ::ComponentDescriptor::DependencyArrayType& required) { ... required.push_back(AZ_CRC_CE("AWSGameLiftServerService")); ... }
  3. (可选)要使用 C++ 发出亚马逊GameLift服务请求,请在BUILD_DEPENDENCIES针对您的客户目标Gem::AWSGameLift.Client.Static中添加内容。

    ly_add_target( NAME YourProject.Client.Static STATIC ... BUILD_DEPENDENCIES PUBLIC ... PRIVATE ... Gem::AWSCore.Static Gem::AWSGameLift.Client.Static }
集成您的游戏和专用服务器

使用会话管理集成在游戏和专用游戏服务器中管理游戏会话。要获得支持FlexMatch,请参阅FlexMatch集成