Von iPhone zu AppUp: Portieren von „G:Into the Rain“

Angeregt durch das Wachstum und die Popularität von iPhone-App-Entwicklungen, fragen sich viele Entwickler, wie sie den Markt auf andere Plattformen ausdehnen können. Einige von ihnen führten erfolgreiche Portierungen zu AppUp durch und stießen auf interessante Herausforderungen und Möglichkeiten zwischen den Plattformen.

Dies ist mein Gespräch mit Entwickler Chris Skaggs, CTO von Soma Games, mit Fragen und Antworten über seine Erfahrungen bei der Portierung seines Schwerkraft-gestützten Spiels "G Into the Rain" vom iPhone zu AppUp.


 


Frage: Welche Tools und Methoden haben Sie für das Portieren Ihrer App zum Netbook verwendet und warum haben Sie diesen Weg eingeschlagen?

Chris Skaggs:

Wir haben uns mit Soma Games weniger als einen Monat, bevor das AppUp Center bei der CES präsentiert werden sollte, ins Rennen gestürzt. Wir mussten deshalb aus Gründen der Schnelligkeit einige Entscheidungen treffen, die wir andernfalls nicht getroffen hätten. Unser Spiel lief bereits auf der iPhone-Plattform, wo jede Zeile der Obj-C-App hausgemacht war, so dass es nicht nötig war, dort irgendetwas zu optimieren, und wir fanden, dass Objective-C sehr leicht zu einer Flex-Anwendung zu portieren war. Sobald wir eine .SWF-Datei hatten, war es relativ einfach, einen C++-Wrapper zu erstellen, der die Authentifizierungsschicht für das AppUp Center liefert.

Wenn wir mehr Zeit gehabt hätten, hätten wir das Spiel vielleicht aus Leistungsgründen von Grund auf in C++ programmiert, aber rückblickend denke ich, dass das typische Netbook über ausreichende Leistung mit Platz für Extras verfügt, um unser Flash-Spiel auszuführen. Es war also kein Problem.


Frage: Wie sind Sie mit den Hardware-Unterschieden umgegangen, wie z.B. der Bildschirmauflösung oder der Multi-Touch-Technik im Vergleich zu Maus und Tastatur und Beschleunigungssensor im iPhone?

Chris Skaggs

Das iPhone bietet mit Sicherheit einige spezifische Optionen für die Benutzerschnittstelle, die einige wirklich interessante Spiele hervorbrachten, die auf anderen Plattformen einfach nicht laufen, aber für jede spezielle Funktion gibt es auch deutliche Einschränkungen. In unserem Fall konnten wir mühelos Funktion um Funktion auf das Netbook übertragen. Auch mit anderer Benutzerschnittstelle und Steuerung würde niemand auf die Idee kommen, dass sich das Spiel auf dem iPhone großartig von dem auf dem Netbook unterscheidet. Falls überhaupt, kommt das Netbook den Stärken des Spiels eher entgegen – viele Bilder, Stimmungsmusik und präzise Planung, das funktioniert alles besser mit größeren Bildschirmen und höherer Hardware-Qualität.

Der eigentliche Trick besteht darin, die Stärken der Plattform auszunutzen und ihre Einschränkungen zu umgehen. Man muss darauf achten, dass die Anwendungen, die man programmiert, gut zu der Hardware passen, auf der sie ausgeführt werden, und es kann einem nichts geschehen.


Frage: Hat Sie irgend etwas bei der Portierung überrascht – war es schwieriger oder leichter, als Sie dachten?

Chris Skaggs

Es war, ehrlich gesagt, leichter als gedacht. Als ich meinem Team das Projekt vorlegte, dachte ich, dass ich von ihnen fast Unmögliches verlange: „Wir müssen diese App, an der wir fünf Monate gearbeitet haben, in zirka drei Wochen auf eine total neue Plattform portieren. Viel Erfolg dabei.“ Aber in Wahrheit ging der Flex-Teil des Projekts überraschend schnell voran. Wir hatten einige Probleme mit dem Wrapper, aber ich sage das nur im Vergleich dazu, wie unproblematisch der Rest funktionierte.


Frage: Haben Sie Funktionen verloren oder erweitert bzw. verbessert?

Chris Skaggs

Nun ja, am Ende fügten wir tatsächlich eine Menge neuer Funktionen hinzu, obwohl das nicht ausdrücklich am Portieren lag. „G:Into The Rain“ gab es seit ungefähr 6 Monaten im iTunes Store, und obwohl wir damit zufrieden waren, wussten wir auch, dass es einige Dinge gab, die besser sein könnten. Als wir beschlossen, das Spiel zum PC zu portieren, entschlossen wir uns, die Möglichkeit zu nutzen und eine ganze Palette an Elementen hinzuzufügen, die noch auf unserem iPhone-Wunschzettel standen. Als das AppUp Center anlief, war die PC-Version des Spiels deshalb im Grunde eine Art Version 2 des Spiels, und die V1.4 war die Version, die noch einen weiteren Monat lang auf iTunes blieb. Derzeit stimmen beide Versionen überein.


Frage: Wie vergleichen Sie das Spielen selbst auf diesen beiden Geräten?

Chris Skaggs

Das ist schwer zu sagen, besonders dann, wenn ich einen Favoriten nennen soll. Ich würde sagen, mir gefallen unterschiedliche Teile der jeweiligen Version. Ich mag den Beschleunigungssensor und die Touch-Technik der iPhone-Version wirklich. Das Spiel fühlt sich sehr direkt und aus dem Bauch heraus an. Aber mir gefällt wirklich auch das intensivere Erlebnis durch die Bildschirmgröße und den Sound des Netbooks. Außerdem spricht die Präzision des Netbooks den Computerfreak in mir an. Wie ich bereits erwähnte, der Unterschied bei der Benutzerschnittstelle sorgt für ein anderes Erlebnis, selbst dann, wenn es sich um genau die gleichen Elemente und Funktionen handelt.


Frage: Benötigten Sie irgendeinen Support von Intel bezüglich des Verfahrens? / Wie war das Einreichungsverfahren und der Support für AppUp im Vergleich zu iPhone?

Chris Skaggs

Wir brauchten ziemlich viel Hilfe. Grundsätzlich war die PC-Plattform neu für uns, wir hatten wenig Zeit und hatten echte Probleme damit, die Authentifizierung zum Laufen zu kriegen. Zu diesem Zeitpunkt hatte das SDK einige der jetzt angebotenen Tools nicht. Wenn wir also Änderungen am C++-Code vornahmen, tappten wir echt im Dunkeln und mussten die App auch so einreichen und uns mehr oder weniger auf den Prüfvorgang verlassen, um herauszufinden, ob sie läuft oder nicht. Außerdem führte unsere leicht unkonventionelle Herangehensweise, Flash in C++ einzubinden, zu wirklich obskuren Fehlern, die einfach nur gemein waren.

Dennoch war ich wirklich beeindruckt davon, wie Intel sich für uns eingesetzt und mit uns gearbeitet hat. Ich hatte wirklich das Gefühl, dass sie wollten, dass wir es schaffen und alles taten, unsere seltsamen, kleinen Fehler aufzuspüren. Ihre praktische und persönliche Unterstützung hat uns schwer beeindruckt.


Frage: Würden Sie irgend etwas anders machen, oder haben Sie Tipps für Entwickler, die von iPhone nach AppUp portieren wollen?

Chris Skaggs

Ich glaube nicht, dass wir gezielt etwas anders machen würden, jedenfalls nichts außer den zuvor erwähnten Überlegungen in puncto Sprache. Grundsätzlich werden wir das mit Sicherheit wiederholen, und die Fortsetzung von „G“ ist bereits auf dem Weg, diesmal aber von Anfang an mit einem Auge auf Multiplattformentwicklung. Was Tipps angeht: Beschaff dir die richtigen Software-Entwicklungstools, die „kostenlosen“ Nachahmungsprodukte verursachen nur Kopfschmerzen. :)

0