UnityでのPlayFabの導入覚え書き
社会人になって初めての夏休みがやってまいりました。 そこで色々と勉強しようとおもい触ってみたかったものをガシガシ触っていくことにしました。
最初にPlayFabを触ってみたのでその導入部分を覚え書きとして書いておきます。
PlayFabとは
PlayFabとはログイン管理やイベント運営、アナリティクスの活用などを提供しているクラウド対応のゲーム向けバックエンドサービスです。 2018年1月にはマイクロソフト社がPlayFabを買収しています。
多くのプラットフォームに対応しており、Unity向けのSDKもリリースされており、Unite2018でも講演が行われていました。
www.slideshare.net
名前は聞いたことがあった程度の私がPlayFabに興味をもったのはCEDEC2018のマイクロソフト社のブースでのデモでした。 クラウドでの容易なデータ調査や管理の様子をみて面白そうだと思ったので、「HoloLensでも使用できますか?」と聞いたところ「Off course!!」と返事を頂いたのがきっかけになりました。
PlayFabの導入(Unity)
今回はUnityからPlayFabを使用してアクセスしPlayerを新規に作成しクラウドで確認するところまで書きます。
まずPlayFabの公式サイトでアカウントを作ります。
アカウントを作成したらNEW STUDIOで新規にSTUDIOを作成します。
Studio nameには適当な名前を。Authentication providerは"PlayFab"を選択します。
STUDIO作成後にCreate TitleでGame情報を入力します。
適宜必要な情報を入力、チェックします。
CREATE TITLEを押すとDashboardに飛びます。
後で必要になるので左のバーからSettingsを選択し、上のタブからAPI Featuresを選択。 API ACCESS内に記載されているTitle IDをコピーしておきましょう。
次にPlayFabのSDKをダウンロードします。
今回は諸事情でUnity2017.3.1fで動かします。
新規にプロジェクトを作成したらUnitypackageをインポートします。 インポートが終わったら.PlayFabLogin.cs ScriptをCreateし、以下のように記述します。
using PlayFab; using PlayFab.ClientModels; using UnityEngine; public class PlayFabLogin : MonoBehaviour { public void Start() { if (string.IsNullOrEmpty(PlayFabSettings.TitleId)){ PlayFabSettings.TitleId = "144"; } 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()); } }
PlayFabSettings.TitleId = "144";となっている部分を先ほどコピーしたTitle IDに変更し、適当なGameObjectにスクリプトを貼り付けてUnityを実行してみましょう。
Consoleに"Congratulations, you made your first successful API call!"と表示されれば成功です。
PlayFabのDashbordをブラウザで開き、Unique Usersが0から1になっていると思います。 これでPlayersの情報をみることなどが可能になっていると思います。
導入は以上です。
こちらのページにも導入方法が英語で載っていますがEditor拡張を使用しています。
PlayFabを使いやすくするEditor拡張はこちら github.com
実際に利用するのはGroupsやEconomyなどを使用すると思いますが、とりあえずの導入部分だけ書きました。 Virtual Currencyの取得やGroupsに設定するPlayerIDなど詰まりポイントがそこそこあるので忘れないように書いておきたい気持ちです。