Unity Analyticsを使う

Unity Analytics の使い方を説明します。実装についてはUnity 5.1以前のものになります。

Unity Analytics というサービスがあります。これはUnity で作ったゲームに組み込むもので、ユーザーの情報を取得できるようにするものです。ユーザーの情報といっても個人情報というものではありません。
ゲーム内の特定の処理を通ったところで通信し、 サーバーにその情報を記録するというものです。ゲームの開発者が任意のタイミングで通信を発生させられるので、どういった使い方をするかによって得られる情報は異なります。
ごく一般的にはある重要なボタン(ゲーム開始とかツイートするとか)を押したときを記録するといった使い方やゲームのステージクリアごとに記録するということが考えられます。ゲームごとに異なるこのようなイベントをUnity Analytics ではCustom Event というものを使って記録することができます。一人の情報だけではあまり意味がなく大勢のデータを集めて、統計的な情報を得るというのがUnity Analytics の目的になります。

統計を取ることによってどのような利点があるのかということが知りたくなるでしょう。
例えば面をクリアして次の面を解放して進行していくゲームの場合、どこまでユーザーは遊んでいるのだろうかということが知りたくなります。あるところで大量のユーザーが遊ぶのをやめている場合、そこは難しすぎたりバグがあったりするのかもしれません。
純粋にどれくらい遊ばれているのか知る以外にもゲームの改善にも使えます。分析することで発見や予想の裏付けを行うことができることがあります。


Unity Analytics はこのページにリンクがあります。Unity アカウントが必要です。
管理ページに入ったら、PROJECTSというページの右上にあるAdd Project を押します。

下のような画面になるので必要な情報を入力します。
Nameは必須なので、とりあえずここをわかりやすい名前(アプリの名前など)にします。Google API Key は課金の情報をUnity Analytics で取得する場合に使います。私は使いませんので、使用する方はこちらの説明を参照してください。Organization は入力しなくてもUnity アカウントに登録してある情報が自動で入力されると思います。
Unity Engine Version は4.x / 5.0 を選んでください。(いずれUnity をアップデートしたらそのときにまたそのバージョンでの解説を書こうと思います。今回はUnity 5.0.2 を使っているので、Unity 5.1 以降とは違います。)

最後に一番下の質問に答えます。Unity Ads でも似たような質問がありました。子供向けに作ったゲーム以外であれば下の方を選ぶことになると思います。Unity Ads の場合と異なり、後で変更できるので間違ってもすぐに直せます。
登録する情報を書き終えたら、SAVE を押して完了です。


登録したプロジェクトを選んで、Dashboad の中のINTEGRATION を選ぶと実装についての説明が載っています。これに沿って行けば良いだけですが、英語で書いてあるので一応説明しておきます。

まず実装についてはSDK が必要です。(Unity 5.1 以降では必要なくなります。)
INTEGRATION の初めのページにボタンがあるので、そこからダウンロードしてください。パッケージのインポートが終わったら、

というコードをゲームオブジェクトにアタッチすれば、Unity Analytics の初期化ができます。
“Project IDが入ります”と書いてある所には登録したプロジェクトごとに固有のIDを入れます。

スクリプトをアタッチしたら、Unity Editor 上でゲームを開始してください。BASIC INTEGRATION の5ページ目でUnity Analytics が正しく動いているか確認できます。
とりあえずここまでがUnity Analytics を使うのに必須です。この状態だとユーザーがゲームをしているかくらいの情報しかとれません。
この後、行うのがCustom Event(カスタムイベント)というもので開発者が取得したいデータを実装できるものです。

今回は長くなってしまったので、Custom Event については今度説明することにします。Custom Eventの記事はこちらになります。