Wie fange ich an, Android-Spiele zu machen? [geschlossen]


112

Ich bin neu in der Spieleentwicklung. Ich interessiere mich für die Entwicklung von 2D-Spielen für die Android-Plattform. Was ist der beste Ausgangspunkt (dh) Was sind die Grundlagen und wie geht man vor? Ich habe bereits Programmiererfahrung in Java, aber keine Erfahrung mit Grafiken oder Animationen.


Bitte machen Sie Ihre Frage (Titel) etwas aussagekräftiger.
Ricket

1
Hast du Erfahrung mit Android?
Jesse Dorsey

3
@Ricket oder wir könnten es für ihn tun :)
Andrew Russell

Ich bin gespannt, ob OpenGL, obwohl es schneller ist, mit der Oberflächenansicht oder einer anderen Methode mehr Akku als normales 2D verbraucht. Kennt jemand eine Antwort?
Kelmer

Sie müssen sich für eine Spiel-Engine und eine Spielidee entscheiden, um sich die Hände schmutzig zu machen. AndEngine scheint eine gute Ergänzung für 2D-Spiele zu sein, und Flappy Bird ist die neue "Hallo Welt" in der Spieleentwicklung. Schauen Sie sich dieses Tutorial über Flappy Bird in Android mit AndEngine an . Prost!
appsroxcom

Antworten:


82

Android ist möglicherweise nicht die beste Wahl, um mit der Spieleentwicklung zu beginnen, da Sie verschiedene Dinge gleichzeitig lernen würden (Android SDK, Erstellen von Spielen, Optimierung, verschiedene Telefonmodelle usw.). Erwägen Sie, einige einfache Java-Spiele auf Ihrem Computer zu erstellen, um sich mit dem Erstellen von Spielen im Allgemeinen vertraut zu machen. Dieses Tutorial scheint ein guter Anfang zu sein.

Wenn Sie mit Java und der Spieleentwicklung vertraut sind, beginnen Sie mit den Android-Tutorials . Das Entwicklungshandbuch ist sehr nützlich, insbesondere müssen Sie die Grundlagen und den Aktivitätslebenszyklus von Android sowie die Grafiken kennen . Holen Sie sich die Android-Beispiele und sehen Sie sich die Lunar Lander- und Snake-Spielbeispiele an (es gibt auch JetBoy , aber das konzentriert sich auf den JetPlayer).

Die Canvas-Klasse ist eigentlich gut genug für die meisten 2D-Spiele, aber wenn Sie eine bessere Leistung benötigen oder später zu 3D-Grafiken wechseln möchten, müssen Sie OpenGL ES lernen . Dies geht jedoch über den Einstieg hinaus (es sei denn, Sie kennen OpenGL bereits).


Genau das, wonach ich gesucht habe. Vielen Dank @Firas Assaad
Ragunath Jawahar

Eine weitere gute Ressource ist das Buch Hallo, Android, in dem es darum geht, ein Sudoku-Spiel in mehreren Kapiteln zu erstellen, einschließlich Zeichnen auf Leinwand und Eingaben durch den Benutzer. Es gibt auch ein Kapitel über 3D-Grafiken, in denen ein strukturierter rotierender Würfel erstellt wird.
Firas Assaad

Ich bin gerade vom BlackBerry zum Android-Spieleentwickler gewechselt und möchte meinen Hut bei Firas einwerfen: Die Canvas-Klasse bietet mehr als genug Leistung für ein 2D-Spiel. Es ist nicht erforderlich, die zusätzliche Komplexität von OpenGL beim Starten hinzuzufügen.
ADB

Ich stimme dieser Antwort zu, aber Android ist nicht der schlechtere Ort, um loszulegen! Mein allererstes Programmierprojekt war ein Comiczuschauer. Dann habe ich ein Puzzlespiel erstellt und jetzt erstelle ich ein 2D-Spiel mit OpenGL ES 2.0-Grafiken. Ich habe auf einmal gelernt, aber in den letzten 9 Monaten hat mir Android geholfen, eine gute Grundlage für Java, SQLite und OpenGL zu schaffen, und ich habe einen großartigen Einstieg in die OOP- und Spieleentwicklungskonzepte gefunden. Ich hätte es schlimmer machen können, als zu lernen, wie man mit Android programmiert.
Amplify91

66

18

Wenn Sie bereits mit Android vertraut sind und grundlegende UI-Anwendungen damit ausführen, sollten Sie sich dieses mehrteilige Tutorial ansehen, in dem das Zeichnen von Grafiken auf einem Android-Bildschirm erläutert wird.


5
der Link erscheint , gebrochen zu werden - vielleicht die Seite existiert nicht mehr
Nasir

4

All dies sind wirklich gute Antworten. Aber ich bin ein wenig überrascht, dass noch niemand jMonkeyEngine erwähnt hat.

Es ist Java, Shader-basiert, kinderleicht zu starten, sehr gute Dokumentation, großartige Community, schnelle Fehlerbehebung, mit einer Entwicklungsumgebung für Spiele (jMP basierend auf der NetBeans-Plattform) ausgestattet und entwickelt sich sehr schnell.

Ich würde mich mehr darauf konzentrieren, denn die Entwicklung von Spielen und die Erstellung einer Bibliothek, aus der jemand ein Spiel erstellen wird, ist ganz anders. Also, wenn Sie ein Spiel machen wollen kein Spiel - Engine, genau richtig in Jmonkeyengine springen mit geschlossenen Augen. :)


Ich habe eine schnelle Google-Suche über jMonkeyEngine und Android durchgeführt. Da Android einen eigenen Java-Interpreter verwendet, ging ich davon aus, dass jMonkeyEngine damit nicht funktionieren würde. Es ist aber immer noch Java, also hätten sie vielleicht einen Port erstellt. In jedem Fall impliziert eine Minute Forschung, dass es sich um eine laufende Arbeit handelt.
Xuincherguixe

jME funktioniert mit Android, es gibt mehrere Projekte im Laden. Ich schlage Ihnen vor, in ihrem Forum für technische Spezifikationen zu posten.
Quazi Irfan

3

Processing.org ist ein weiterer guter Ort, um mit der (etwas vereinfachten) Codierung / Entwicklung zu beginnen, bevor Sie in das Android SDK eintauchen. Es funktioniert unter Max / Windows / Linux und verfügt über eine speziell für die Android-Bereitstellung entwickelte Version . Ich kann es nur empfehlen - solange Sie ein Android-Handy haben, können Sie Spiele / Apps auf Ihrem Handy bereitstellen, die Sie mit dieser Version von Processing erstellt haben. Ich hoffe es hilft.


Sie können ab der neuesten Version auch im Android Market veröffentlichen, obwohl ich es noch nicht ausprobiert habe.
Gary

Ich habe gehört, dass die Verarbeitung Leistungsprobleme mit Android hat, stimmt das?
Ragunath Jawahar

Ich habe nicht genug verschiedene Dinge ausprobiert, um eine fundierte Richtig / Falsch-Antwort zu geben. Meine Programme scheinen sich auf Android gut zu verhalten. Ich würde sagen, suchen Sie im Internet, im Android-Forum der Suchverarbeitung usw. Oder probieren Sie es einfach aus. ;)
Gary

Ok, ich werde das überprüfen @gary comtois
Ragunath Jawahar

2

Ich bin auch neu in der Entwicklung von Android-Spielen und finde, dass die Open-Source-Spiele-Engine AndEngine ein ziemlich gutes Werkzeug ist, um damit zu beginnen. Es gibt eine Reihe von Beispielen und eine ziemlich aktive Community.

http://www.andengine.org/


0

Ich empfehle dringend das Airplay SDK, da es unter Windows funktioniert und auf den meisten Smartphones eingesetzt werden kann. Sie haben auch eine großartige Indie-Lizenz.


Ich bin Java-Entwickler, scheint Airplay SDK ein C ++ / XCode SDK zu sein?
Ragunath Jawahar

Airplay SDK ist jetzt Marmalade SDK. Es hat separate SDKs für C ++, Lua, HTML5 und Objective C
noob
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.