Verzeih mir Jamie Hewlett und Alan Martin, ich poste großartige Kunst Tank Girlohne deren Erlaubnis
Manchmal verfällt man in einen Zustand, in dem man etwas erschaffen möchte, so dass alle nach Luft schnappen, den Mund öffnen und sagen: „Na, du bist cool.“ Diese Geschichte passierte mir im Jahr 2011, als ich einen Ausschnitt aus dem Film „Tank Girl“ sah. hatte die Idee, ein Arcade-Spiel im Comic-Stil zu entwickeln.
Warum für Android und nicht für iOS? Der Grund ist einfach – Ich hatte weder einen Macintosh noch ein iPhone, aber ich hatte den großen Wunsch, Linux auf Mobiltelefonen zu unterstützen. Damals mochte ich die FSF-Ideologie und Richard Matthew Stallman war mein Gott.
Lied der Linux-Hacker. Bevor Sie singen – Glaube an den Weltfrieden
Zum Zeitpunkt der Entwicklung war die neueste Version von Android 2.0, es war auch notwendig, die Unterstützung für ältere Versionen aufzugeben, da es viele 1.6-Benutzer gab. Viele Telefonhersteller haben nicht einmal Updates auf Version 2.0 veröffentlicht.
Ich habe sofort einen Zeitrahmen für die Umsetzung dieses Projekts festgelegt – einen Monat. Während dieser Zeit musste ich meine Java-Kenntnisse verbessern, das Android SDK Eclipse studieren, dem Monster angesichts von OpenGL ES begegnen und es auf die Probe stellen. Auf der Grafikseite mussten wir etwa sechs für Mobiltelefone optimierte 3D-Modelle erstellen. Außerdem war es notwendig, das Projekt für Gold im Android Market (wie damals Google Play hieß) freizugeben

jPCT-AE бесплатный 3д движок для Андроида
Da wenig Zeit zur Verfügung stand, war es notwendig, eine fertige 3D-Engine auszuwählen. Es ist möglich, eine eigene Engine von Grund auf zu erstellen, aber das ist nicht sehr produktiv, da das Testen und die Kompatibilität mit allen Geräten die meiste Zeit in Anspruch nehmen. Vor der Einführung von Unreal Engine, Unity, ThreeJS (HTML5) war JPCT-AE die führende Engine. Die Engine wurde als vorgefertigte Java-Bibliothek geliefert und unterstützte ältere Android-Versionen. Außerdem stellt sein Erfinder EgonOlsen auf Wunsch der Entwickler umgehend Support und Fehlerbehebungen bereit.
Das Personal entscheidet alles – Hooligan Anton stimmte zu, Musik für das Spiel zu schreiben. Ich habe seine Kreativität immer bewundert, seine Arbeit diente als Lokomotive für das gesamte Gameplay und zwang den Benutzer, bis zum letzten abgestürzten Hubschrauber zu spielen.
Es gibt so viele Dinge zu tun, wo soll ich anfangen? Sie müssen mit der Installation des Android SDK beginnen. Es verfügt jetzt über eine integrierte IDE – Android Studio. Damals wurden IDE und SDK jedoch separat bereitgestellt. Laut Dokumentation auf der Google-Website habe ich das Android SDK und Eclipse installiert. Außerdem wurden die notwendigen Pakete für Eclipse installiert, um die Zusammenstellung und den Start des Android-Emulators sicherzustellen. Eine Stunde später habe ich ein Testprojekt jpct-AE zusammengestellt:
Wow! Aber im Telefonemulator war alles sehr langsam. Daher wurde die Entscheidung getroffen, ein Telefon auf der Android-Plattform zu kaufen. Zu diesem Zweck wurde ein LG Optimus One P500 angeschafft. Seitdem habe ich keine hervorragenden Nokia-Tastentelefone auf der Symbian-Plattform mehr verwendet. Es gab Probleme beim Verbinden des Telefons mit Linux. Wenn sie immer noch auftreten, überprüfen Sie die udev-Einstellungen.
Jobs zitiert Pablo Picasso
Als ich mir „Alien Runner“ ansah, wurde mir klar, dass der Außerirdische durch ein Motorrad und zwei Punks durch eine Panzerfaust ersetzt werden kann, die Lichtung um ihn herum in eine Metropole verwandelt werden kann und der Nebel kann durch eine Nacht mit Balladen von Iron Maiden ersetzt werden. p>
Wie erstelle ich 3D-Modelle? Ja, es ist ganz einfach: Sie öffnen eine Lektion zum Erstellen von Low-Poly-Modellen auf Youtube und machen es. Der gesamte Prozess bestand darin, Projektionen in einem 3D-Editor zu skizzieren. Ich habe Zeichnungen eines Apache-Hubschraubers gefunden und ein Modell des Hubschraubers angefertigt. Die Texturen wurden aus offenen Quellen der US-Armee übernommen.

Warum braucht man in einem Spiel mit zwei Punks und einer Panzerfaust einen Hubschrauber? Als ich den Prototypen gespielt habe, ist mir aufgefallen, dass der Spieler einfach stehen bleiben und Punkte sammeln konnte. Die ideale Lösung war ein Hubschrauber, der einfliegt und den Spieler mit U-Boot-Torpedos beschießt, sodass er nicht anhalten kann.
In mobilen Anwendungen und Spielen dieser Zeit war das Problem des Speichermangels akut, sowohl auf dem Telefon selbst als auch im RAM. Auch die Leistung war hervorragend. Ein ARM-Prozessor mit einer Frequenz von 300-500 MHz. Als Ergebnis von Tests auf den Handys von Freunden stellte sich heraus, dass das HTC halb so viel Videospeicher hatte wie das LG, 8 MB und 4 MB, weshalb das Spiel die Speichergrenzen überschritt und nicht startete. Alle Ressourcen wurden so weit komprimiert, dass eine Bildrate von 30 Bildern pro Sekunde erreicht wurde und die Möglichkeit bestand, auf fast allem zu laufen.
Nicht wiederholen!
Alien Runner wurde durch Tippen auf den Bildschirm gesteuert. Diese Art der Steuerung erschien mir unbequem, daher habe ich die Steuerung mithilfe eines Beschleunigungsmessers implementiert. Das heißt, Sie drehen das Telefon – Das Motorrad dreht. Es gefiel mir so gut, dass ich für die Mutigen sogar eine Ego-Perspektive hinzugefügt habe.
Ich brauchte Unterstützung vom Entwickler der jpct-AE-Engine, als ich sah, dass der Blackout vorne im Spiel verschwand. Dies geschah nach der Minimierung und Maximierung der Anwendung. Ich habe im jpct-AE-Forum ein Thema erstellt und innerhalb von zwei Tagen wurde das Problem behoben. Ich habe die korrigierte Version der Engine in das Spiel integriert.
Es stellte sich auch die Frage, wie man einen endlosen Vorrat an Maschinen umsetzen kann. Für ein Handyspiel musste eine Möglichkeit gefunden werden, SCHNELL Autos zur Spielszene hinzuzufügen. Die Möglichkeit, vom langsamen Speicher oder von der SD-Karte zu laden, wurde sofort abgelehnt. Abhilfe schaffte ein Entwurfsmuster namens Object Pooling. Wenn ein Auto außer Sichtweite geriet oder zerstört wurde, wurde es abgestellt und in dem Moment, in dem es notwendig war, ein neues Auto an den Anfang der Szene zu bringen – dann wurde es eingeschaltet und dort platziert.
Nun, der Tag der Veröffentlichung ist gekommen. Das Spiel wurde getestet, Freunden vorab gezeigt und nun stand es kurz davor, im Android Market mit Gold ausgezeichnet zu werden. Die Registrierung im Android Market kostet 20 US-Dollar und ist kostenpflichtig. Beschreibung und Screenshots hinzugefügt. Und in diesem Moment wurde mir klar, dass ich ein Video aufnehmen musste.
Wie nehme ich ein Video für ein mobiles Projekt auf? Ist es wirklich möglich, ein Mobiltelefon zu filmen und es dann zu posten? Die Lösung war interessant, ich habe einen Android-Emulator verwendet, das Spiel mit einer Bildrate von zwei Bildern pro Sekunde gespielt und alles, was auf dem Bildschirm passierte, mit einem Programm namens gtkDesktopRecorder aufgezeichnet. Mithilfe von VirtualDub wurde die Videogeschwindigkeit auf 30 Bilder pro Sekunde erhöht. Dann im besten Videobearbeitungsprogramm – Windows Movie Maker Ich habe alle Sounds und Musik zum Spiel hinzugefügt.
Jetzt kommt der Moment der Fehler. In die Förderung des Projekts wurde nichts investiert, weder Aufwand noch Geld. Ich habe damals geglaubt, dass sich das Projekt nicht mehr durchsetzen würde. Das Spiel wurde Gold, ich habe im jpct-AE-Forum einen Thread über Mad Racer erstellt. Ich habe in zwei Wochen 12 Installationen für einen Dollar bekommen. Und schon am nächsten Tag fand ich das Spiel kostenlos auf einer Reihe von Warez-Seiten erhältlich.
Das FSF-Lied „Teilen Sie die Software“ singen; Ich habe beschlossen, eine kostenlose Version mit Werbung zu erstellen. Das Spiel wurde in die Kategorie AdWare verschoben und unten erschien ein Werbebanner aus dem AdMob-Netzwerk. Die Integration in das Werbesystem verlief reibungslos. Innerhalb eines Monats wurde das Spiel auf zehntausend Geräten installiert. Ich habe 50 $ vom Werbenetzwerk erhalten.
Vergessen Sie im Allgemeinen nicht die Werbung, ich glaube, dass dies eine der Hauptausgaben für Ihr Projekt sein sollte.
Positiv möchte ich anmerken, dass ich eine Stelle als iOS-Entwickler in einem der besten Unternehmen unserer Stadt erhalten habe. Und natürlich unschätzbare Erfahrung.
Ссылка на Google Play
Wenn Ihnen der Artikel gefallen hat, veröffentlichen Sie ihn erneut auf VKontakte, Facebook)



