Raspberlyのブログ

Raspberlyのブログ

Unityネタをメインとした技術系ブログです。にゃんこ大戦争や日常なども。そろそろブログタイトル決めたい

【勉強会レポ】: PlayFab Meetup #1 in Microsoft

勉強会のレポート(メモ)です。
参加したのはこちら、「PlayFab Meetup #1」
会場はMicrosoftさんです。

connpass.com

ハッシュタグ : #PlayFab

 

 

f:id:Raspberly:20191022234520p:plain

 

 

 

 

 

 

 

1. Unite振り返り

Uniteの内容を抜粋した内容です。

learning.unity3d.jp

 

詳しくはそちらをどうぞ。

ここでデモ

api.playfab.com

SDKを入れるのではなく、エディター拡張を入れます。
初心者の方にはこっちのほうがわかりやすいです。

エディターからログインしSDKをインストール。

 

何もしてないのに壊れた

何もしてないのに治った

デモが動かなかったので詫び石を配るデモをしました。

 

まとめ

導入は簡単
多彩な機能を
無料プランが利用できます

 

詳しくは公式ドキュメントを見てください。今年の夏ごろ日本語化しました。

Unity SDK


Qiitaにもたくさん記事があります。

qiita.com

 

 

 

 

 

 

2. PlayFab with HoloLens

ログイン回りの話をします。

xRでの活用方法

スマホとxrデバイスとの相互利用
 文字入力をスマホでやるなど
・アプリの利用状態を可視化
VR内でのアイテムの売買
・視線ヒートマップの可視化

ログインの種類

固有のデバイスIDだったり、FacebookほかAPIに紐づいたものだったりいろいろある
twitterでのログインはない


今回EmailとPassでログインしてみます。
ただしこれだとIDを自動で作ってはくれない、手動で作りましょう。

ここで少しデモ

何もしてないのに壊れた

 

結局HMDでどうログインするのか

HMD被った状態で入力するのはかなりしんどい
ユニークIDを使ってログインします。
ただしdeviceUniqueIDだとだめです、全てのHoloLensで同じidが返ってきます。
Guid.newGuidで作りましょう

まとめ

・GUIDでログインが楽
キーボードを入力させるのはなるべくさせない
スマホやwebと併用する場合はemail passで併用するとよさそう

 

 

 

 

 

 

 

 

3. PlayFab:現実のお金とゲーム内仮想通貨

 

今回話すこと

PayPalとPlayfabとの連携方法
・リアルマネーと仮想通貨との交換
・口座への入金

個人ゲーム開発している時の悩み

・堅実なユーザー認証システムを用意したい
・審査不要、用意な商人でゲーム内アイテムをリアルマネーで買ってもらいたい

候補となったバックエンドサービス

Amazon GameSparks
-PCゲームには向いていない感じ

FIreBase
-支払いに手間がかかりそう

PlayFab
-ワンボタンで支払い可能なため これに決定

※これは個人の感想です

 

PayPalとの連携

ドキュメントがありますのでこちら通りに進めます。

Non-Receipt Payment Processing


PayPalアドオンを有効化
PayPalビジネスアカウントの作成
PayPal利用許可をPlayFabに与える
・PlayFabにはゲーム内仮想通貨をたくさん定義できるのでしておきます
・カタログを定義します
カタログについてはこちら(カタログ - PlayFab | Microsoft Docs)

・カタログに仮想通貨バンドルを定義する
・購入処理の記述
PayPalビジネスアカウントへの集金履歴を確認
・出金先が日本円の銀行の場合、日本円への変換が必要(詰まりポイント)

得られた知見

リアルマネーでゲーム内通貨を買える仕組みをPlayFabで実現できた。
他のバックエンドでもできそうだが、PlayFabはPCでも使えると明言されているし使いやすいのでよさそう。

 

 

 

 

 

 

 

 

LT1. リアルタイムコマンドバトルのゲームで PlayFab を使ってみた

 

データストアとしてのPlayFab

GameManagerのJSONをそのままぶっこめます。
マスター、ユーザー、ログも全てPlayFabから触れるようになりました、

ゲームサーバーとしてのPlayFab

アウトゲーム部分はPlayfab(リアルタイム通信に弱いため)
インゲーム部分はMagicOnionでやりました

PlayFabがゲームサーバーとしてできること

RESTなどのAPI通信でできることは大体できる(ショップやガチャなど)

できないこと

マルチプレイでのリアルタイム通信
ロードマップ上はあるがまだ開発中

・自前サーバープログラムのホスティング先として使う
ロードマップ上にはある、日本リージョンがまだない

まとめ

無料のデータストアだけでも使うメリットはある。
ランキング、マッチング、ショップなどの仕組みが必要ならよりメリットが大きい。
できないことを把握しておきましょう(リアルタイム通信は苦手)

 

 

 

 

 

 

LT2. PlayFabのカタログとマスタデータ

 ゲームを作るうえでの悩み事はいろいろあります。
マスターデータやユーザーデータなどの管理をどうするか、個人開発だとお金回りで悩むことが多いかと思います。
そういうところでマスターデータをどう扱うのかというお話をします。

 

PlayFabのカタログについて

PlayFabにはエコシステムという強みがあります。(ユーザデータまわり)

PlayFabでのマスタ管理

マスタはゲーム固有のパラメータが多い。
そのため表で扱うことが多いが扱う場所で形が変わりがち(個人開発なら自分が全て管理すればいいが)
・プランナーはExcel
・DBにはツール投入
・プログラム実行時はDictionaryで
・Unity内だとScriptableObjectで持ったり

この辺りをクラウドでいい感じ管理したい

AirTable

AirTableというものがあります。
AirTableはブラウザでテーブルを簡単に編集できるWebサービスです。

airtable.com

これをPlayFabのエコシステムにのせたい。
これをAPIとしてもってくるライブラリを作りました。

github.com

まとめ

mBassの特異なことろ不得意なところを把握する
不得意なところは頑張らないようにする

 

 

 

 

 

4. PlayFabのロードマップについて

PlayFabの方のブログでロードマップがでています。

blog.playfab.com

こちらから抜粋

 

マルチプレイサーバーのリージョン追加
マッチメイキング機能の追加 途中で離脱したユーザーの追加など
言語対応
GameCenter認証対応
プッシュ通知APIの改善
デモゲームの公開

www.vanguardoutrider.com

Azure契約との統合

 

直近のアップデート

中国本土でのPlayFab一部機能の利用
マルチプレイサーバーのサーバタグ設定
マルチプレイ・パーティの課金請求確認ページ (Azureの方を使うため)
マルチプレイサーバーのUX更新
C#CloudScriptの実装(年内実装)


2020年前半のアップデート

中国全土での全機能利用開始
UGCのパブリックプレビューの開始 (マイクラなどにあるユーザー同士でのコンテンツの売買の仕組み)
PlayFabInsightの機能拡張 (ログや可視化など分析の機能の拡張)
マルチプレイ・マッチング・パーティー・新しいマッチングシステムの一般公開

 

 

 

 

懇親会

f:id:Raspberly:20191022235639p:plain


ちょうどぱふもどきさんがUnity1週間ゲームジャムの生放送をしていたのでそちらの話題になりました。
Unity1週間ゲームジャムではNCMBを使ったランキングが広く使われていますが、PlayFabも使ってみたいところ。

 

聞いた話によると、ichijoさん投稿作品ではPlayFabを用いたランキングを実装しているとのこと。
ぜひ遊んでみてください!


 

 

 

 

関連資料

南さんの資料でちょこちょこでてきたMagicOnionについては過去に勉強会が開催されました。

raspberly.hateblo.jp

raspberly.hateblo.jp

 

 

 

 

他の方の感想ブログ

www.nowsprinting.com

 

 

 

 

 

 

間違っている箇所がありましたらコメントにお願いします。