GDC: Spiele von iOS zu Android portieren

Der CTO von Fishlabs Entertainment unterstreicht, dass das Portieren von iOS-Apps kein Zuckerschlecken ist.Als Beispiel dient das Spiel Galaxy on Fire 2.

vorlesen Druckansicht 63 Kommentare lesen
Lesezeit: 3 Min.

Im Jahr 2004 hatten manche Handydisplays (im Bild: J200) die gleiche Auflösung wie heute ein iPhone-App-Symbol.

(Bild: c't)

Ein Mobilspiel von iOS auf die rasant wachsende Android-Plattform zu portieren, ist keine leichte Aufgabe. Das erklärte auf der Game Developers Conference in Köln Marc Hehmeyer, seines Zeichens Cheftechniker (CTO) vom Hamburger Entwicklerstudio Fishlabs Entertainment. Als Beispiel zieht er das Weltraumspiel Galaxy on Fire 2 heran.

Vom originalen iPhone-Spiel entwickelte Fishlabs zwei neue Versionen: eine für das Spielehandy Sony Xperia Play mit Adreno-205-Grafikchip und eine für Geräte mit Nvidias Tegra-2-GPU (THD-Version). Zwar besitzt der Adreno 205 laut Hehmeyer einen etwas höheren Polygondurchsatz (40 Mio./s) als der PowerVR-Grafikchip des iPhone 4 (28 Mio./s), allerdings ist der Abstand nicht so groß, als dass sich eine besondere Grafikanpassung gelohnt hätte. So verwendeten die Entwickler die gleichen Texturen sowie Polygonmodelle und passten den Code und die Eingabemethoden an. Laut Hehmeyer war das relativ einfach zu bewerkstelligen und in wenigen Wochen umgesetzt.

Sechs Monate hat es laut CTO Hehmeyer gedauert, bis der Tegra-2-Port fertig war...

(Bild: c't)

Anders sah es bei der Tegra-2-Version aus. Wegen des höheren Polygondurchsatzes des Nvidia-Chips (71 Mio./s) erstellten die Entwickler detailliertere Modelle und erhöhten die Texturgröße von 512 × 512 auf 2048 ×2048 Pixel. Insgesamt 270 Texturen wurden modifiziert, eine verbesserte Texturkompression eingesetzt und der Code auf Pixel- und Vertexshader-Befehle hin angepasst. Die finale Version war schließlich über 200 MByte schwer, konnte also nicht einfach über den Android-Market bezogen werden (50-MByte-Limit). Hier musste Fishlabs also noch einen In-App-Downloader integrieren, der die Daten von einem eigenen Asset-Server holte. Insgesamt 6 Monate habe der Portierungsprozess gedauert, wie Hehmeyer gegenüber c't erklärte.

...der durch höher aufgelöste Texturen und mehr Details protzt.

(Bild: c't)

Grundsätzlich sei die Portierung eines Programms von iOS auf Android eine Herausforderung. Denn im Unterschied zum homogenen iOS-Biotop ist die Welt der Android-Geräte stark fragmentiert. Die vielen Geräte unterschieden sich in Hinblick auf ihre Display-Auflösungen, der Rechenkraft ihrer GPUs und CPUs, der Unterstützung verschiedener Texturkompressionsformate, der Ansteuerung ihrer Beschleunigungssenoren und gar bezüglich der Multitouch-Funktionalität.

Ein großes Problem der Android-Welt sind laut Hehmeyer die Raubkopien. 90 Prozent der Galaxy-on-Fire-2-Versionen seien illegal bezogen, in der iOS-Welt liege die Rate deutlich niedriger. Viele Android-Nutzer seien es gewöhnt, Dinge kostenlos zu bekommen, so Hehmeyer, und die Hürden seien außerdem sehr gering. Google sei bei der Prävention von Raubkopien auch kein hilfreicher Partner, vom Android-Entwickler hieß es nur "Be creative". Jeder Hersteller muss also einen eigenen Schutz gegenüber Raubkopien entwickeln – gerade für sehr kleine Studios wahrscheinlich oftmals eine Frage freier Ressourcen. (mfi)