快速入门:Unity 中的 PlayFab 客户端库 C#

Unity 中的 PlayFab 客户端库入门 C#。 按照步骤安装包,并尝试基本任务的示例代码。

本快速入门可帮助你在 Unity 引擎中进行首次 PlayFab API 调用。

要求

  • 一个 PlayFab 开发者帐户
  • Unity 编辑器的已安装副本。 若要通过 Unity Hub 或 Unity+ 安装 Unity 以供个人使用,请参阅下载 Unity

    注意

    PlayFab Unity SDK 支持 Unity 编辑器版本 5.3(2015 年 12 月发布)及更高版本。

  • 以下任一类型的 Unity 项目:
    • 全新的项目。 有关详细信息,请参阅 首次启动 Unity
    • 引导式教程项目。 有关详细信息,请参阅 Unity 入门
    • 一个现有项目。
  • PlayFab Unity SDK。

下载并安装 PlayFab SDK

使用 PlayFab 编辑器扩展包安装 SDK。 PlayFab 编辑器扩展是一个独立的 Unity 插件,可简化 SDK 的安装并配置游戏的 PlayFab 设置。 有关在不使用 PlayFab 编辑器扩展的情况下安装 SDK 的信息,请参阅 安装 PlayFab SDK for Unity

  1. 下载 PlayFab Unity 编辑器扩展资产包

  2. 打开你的 Unity 项目。

  3. 导航到下载文件的位置,然后双击 PlayFabEditorExtensions.UnityPackage 文件,打开 Unity 编辑器中的" 导入 Unity 包 "对话框。

    导入 Unity 资产包

  4. 若要将 PlayFab Unity 编辑器扩展导入项目,请选择 导入

  5. 导入完成后,PlayFab Unity 编辑器扩展面板应自动打开。 如果已创建 PlayFab 开发人员帐户,请选择“登录”链接,使用 PlayFab 用户名和密码登录。

    登录 PlayFab

    注意

    如果面板未打开,或者关闭面板并想要重新打开面板,则可以通过选择窗口>PlayFab>编辑器扩展

  6. 登录后,扩展将显示 SDK 安装对话框。

    安装 PlayFab SDK

  7. 选择 安装 PlayFab SDK 自动将 SDK 导入项目或升级当前安装的版本。

设置游戏设置

在进行 API 调用之前,必须指定 Title 才能在 PlayFab 游戏设置中接收呼叫。 若要设置标题,请执行以下操作:

  1. 选择编辑器扩展中设置我的游戏

    在编辑器扩展中设置我的标题

  2. 选择 Studio 条目以打开工作室下拉菜单。 选择包含要连接到的标题的工作室。

  3. 选择 标题 ID 条目,打开与所选工作室关联的标题的下拉菜单。

开发人员密钥自动设置为游戏的默认密钥。 有关开发者密钥的详细信息,请参阅密钥管理

PlayFab 作品设置

[!注意] 可通过扩展来自定义用于向 PlayFab 发出请求的 http 传输。 建议的默认值为 Unity Web 请求。 存在其他选项来提供与旧引擎版本或特定于游戏的 http 实现的兼容性。

进行首次 API 调用

本指南的这一部分提供了进行首次 PlayFab API 调用的最小步骤。 此示例不提供任何 GUI 或屏幕上的反馈。 确认显示在控制台日志中。

  1. 如果 Unity 项目还没有脚本文件夹(HDRPLWRP/URP 模板默认具有一个),请右键单击"项目"面板中的"资产"文件夹,然后选择"创建>文件夹"

  2. 资产窗口中,将文件夹命名为"脚本"

  3. 右键单击"脚本"文件夹,然后选择"创建>C# 脚本"

  4. 将脚本命名为 PlayFabLogin。

  5. 双击文件以在代码编辑器中打开它。

  6. 在代码编辑器中,将 PlayFabLogin.cs 的内容替换为提供的代码,并保存文件。

    using PlayFab;
    using PlayFab.ClientModels;
    using UnityEngine;
    
    public class PlayFabLogin : MonoBehaviour
    {
        public void Start()
        {
            if (string.IsNullOrEmpty(PlayFabSettings.staticSettings.TitleId)){
                /*
                Please change the titleId below to your own titleId from PlayFab Game Manager.
                If you have already set the value in the Editor Extensions, this can be skipped.
                */
                PlayFabSettings.staticSettings.TitleId = "42";
            }
            var request = new LoginWithCustomIDRequest { CustomId = "GettingStartedGuide", CreateAccount = true};
            PlayFabClientAPI.LoginWithCustomID(request, OnLoginSuccess, OnLoginFailure);
        }
    
        private void OnLoginSuccess(LoginResult result)
        {
            Debug.Log("Congratulations, you made your first successful API call!");
        }
    
        private void OnLoginFailure(PlayFabError error)
        {
            Debug.LogWarning("Something went wrong with your first API call.  :(");
            Debug.LogError("Here's some debug information:");
            Debug.LogError(error.GenerateErrorReport());
        }
    }
    

    重要

    提供的代码不适用于移动游戏。 这只是一个示例,并演示如何使用 CustomID登录。 若要实现移动游戏登录,请使用 LoginWithAndroidDeviceIDLoginWithIOSDeviceID或某种形式的社交登录名,例如 LoginWith Facebook

  7. 层次结构面板中,右键单击场景,然后选择创建空(或游戏对象>在较早版本的 Unity 中创建空)。

  8. 选择新的游戏对象,然后在检查器面板中,选择添加组件

  9. 从组件下拉菜单中,选择脚本>PlayFabLogin

有关在 Unity 编辑器中创建和使用脚本的详细信息,请参阅 Unity 文档中的 创建和使用脚本

完成并执行

现在可以测试此示例了。

  • 请务必保存所有文件并返回到 Unity 编辑器
  • 按编辑器顶部的 播放 按钮

Unity 控制台面板中应会显示以下消息。

首次 API 调用的控制台日志

提示

或者,你可以登录 PlayFab 并导航到 Game Manager 中的游戏,然后选择“PlayStream Monitor”选项卡。每次将焦点从正在运行的 Unity 游戏上移开时,它都会传递一个事件,可在 PlayStream Monitor 中查看和确认该事件。

有关所有可用客户端 API 调用的列表,请参阅我们的 PlayFab API 引用文档。

后续步骤

此快速入门显示验证用户的简化过程。 有关用户身份验证的详细信息,请参阅登录基础知识和最佳做法

了解如何将帐户绑定到多个设备和登录机制: 帐户链接快速入门