Firemonkeys は AGDE を使用して開発とデバッグの時間を短縮

Electronic Arts(EA)は、米国カリフォルニア州に本社を置くゲーム会社です。スポーツ、アクション、レース、シミュレーションなど、さまざまなジャンルのゲームが幅広く製造されています。EA の開発スタジオである Firemonkeys は、Real Racing 3The Sims FreePlayNeed For Speed: No Limits のデベロッパーとしてよく知られています。Firemonkeys は、カスタム ゲームエンジンを使用してゲームを開発しています。現在は、すべての Android ゲームの開発ワークフローで Android Game Development Extension(AGDE)を使用しています。AGDE は、ビルドとデバッグのワークフローを合理化し、最終的に開発の労力とコストを削減する方法を求めていました。

「The Sims: Freeplay」のスクリーンショット 図 1: 「The Sims: Freeplay」のスクリーンショット

活用方法

Firemonkeys は、AGDE を使用して、テスト用のすべての Android ビルドを生成するとともに、Android 上のネイティブ C/C++ コードをデバッグしています。このゲームビルド ワークフローには、コンパイル時間を短縮するため、プリコンパイルされたヘッダーと Unity ビルドの組み合わせが含まれています。どちらも AGDE で適切にサポートされています。Firemonkeys はデバッグの際、頻繁に AGDE を使用して C/C++ コードをデバッグします。EA のテクニカル ディレクターである Patrick Broddesson 氏は次のように述べています。「デバッグ インターフェースとパフォーマンスに満足しています。より複雑な問題が発生した際は逆アセンブル ビューを使用します。AGDE にはそのための優れたツールがあります。」プロファイリングに関しては、拡張機能自体から Android Studio Profiler をすばやく起動できるため、デバイス固有の問題を調べる際にプロファイリング プロセスを簡単かつ迅速に行えます。

Firemonkeys のエンジニアリング チームは Visual Studio にすでに精通していたため、新規または既存のプロジェクトの既存のワークフローに AGDE を数日で簡単に統合できました。「統合プロセスはシンプルで、拡張機能には、ガイダンス用のドキュメントとサンプルアプリが付属しています」と Broddesson 氏は述べています。

AGDE のデバッグが進行中です 図 2: 進行中の AGDE デバッグ

結果

Firemonkeys では AGDE を使用することで開発環境を統合し、プラットフォームやデバイス間でビルド パイプラインを自動化できます。AGDE を使用することで、Firemonkeys の既存の Visual Studio IDE と AGDE のデバッグ インターフェースを組み合わせて、Firemonkeys の Android 開発のニーズに対応できるようになりました。Broddesson は、統合に成功し、以前のワークフローを大幅に改善したと述べています。「AGDE を使用することで、Android の新機能の開発時間と、Android 固有の複雑なバグのデバッグに要する時間を確実に削減できました。」Firemonkeys のチームは、AGDE を使用することでメンテナンスが少なくなり、新しいプロジェクト(特に Visual Studio をメイン IDE としてすでにセットアップされているクロス プラットフォーム プロジェクト)の設定時間を短縮できることがわかりました。「AGDE を使用することで最大のメリットは、異なる IDE やデバッグツール間を移動する必要がないため、エンジニアリング チームのコンテキストの切り替えを最小限に抑えることができることです。」

全体として、Firemonkeys は AGDE のビルド、デバッグ、プロファイリング ツールを使用することで、Android 固有の機能の開発コストを 10 ~ 15% 削減できると見込んでいます。Broddesson 氏は次のように述べています。「コスト削減は、チームのエンジニアリング ワークフローの障害が軽減された結果です。

始める

Android Game Development Extension を使用すると、Visual Studio で C/C++ を使用してクロス プラットフォーム ゲームをビルドするときに Android をターゲットにできます。