64
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

個人のゲーム開発者がAzure PlayFabに入門してみた4つの理由

まえがき

個人のゲーム開発者として Azure PlayFab に入門しました。

早速使ってみた系の記事を書こうと思いましたが、PlayFab は日本で触っている人があまり多くない印象ですので、

  • そもそも PlayFab とはなにか
  • なぜ入門しようと思ったのか

という点から書き残してみようと思いました。

ふわっとした記事ですので、技術的に深い内容を期待される方はブラウザバックをおすすめします。

Azure PlayFabとは

ゲームに特化した BaaS(Backend as a Service) です。

2018年1月に Microsoft に買収されて現在も成長中のサービスです。
日本では最近ようやく名前を見ることが増えてきましたが、海外では既にメジャーなサービスで実績も多数あるようです。
image.png
※画像は Microsoft の de:code 2019 の資料 から引用させていただきました。

PlayFab を利用すると、ゲームに必要な様々なバックエンドの機能を自分で1から開発する必要がなくなります。

下記は PlayFab で提供している機能を一部抜粋したものです。
※現時点ではプレビューの機能も含まれています。

ドキュメントを読むと他にも様々な機能があることがわかりますが、直近で私が使いそうな機能を列挙しました。

なお、PlayFab はもともとゲームの運用を支えるためのサービス郡で、特に GoogleAnalytics のゲーム版とでも言うような分析ツールとしての色が強いようです。

しかし現在は機能が強化され、上記のように運用や分析の範囲に留まらない機能も提供されています。

個人のゲーム開発者が Azure PlayFab に入門してみた4つの理由

結論から書くと以下の4つです。

  • サービスを使って開発工数を削減したかった
  • 手軽に使えるマネージドなデータストアが欲しかった
  • コストをかけたくなかった
  • Microsoft の買収による今後の成長に期待した

1. サービスを使って開発工数を削減したかった

私は趣味で個人でゲームを作っています。

ゲームを作るのが好きなので、インゲームの部分はクライアント/サーバーサイドのどちらもとても楽しく制作が進んでいます。

一方で、認証/ショップ/分析などの機能はゲームに必要ではあるものの、それを作ることが目的ではないですし、それなのに作るのは大変な部分ですし、なかなか開発作業の気が進みませんでした。

これらの機能を自分で開発せずにサービスを利用すれば、開発工数を削減しつつ、自分が1から開発するよりも堅牢で使いやすいシステムをユーザーに提供できそうだと考えました。

2. 手軽に使えるマネージドなデータストアが欲しかった

マスタデータやユーザーデータの管理を PlayFab に任せることができることも魅力に感じたポイントです。

私が仕事でゲームを開発していたとき、これらのデータはすべて RDB で管理していました。
趣味の個人開発でも RDB を採用したいと考えていましたが、マネージドな RDB のサービスで安価で手軽に使えるものが見つからず、なにを採用するか悩んでいました。

PlayFab のデータ管理の機能は KVS ですので、当初は実運用に耐えられないのではないかと不安視していました。
しかしいざ使ってみると、小規模な個人開発においては意外と困る場面はなさそうでしたので、当面は PlayFab を使ってみることにしました。

3. コストをかけたくなかった

PlayFab には無料で利用できる Essentials プランがあり、このプランでも多くの機能を MAU の制限もなく利用することができます。
Essentials プランでは Azure のサポートを受けることはできませんが、後述するコミュニティフォーラムを頼ることができます。

Essentials プランより多くの機能を利用したい場合は10万 MAU まで月額 $99 で利用できる IndieStudio プランを利用することになりますが、IndieStudio プランでも 1000MAU を超えるまでは無料で使用することが可能ですので、リリースするまでは料金が一切発生しません。

4. Microsoft の買収による今後の成長に期待した

これは賛否がわかれるところかもしれません。

ただ PlayFab と同じく2018年に買収された GitHub の最近の様子を見てみると、プライベートリポジトリが無料で作れるようになったり、Azure との連携が強まったり、最近ではPull Pandaを吸収したり、買収が良い影響に繋がっていたように思えます。

最近の Microsoft はゲーム分野に力を注いでいく姿勢を見せていますし、PlayFab もこれまで以上に成長していくだろうと予想して今の段階で積極的に触ってみることにしました。

あとがき

思いのほか長文になってしまいました。。
次回はマスタデータやユーザーデータの管理方法など、実際に使ってみた記事を書きたいと思います。

いろいろ書きました。
- UnityからPlayFabのユーザーデータをCRUDする
- UnityでPlayFabのタイトルデータを取得して表示する
- Azure PlayFab上にテストユーザーを大量生成してギフトをさくっと一括配布してみた
- Azure PlayFabのとても便利なランキング機能を使ってみた&ついでにランキング報酬も配ってみた
- Azure PlayFabのとても便利なマッチメイキング(マッチング)機能を使ってみた
- Azure PlayFabのアクションとルールを使って自動的にアイテムを配布してみた
- Azure PlayFabでPlayStreamを使ってユーザーのBANを実装する
- Unity+PlayFabでasync/awaitを使う方法

参考資料などへのリンク

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
64
Help us understand the problem. What are the problem?