# Wie erstellt man Spiele für Android?



## DerPolacke (4. April 2015)

*Wie erstellt man Spiele für Android?*

Hi an alle,
welche Programme und welche Programmiersprache wird benötigt um ein Android Spiel zu erstellen? 
Es sollte ein Indie Spiel werde,  kein FPS eher nur Knöpfe drücken.
Das Spiel würde so aussehen wie das Spiel "Burger Capitalist" im Google Play Store. 

Ich hab gehört das man dafür Java braucht.
Falls ja wie kann ich Java lernen also irgendwelche random Tutorials bringen nichts, es sollte schon Schritt für Schritt sein, mit Erklärungen und für ein Buch möchte ich max 80€ ausgeben.

Danke im voraus.


----------



## keinnick (4. April 2015)

*AW: Wie erstellt man Spiele für Android?*

Vielleicht bekommst Du hier schon einmal einen ersten Überblick was Dich erwartet: Android App Programmieren


----------



## ofhouse (4. April 2015)

*AW: Wie erstellt man Spiele für Android?*

Solltest vllt konkreter werden, was für Spiele du entwickeln willst, z.B. 2D / 3D macht da einen großen Unterschied.

Ich würde, wenn ich Heute anfangen wollte, Apps zu programmieren, wahrscheinlich auf C# setzen, weil man damit, was die Plattform angeht, weitgehend unabhängig ist.
Weiß schließlich keiner, in welche Richtung Windows 10 den Markt jetzt wieder verzerrt.

Wenn du schnelle Erfolge haben willst und einen einfachen Start, ist Java aber wahrscheinlich am besten für Andorid geeignet.


----------



## Bunny_Joe (4. April 2015)

*AW: Wie erstellt man Spiele für Android?*

1.)
Reine Androidspiele kannst du am besten mit Android SDK+Eclipse oder mit dem neuerem Android Studio erstellen. Java ist ein muss dafür.

2.)
Ich würde jedoch den Weg über Unity und C# bevorzugen(auch wegen der Möglichkeit einer einfachen Portierung später auf andere Plattformen, falls erwünscht.)

Bei Unity gibt es auch viel mehr Tutorials zu dem Thema, da es eine reine Spielengine ist und der 1. Weg eher für Anwedungs-Apps benutzt wird.


----------



## crys_ (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*

Du solltest erstmal normal Java lernen, dafür brauchst du aber kein Buch. Bevor du nicht einfach Kontrollstrukturen beherrschst brauchst du mit Android nicht anfangen. Sobald du kleine Programme schreiben kannst und Dinge wie Objekte, Klassen, Schleifen, Methoden, Attribute, Sichtbarkeiten und villeicht noch Streams verstanden hast kannst du dich an Android wagen. Ich kenne auch kein Buch das keine Java Kenntnisse voraussetzt.

Für Android lernen kann ich dir dieses Buch empfehlen, damit haben schon einige meiner Kollegen Android gelernt: Android 5: Apps entwickeln mit Android Studio: Amazon.de: Thomas KÃ?nneth: Bücher

An die Anderen hier: Warum soll der TE C# lernen wenn er explizit nach Android frägt? Das Standard SDK ist in Java und nicht in C#, Portierung auf andere Plattformen und Plattformunabhängige Libs sind erstmal nichts für Anfänger. Ich geh mal nicht davon aus das er sofort ein 3D-Game machen will, für ein einfaches Flappy Bird Spiel brauch man keine Profi-Tools. Ein Schritt nach dem anderen


----------



## DerPolacke (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*



crys_ schrieb:


> Du solltest erstmal normal Java lernen, dafür brauchst du aber kein Buch. Bevor du nicht einfach Kontrollstrukturen beherrschst brauchst du mit Android nicht anfangen. Sobald du kleine Programme schreiben kannst und Dinge wie Objekte, Klassen, Schleifen, Methoden, Attribute, Sichtbarkeiten und villeicht noch Streams verstanden hast kannst du dich an Android wagen. Ich kenne auch kein Buch das keine Java Kenntnisse voraussetzt.
> 
> Für Android lernen kann ich dir dieses Buch empfehlen, damit haben schon einige meiner Kollegen Android gelernt: Android 5: Apps entwickeln mit Android Studio: Amazon.de: Thomas KÃ?nneth: Bücher
> 
> An die Anderen hier: Warum soll der TE C# lernen wenn er explizit nach Android frägt? Das Standard SDK ist in Java und nicht in C#, Portierung auf andere Plattformen und Plattformunabhängige Libs sind erstmal nichts für Anfänger. Ich geh mal nicht davon aus das er sofort ein 3D-Game machen will, für ein einfaches Flappy Bird Spiel brauch man keine Profi-Tools. Ein Schritt nach dem anderen



Danke sehr, IOS, Debian sind vielleicht 10% von den Usern die weltweit ein Handy haben 90% benutzen Android. Ich hab Android, meine Freundin, mein Onkel alle außer meinem Vater und meiner Mutter die haben IOS... Darum will ich nur Android Apps machen.


----------



## crys_ (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*

10% iOS träumst du vielleicht Nachts...

Edit: Tatsache, global gesehen sind es 2013/2014 nur 15% (Quelle). Je nach Markt sind es aber deutlich mehr (China z.B. aktuell über 25%, Quelle). Hier sind die Zahlen nochmals höher.


----------



## DerPolacke (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*



crys_ schrieb:


> 10% iOS träumst du vielleicht Nachts...
> 
> Edit: Tatsache, global gesehen sind es 2013/2014 nur 15% (Quelle). Je nach Markt sind es aber deutlich mehr (China z.B. aktuell über 25%, Quelle). Hier sind die Zahlen nochmals höher.



Egal Android hat so oder so doppelt so viel oder auch 10x...


----------



## Bunny_Joe (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*

Ich würde trotzdem eine Engine empfehlen, denn wozu muss gerade ein Anfänger alles "from scratch" machen?
Selbst dein Beispiel Flappy Bird wurde mit der AndEngine entwickelt. Ist ne Open Souce OpenGL engine für Android und Java lernt man dabei auch.

Außerdem würde ich immer noch sagen, dass Unity perfekt dafür wäre. Bei einem blutigen Anfänger kommt es immer noch auf die Tutorials an, die er findet, ansonsten ist man schnell gefrustet und gibt vielleich ganz auf. Und für 2D Unityspiele gibt es Tonnen von Tuts.
Da liegen Welten zwischen anderen Frameworks/Engines.

Selbst Blizzard nutzt Unity für Heartstone, da es sogar für so eine große Firma unsinnig ist erstmal ein eigenes 2D Framework zu entwickeln, bevor man ein Spiel entwickelt, da es zu Hauf qualtitativ hochwertige Frameworks gibt.


----------



## DerPolacke (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*



Bunny_Joe schrieb:


> Ich würde trotzdem eine Engine empfehlen, denn wozu muss gerade ein Anfänger alles "from scratch" machen?
> Selbst dein Beispiel Flappy Bird wurde mit der AndEngine entwickelt. Ist ne Open Souce OpenGL engine für Android und Java lernt man dabei auch.
> 
> Außerdem würde ich immer noch sagen, dass Unity perfekt dafür wäre. Bei einem blutigen Anfänger kommt es immer noch auf die Tutorials an, die er findet, ansonsten ist man schnell gefrustet und gibt vielleich ganz auf. Und für 2D Unityspiele gibt es Tonnen von Tuts.
> ...



Ich will nur 2D Spiele erstellen. Eher so Strategie Spiele, items kaufen verbessern eher so ein "Knopf-spiel".


----------



## Bunny_Joe (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*



DerPolacke schrieb:


> Ich will nur 2D Spiele erstellen. Eher so Strategie Spiele.


Selbst dafür würde ich z.B. die AndEngine nehmen.

Aber gut, wenn man alles selber schreibt, hat man wohl am Ende des Tages sich mehr Wissen angeeignet. Ich wollte dir nur klar machen, wie viel schwieriger und umständlicher dieser Weg ist.


----------



## DerPolacke (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*



Bunny_Joe schrieb:


> Selbst dafür würde ich z.B. die AndEngine nehmen.
> 
> Aber gut, wenn man alles selber schreibt, hat man wohl am Ende des Tages sich mehr Wissen angeeignet. Ich wollte dir nur klar machen, wie viel schwieriger und umständlicher dieser Weg ist.



Mit Java eclipse usw?  Oder meinst du denn C# weg?


----------



## Bunny_Joe (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*

Ich meine, dass eine einfache 2D Engine mit ner menge Tutorials immer der bessere Einstieg ist, als alles von grundauf selbst zu machen.


----------



## crys_ (6. April 2015)

*AW: Wie erstellt man Spiele für Android?*

Ich weiß ja nicht was der TE vor hat, aber wenn es wirklich was lernen will (programmieren und Android Apps entwickeln, so habe ich das verstanden) und da auch den Ehrgeiz hat dranzubleiben und nicht erwartet das er nach 2 Monaten alles kann würde ich auf jeden Fall den harten weg gehen der wäre Java > Android > Game. Wenn er nur was "zusammenklicken" will ist er mit einer populären Engine natürlich gut beraten.


----------



## Ahab (7. April 2015)

*AW: Wie erstellt man Spiele für Android?*

Da der TE augenscheinlich keinerlei Vorkenntnisse hat, ist der "harte Weg" das Mittel der Wahl. Ob Engine oder nicht - diese Frage ist absolut müßig! Er wird mit beidem überfordert sein, wenn er nicht mal weiß, was Variablen, Funktionen und Daten- und Kontrollstrukturen sind. 

Ich empfehle "Java ist auch eine Insel" und zum Einstieg "Java von Kopf bis Fuß":

Java von Kopf bis FuÃŸ: Amazon.de: Kathy Sierra, Bert Bates: Bücher

Ersteres gibts online als Galileo Open Book im Netz, das ist aber zum Einstieg ungeeignet, da zu oberflächlich. Es ist aber gut für den späteren Verlauf, da es sehr vollständig ist. 

Für die ersten Zeilen Code ist das zweite deutlich besser geeignet. Wir sind das im Prinzip im Studium durchgegangen, meine Dozentin (didaktisch unheimlich stark!) hat auch die Hausaufgaben danach ausgerichtet. Dieses Buch setzt KEINERLEI Vorkenntnisse voraus. Damit startest du am besten durch!  

Wer noch nicht mal Fahrrad fahren kann, sollte sich nicht fragen, ob ein Mountainbike, oder ein Rennrad besser für ihn geeignet ist.


----------



## Ap0ll0XT (7. April 2015)

*AW: Wie erstellt man Spiele für Android?*

Warum beschleicht mich in diesem Thread gerade ein ungutes Gefühl, das es hier weniger um die Materie als um die Generierung von Werbeeinnahmen bzw. das schnelle Erzeugen eines Spiels für den Verkauf geht. Ich bitte dieses Gefühl zu entschukdigen. Ich möchte niemanden verturteilen. Aber hier geht es augenscheinlich um ein ganz banales Spiel, das auf Fingertippern nur Events auslöst und nur Zahlenwerte hin- und hergeschoben werden. Es kann natürlich sein, das der TE sich so ein Projekt für den Anfang ausgesucht hat. Allerdings scheint mir eher, das es ihm nur um das eine Projekt geht.

Sollte das nicht der Fall sein, bitte ich meine Mutmaßung zu entschuldigen und schließe mich meinem Vorredner Ahab an. Der beste Weg, so etwas zu lernen ist definitiv, den etabliertesten Weg über Java und dem Android-SDK zu gehen. Die Oberfläche von Burger Capitalist erinnert eher an eine App als an ein Spiel. Eine Engine würde da garnichts bringen. Er kann das Spiel auch als normale App schreiben, da sich 2D Grafiken eher statischer Natur in dem Spiel befinden. Ich sehe da kein Animationspotenzial und würde glatt behaupten, das die Holo-UI von Android alles mitbringt, was er für das Spiel brauch.

Eine Alternative wäre das schreiben der App mit Webtechnologien. Dafür kann man ein Framework verwenden wie PhoneGAP: PhoneGap | Home
Anderes Framework: Mobile Application Development Platform | Appcelerator Inc.
Der Vorteil dabei wäre, das du auch andere Plattformen unterstützen könntest, ohne viel ändern zu müssen.

Sollte es aber doch nur um die schnelle Patte gehen, dann nimmste das hier: https://www.scirra.com/construct2
Oder das hier: https://www.yoyogames.com/studio
Da musste bei keinem der beiden programmieren. Da klickste dir den Kram einfach zusammen. Viel Spaß!!!


----------

