快速入门:PlayFab Multiplayer Unity 插件
开始使用 PlayFab Multiplayer Unity 插件。按照以下步骤安装该包,并试用示例代码完成一个基本任务。 本快速入门可帮助你使用 PlayFab Multiplayer Unity SDK 进行首次 API 调用。在继续之前,请确保你已完成快速入门:Unity 中的 PlayFab C# 客户端库,以确保你拥有 PlayFab 帐户并熟悉从你的游戏和 PlayFab Game Manager 登录 PlayFab。如果你打算使用此插件开发基于 Microsoft Game Development Kit (GDK) 的游戏,则需要单独获取并安装 GDK。另请参阅关于 XBOX 主机的 Game Core Unity 附加组件的详情。
要求
- 一个 PlayFab 开发者账户。
- 已安装的 Unity 编辑器副本。若要通过 Unity Hub 安装 Unity 个人版,或 Unity+ 专业版,请参阅下载 Unity。如有需要,请在你特定平台的文档中查看 Unity 支持情况。支持的最低 Unity 版本为 Unity 2017 LTS。
-
一个 Unity 项目 – 可以是以下任一项:
- 全新的项目:有关更多信息,请参阅首次启动 Unity。
- 一个有指导的教程项目。有关更多信息,请参阅 Unity 入门。
- 一个现有项目。
- PlayFab“核心”Unity3D SDK(也包含在 Multiplayer Unity 插件中)。有关安装 Unity3D SDK 的信息,请参阅快速入门:Unity 中的 PlayFab C# 客户端库的“下载并安装 PlayFab SDK”部分。
下载并安装 PlayFab Multiplayer Unity 插件
按照以下步骤下载并安装 PlayFab Multiplayer Unity 插件。- 下载 PlayFab Multiplayer Unity 插件资产包(根据你的平台使用相应的分发点)。
- 重要! 请查看随插件发布的 README 文件中的信息。它针对每个特定版本量身定制,可能包含特定于你平台的重要说明。
- 打开你的 Unity 项目。
- 导航到你保存 .unitypackage 的位置,并双击它打开导入对话框。
- 若要将 PlayFab Multiplayer Unity 插件导入到你的项目,请选择 Import。
设置你的场景
本指南的这一部分向你展示如何将PlayfabMultiplayerEventProcessor 添加到你的场景中,以启用从 Unity 调用 PlayFab Multiplayer API。
在你可以使用 Multiplayer API 之前,必须先登录一个 PlayFab 玩家。有关登录玩家的信息,请参阅快速入门:Unity 中的 PlayFab C# 客户端库中“进行你的第一次 API 调用”。
- 在 Unity 编辑器的 Project 窗口中,导航到 Assets > PlayFabMultiplayerSDK > Prefabs。
- 从 Prefabs 文件夹中,将 PlayfabMultiplayerEventProcessor 拖放到 Hierarchy 窗口中的场景内。
- 在场景中创建一个名为 “HelloMultiplayerLogic” 的空 Game Object。
- 选择 HelloMultiplayerLogic Game Object 以打开 Inspector。
- 选择 Add Component。
- 键入 “HelloMultiplayerLogic” 并按 Enter 键以显示新脚本菜单。
- 再次按 Enter 键创建新的脚本 HelloMultiplayerLogic.cs。
- 在 Project 窗口中找到该脚本,并双击它以编辑该脚本。
-
将以下 using 语句添加到你的脚本中:
-
在 Start 方法中添加以下代码以登录到 PlayFab。
-
将以下方法添加到该类中。
你可能会收到以下错误:
C \# Error CS0227 Unsafe code may only appear if compiling with /unsafe The plugin requires unsafe code because it interops with a native DLL. Mismatch between the processor architecture of the project being built "MSIL" and the processor architecture of the reference "XGamingRuntime", "AMD64".- 在 Unity 编辑器中,选择 File > Build Settings.
- 选择你的平台。然后从 Architecture 下拉列表中,选择 x86_64 或 x64。
- 选择 Player Settings.
- 在右侧窗格中,选择 Other Setting。
- 找到 Allow unsafe Code 设置并选中它。
- 关闭 Build Settings 和 Project Settings 窗口。
创建并加入大厅
本指南的这一部分向你展示如何创建并加入一个大厅。-
打开 HelloMultiplayerLogic.cs 脚本。在
OnLoginSuccess方法中,添加以下代码以创建并加入大厅: -
若要定义 OnLobbyCreateAndJoinCompleted 事件处理程序,请将以下代码添加到该类中:
-
若要定义 OnLobbyDisconnected 事件处理程序,请将以下代码添加到该类中:
- 保存并在 Unity 编辑器中选择 Play。大厅连接字符串会显示在 Console 窗口中。
加入大厅
本指南的这一部分向你展示如何加入另一个客户端创建的现有大厅。-
打开 HelloMultiplayerLogic.cs 脚本。在 OnLoginSuccess 方法中,添加以下代码以加入大厅:
-
若要定义一个在本地客户端加入大厅时触发的事件,请将以下代码添加到
OnLoginSuccess方法中: -
若要定义 OnLobbyJoinCompleted 事件处理程序,请将以下代码添加到该类中:
- 保存并在 Unity 编辑器中选择 Play。字符串 “Joined a lobby” 会显示在 Console 窗口中。
查找大厅
本指南的这一部分向你展示如何查找其他客户端创建的现有大厅。-
打开 HelloMultiplayerLogic.cs 脚本。在 OnLoginSuccess 方法中,添加以下代码以查找大厅:
-
若要定义一个在本地客户端查找大厅时触发的事件,请将以下代码添加到
OnLoginSuccess方法中: -
若要定义 OnLobbyFindLobbiesCompleted 事件处理程序,请将以下代码添加到该类中:
- 保存并在 Unity 编辑器中选择 Play。字符串 “Found lobbies” 会显示在 Console 窗口中。
创建匹配票据
本指南的这一部分向你展示如何创建匹配票据。请在另一个客户端上与下面的“加入匹配票据”场景一起运行。-
打开 HelloMultiplayerLogic.cs 脚本。在
OnLoginSuccess方法中,添加以下代码以创建匹配票据: -
若要定义 OnMatchmakingTicketStatusChanged 事件处理程序,请将以下代码添加到该类中:
- 保存并在 Unity 编辑器中选择 Play。
加入匹配票据
本指南的这一部分向你展示如何加入另一个客户端创建的现有匹配票据。请在另一个客户端上与上面的“创建匹配票据”场景一起运行。-
打开 HelloMultiplayerLogic.cs 脚本。在 OnLoginSuccess 方法中,添加以下代码以加入匹配票据:
-
若要定义 OnMatchmakingTicketStatusChanged 事件处理程序,请将以下代码添加到该类中:
- 保存并在 Unity 编辑器中选择 Play。
完成匹配票据
本指南的这一部分向你展示匹配是如何完成的。请在另一个客户端上与上面的“创建匹配票据”场景一起运行。你也可以选择与“加入匹配票据”场景一起运行。- 一旦同一队列中的多个票据满足匹配条件,就会找到匹配。在这种情况下,将触发 OnMatchmakingTicketCompleted 事件处理程序。
-
订阅 OnMatchmakignTicketCompleted 处理程序
-
若要定义 OnMatchmakingTicketCompleted 事件处理程序,请将以下代码添加到该类中:
