本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将 Amazon 添加 GameLift 到 O3DE 游戏客户端和服务器
您可以使用开源、跨平台、实时 3D 引擎 O3DE 来创建高性能的交互式体验,包括游戏和模拟。O3DE 渲染器和工具封装在模块化框架中,您可以使用首选的开发工具对其进行修改和扩展。
模块化框架使用包含具有标准接口和资产的库的 Gem。选择您自己的 Gem,根据您的要求选择要添加的功能。
Amazon GameLift Gem 提供以下功能:
- 亚马逊 GameLift 集成
-
一个用于扩展 O3DE 网络层并让多人游戏 Gem 与 Amazon GameLift 专用服务器解决方案配合使用的框架。Gem 提供了与亚马逊 GameLift 服务器SDK和 AWS SDK客户端(称之为亚马逊 GameLift 服务本身)的集成。
- 构建和软件包管理
-
打包并可选择上传专用服务器版本和 AWS Cloud Development Kit (AWS CDK) (AWS CDK) 应用程序的说明,以设置和更新资源。
亚马逊 GameLift Gem 设置
按照本节中的步骤在 O3DE 中设置 Amazon GameLift Gem。
先决条件
-
设置您的亚马逊 AWS 账户 GameLift。有关更多信息,请参阅 设置一个 AWS 账户。
-
为 O3DE 设置 AWS 凭证。有关更多信息,请参阅配置 AWS 凭证
。 -
设置 AWS CLI 和 AWS CDK。有关更多信息,请参阅 AWS Command Line Interface
和 AWS Cloud Development Kit (AWS CDK) 。
打开 Amazon GameLift Gem 及其依赖项
-
打开项目管理器。
-
打开项目下的菜单,然后选择编辑项目设置...。
-
选择配置 Gem。
-
打开 Amazon GameLift Gem 和以下依赖宝石:
-
AWS Core Gem
— 提供在 O3DE AWS 服务 中使用的框架。 -
多人游戏 Gem
– 通过扩展网络框架提供多人游戏功能。
-
包括 Amazon GameLift Gem 静态库
-
为您的项目服务器目标添加
Gem::AWSGameLift.Server.Static
作为BUILD_DEPENDENCIES
。ly_add_target( NAME YourProject.Server.Static STATIC ... BUILD DEPENDCIES PUBLIC ... PRIVATE ... Gem::AWSGameLift.Server.Static )
-
将
AWSGameLiftService
设置为您的项目服务器系统组件必填项。void YourProjectServerSystemComponent::GetRequiredServices(AZ::ComponentDescriptor::DependencyArrayType& required) { ... required.push_back(AZ_CRC_CE("AWSGameLiftServerService")); ... }
-
(可选)要使用 C++ 提 GameLift 出 Amazon 服务请求,请在
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 }
集成您的游戏和专用服务器
使用会话管理集成