Skip to content

PlayFabのランキング部分を簡易的に利用するためのもの

License

Notifications You must be signed in to change notification settings

nir-takemi/UnityPlayFabRanking

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UnityPlayFabRanking

Unity上で、PlayFabのランキング部分を簡易的に利用するためのパッケージ。

対象ビルド

  • iOS
  • Android
  • WebGL

使用前提SDK(後の準備の手順の中で導入します)

準備

PlayFab公式のドキュメントに沿って使用可能にしてください

  1. PlayFabのページよりアカウントを作成
  2. クイックスタートによりプロジェクトのセットアップを実施

ランキングをPlayFab上で作成

  1. https://developer.playfab.com/ja-JP/r/t/プロジェクトID/leaderboards/new を開く
  2. 任意の値で作成 image
  3. 設定画面のAPI機能 https://developer.playfab.com/ja-JP/r/t/プロジェクトID/settings/api-features にて、「クライアントにプレイヤー統計情報のポストを許可する」にチェックをする image

unitypackageのDL

以下から最新のものをダウンロードしてください https://github.com/nir-takemi/UnityPlayFabRanking/releases

実装

  1. DLした.unitypackageをmenuからimport image

  2. Sampleは任意で、その他にチェックがされていることを確認の上import image

  3. ログインのためのprefab(ylib > UnityPlayFabCommon > Resources > Prefabs > GO_UnityPlayFab)をランキング表示/更新したいscene上に置く  (ランキングの処理が複数sceneに存在する場合は、DontDestroyOnLoadなオブジェクト配下に置く) image

  4. ランキング表示/更新のためのprefab(ylib > UnityPlayFabRanking > Resources > Prefabs > GO_RankingView)をランキング表示/更新したいscene上に置く (uGUIなので、見た目変えたい方は修正してprefabを作り直した後に配置してください) image

  5. 4で配置したRanking prefabの設定値を任意のものに入力する image

    1. LoadOnAwake:Awakeが実行されるタイミングで設定値に基づくランキングデータをloadするかどうかを設定
    2. RankingViewOnly:ランキングのみの表示にするかどうかを設定(基本形は名前更新、ランキングのセットで表示するprefabとなっている)
    3. RankingName:PlayFab上で作成したランキングの統計情報名を入力
    4. RankingDataSize:ランキング表示数
    5. FormatScore:スコア表示のフォーマット(カンマ表示したい場合は「{0:#,0}」などで指定)
    6. PrefabRankingData:基本はデフォルトのままで問題ないですが、独自のUIを指定したい場合は指定し直してください
    7. EventOnRankingLoad:ランキングロード後に実行されるイベント
    8. EventOnClose:RankingViewが閉じられる際に実行されるイベント
  6. Unity/コード上で以下のように処理を書く

// Inspector上でアタッチする
[SerializeField]
private ylib.Services.UI.RankingView rankingView = null;

// スコア更新
rankingView.UpdateScore(12345);

// 可視化するだけ(そのため初回load時はちょっと時間かかる)
rankingView.gameObject.SetActive(true);
  1. 表示例 image

ライセンス

  • 本パッケージについてはLICENSEを参照ください
  • PlayFabのSDKを利用しているので、PlayFab関連に関してはPlayFab側のライセンスに準拠してください

その他

  • デフォルトの設定だとプレイヤー名が重複がされるとエラーになる

About

PlayFabのランキング部分を簡易的に利用するためのもの

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages