Electronic Arts (EA) ist ein Spieleunternehmen mit Sitz in Kalifornien, USA. Das Unternehmen entwickelt eine Vielzahl von Spielen aus verschiedenen Genres wie Sport, Action, Rennspiele und Simulationen. Das Entwicklungsstudio von EA, Firemonkeys, ist vor allem für die Entwicklung von Real Racing 3, The Sims FreePlay und Need for Speed: No Limits bekannt. Firemonkeys verwendet eine benutzerdefinierte Spiel-Engine für die Entwicklung von Spielen und nutzt jetzt die Android Game Development Extension (AGDE) in seinem Entwicklungsablauf für alle Android-Spiele. Das Studio suchte nach einer Möglichkeit, seine Build- und Debugging-Workflows zu optimieren, um letztendlich Entwicklungsaufwand und -kosten zu sparen. AGDE konnte diese Anforderung erfüllen.
Abbildung 1: Screenshot aus „Die Sims: Freeplay“
Wie werden die Daten verwendet?
Firemonkeys verwendet AGDE, um alle Android-Builds für Tests zu erstellen und nativen C/C++-Code auf Android zu debuggen. Der Workflow zum Erstellen von Spielen umfasst eine Kombination aus vorkompilierten Headern und Unity-Builds, um die Kompilierungszeiten zu verbessern. Beide werden von AGDE gut unterstützt. Für das Debuggen von C/C++-Code verwendet Firemonkeys häufig AGDE. Patrick Broddesson, Technical Director bei EA, sagte: „Wir sind mit der Debug-Oberfläche und der Leistung zufrieden. Wir verwenden die Deassemblageansicht, wenn komplexere Probleme auftreten. AGDE bietet dafür hervorragende Tools.“ Beim Profiling konnte der Prozess durch die Möglichkeit, Android Studio-Profiler direkt über die Erweiterung zu starten, bei der Untersuchung von gerätespezifischen Problemen einfacher und schneller durchgeführt werden.
Das Entwicklerteam von Firemonkeys war bereits mit Visual Studio vertraut und die Integration von AGDE in den bestehenden Workflow für ein neues oder bestehendes Projekt konnte innerhalb weniger Tage problemlos erfolgen. „Die Integration ist einfach und die Erweiterung wird mit Dokumentation und Beispiel-Apps geliefert“, sagt Broddesson.
Abbildung 2: AGDE-Debugging in Arbeit
Ergebnisse
Mit AGDE kann Firemonkeys Entwicklungsumgebungen vereinheitlichen und Build-Pipelines plattform- und geräteübergreifend automatisieren. Mit AGDE konnte Firemonkeys seine vorhandene Visual Studio IDE zusammen mit den AGDE-Debugging-Schnittstellen nutzen, um die Android-Entwicklungsanforderungen von Firemonkeys zu erfüllen. Broddesson ist der Meinung, dass die Integration erfolgreich war und eine deutliche Verbesserung gegenüber den bisherigen Workflows darstellt. „Die Verwendung von AGDE hat die Entwicklungszeit neuer Android-Funktionen und die Zeit für die Behebung komplexer Android-spezifischer Fehler deutlich reduziert.“ Das Firemonkeys-Team stellte fest, dass die Verwendung von AGDE zu weniger Wartung und einer kürzeren Einrichtungszeit für neue Projekte führte, insbesondere für plattformübergreifende Projekte, die bereits mit Visual Studio als Haupt-IDE eingerichtet sind. „Der größte Vorteil von AGDE besteht darin, dass wir den Kontextwechsel für unser Entwicklerteam minimieren können, da es nicht zwischen verschiedenen IDEs und Debugging-Tools wechseln muss.“
Insgesamt erwartet Firemonkeys, dass die Entwicklungskosten für Android-spezifische Funktionen durch die Verwendung der Build-, Debugging- und Profiling-Tools von AGDE um 10–15 % gesenkt werden. „Die Kosteneinsparungen resultieren aus der Beseitigung von Hindernissen in den Entwicklungsabläufen für unsere Teams“, so Broddesson.
Erste Schritte
Mit der Android Game Development Extension können Sie bei der Entwicklung plattformübergreifender Spiele mit C/C++ in Visual Studio auf Android-Geräte abzielen.