Unity&FireBaseクリエイトウェーブ開発日記クリエイトウェーブのスタッフによる、開発日記です。-■プロフィールAuthor:クリエイトウェーブ開発における、諸々を書いていきたいなと思っています。Sunタイトル名は諸事情で言えませんが、サーバー側をPHPとMySQLやめて、思い切ってFireBaseのCloudFunctionsとFireStoreで開発したゲーム遂にリリースしました。ちなみにクライアント側はUnityです。開発1年ちかくかかりましたが、CloudFunction(Node.js)とFireStoreも手探りで始めたので感慨深いものがあります。重くなる兆候さえない。DAU1万5千人規模の場合、だいたい1日千円弱くらいFireBase代が発生しるので月3万とかかな。料金抑える為に、色々工夫してます(結果的には、これがサーバーのパワーを引き出す事にもつながります)今までの普通のクラウドで構築すると、月20万~50万くらいのシステムでスタートしてると思うので、コスパはやはり凄い。Googleのシステムです。おまけに開発時はテストサーバー代無料だし、SSL代とかもないし・・・びっくりしたのは開発時よりサーバー反応が異様にいいこと。こんなに早かったのか・・というぐらい開発時とちがます。アクセス数が増えてサーバーのCPUとかネットワークのパワーの割当が増えてるんでしょうね。Storageからファイルをダウンロードするのを書いたばかりですが、iosの実機に書き出してみたところうまくいかない事がわかりました。アンドロイド実機問題なし、UnityEditor上でもプラットフォームをios設定にしていても問題ありません。ダウンロード先は、Application.temporaryCachePathにしています。パーミッションみたいな設定があるのか、そもそもiosではダウンロードできないのか・・・よくわかりません。Storage上のデータをUnity上でメモリ上にバイナリ形式で読み込んでおいて、Application.temporaryCachePathにUnity上のC#で書き出す事にしました。dotnet4版のFireBaseSDKを使って昨日書いたとおりでコルーチンで処理を判別しています。なんかスッキリしないけど、いい方法はあるのだろうか。Storageからファイルをダウンロードしたあとの処理を以下のようにしていました。判るまでしばらくこれでいきます。TueFireBaseのUserIDじゃなく、UserTokenを使うで書きましたし、ちょっと検索すると同じ事かいてるのにひっかかると思いますが、FioreBaseの匿名認証はアプリをアンインストールして、インストールし直すと同じIDになってました。実験もしましたし、FireBaseIDでアプリ管理していたらガチャゲー作ってもリセマラ出来ないなとか言っていたのですが、仕様変わったのかな?firebase_unity_sdk_5.4.3から、SDKの内容が「dotnet3」フォルダと「dotnet4」フォルダに分かれたので「dotnet4」にしてみたんですがインストールするたびに、匿名IDが変化するようになってしまいました。アンインストールしてインストールしなおさないと変わらないので、別に問題ないのですが、仕様かわったのかな?とちょっと気になってます。Sunあけましておめでとうございます。今年も、UnityとFireBaseガンガンやっていきます。UnityとFioreBaseのCloudFunctionでやりとりするときに、FioreBaseのUserIDを使うのがシンプルですが、UserTokenを使う手もあります。トークンは、CloudFunction上でUserIDに変換され、トークンは一定時間で変化するのでセキュリティ的にもUserIDで直接やりとりするよりも強力です。task.Result;//ここでトークンを取得});-----------------------------------------------------------こんな感じです。{//エラー処理});-----------------------------------------------------------こんな感じです。