アンリアル エンジン 4 では、アナリティクス サービス プロバイダーがネイティブ ライブラリを各モバイル プラットフォーム上でラップする場合に使用する汎用タイプのアナリティクス インターフェースが提供されています。汎用レイヤーにより、ゲーム デベロッパーは好きなアナリティクス プロバイダーを選んで、そのコードまたはブループリントを一回記述することができます。これにより、すべてのプロジェクトでアナリティクスをアプリケーションへ追加できるようになりますし、次回以降のリリースでプロバイダーの切り替えをする場合に、ゲームの手直しなしにプロバイダーのリストから選択できるようになります。目標は、デベロッパーがアプリケーションをトラックするアナリティクスを追加しやすくし、デベロッパーが変更を必要とする時にサービス プロバイダー間での移植性を提供することです。
UE4 ソースから利用できるプラグイン
ソース ディストリビューションもプラグインに含まれていて、デベロッパーのニーズに合わせた機能性のレイヤーを提供します。アナリティクス プロバイダーの中には、プロバイダーのネイティブ ライブラリをプラグインに追加すれば、そのまますぐに使えるものもあります。プロバイダーとソース ディストリビューションを紹介します:
マルチキャスト
様々なアナリティクス プラグインに対して送信するプラグインです。異なるアナリティクス プロバイダーのグループに同じデータを送りたい場合に使います。この方法は Infinity Blade シリーズの UE3 で使われ、異なるアナリティクス プロバイダーの様々な機能の中から一番良いものを引き出すことができたため、UE4 でも継続しています。
ブループリント アナリティクス プラグイン
アプリケーション ブループリントで使用するブループリント ノードを作成して、C++ アナリティクス インターフェース間を接続します。詳細に関するドキュメントは こちらのリンク からご覧いただけます。
ファイル ロギング プラグイン
このプラグインは、主にアナリティクス イベントのデバッグ処理の支援用に使われます。使用している開発用端末上の JSON ファイルに対するすべてのアナリティクス API コールを書き出します。リリースされたアプリケーション用ではありません。
Apsalar
Apsalar プラグインは API の実装を提供します。ネイティブ ライブラリが必要になるので、サービス アカウントと一緒に取得します。広告キャンペーンの効果を確認できる Facebook 用アトリビューション プロバイダーです。Facebook 広告を使ってアプリケーションのユーザー獲得を目指すのであれば、検討する価値があります。
Flurry
Flurry は、モバイル アプリケーション向けアナリティクス プロバイダーの生みの親です。自分のアプリケーションを他のアプリケーションの同じカテゴリにおけるパフォーマンス比較をとても分かりやすく行うことができます。Flurry は幅広く普及して多くのアプリケーションで採用されているので、特定のカテゴリ内でのデータ比較が楽に行えます。さらに、Flurry を別のアプリケーションで使えば、自分がビルドした UE4 アプリケーションのメトリクス比較も行えます。Infinity Blade シリーズではこの機能を使って、異なるバージョン間でのゲーム ユーザーのビヘイビアを比較しました。
サードパーティ プラグイン
UE4 のマーケットプレイスには、プロジェクトで活躍しそうなコンテンツ、チュートリアル、サンプル コンテンツを豊富にそろえています。さらに、コード プラグインに対するサポートも追加しています。これらのプラグインは、サードパーティのデベロッパーおよびプロバイダーによって書かれたものです。現在、GameAnalytics と NinjaMetrics をマーケットプレイスのプラグインに追加しているところです。他にもまだまだ作業中のものがありますので、マーケットプレイスをこまめにチェックしてみてください。
自分だけのものを作る
上の対応表にお気に入りのプロバイダーがない場合は、独自のアナリティクス プロバイダー インテグレーションを作るという手段もあります。サポートするインターフェースがひとつだけになるので、とても分かりやすくなります。通常は UE4 API を対象のアナリティクス プロバイダーの API に変換する基本的なラッパー プラグインが実装されています。プラグインへのソースの記述がありますので、お気に入りのプロバイダーの API を統合する方法のサンプルとしてご使用いただけます。