Android Game - Hilfestellung benötigt

  • 18 Antworten
  • Letztes Antwortdatum
StefMa

StefMa

Dauer-User
450
Hallo zusammen,

ich möchte gerne ein kleines Android Spiel Entwickeln, weiß aber nicht so recht wie/wo ich anfangen soll. Auch ob ich für das vohaben eine Engine brauche/besser wäre weiß ich nicht, da ich nicht ganz weiß wofür eine Engine überhaupt da ist bzw. was sie konkret macht. Ich weiß nicht wie sie mir helfen könnte. Also fangen wir erstmal an mit dem was ich haben will:

Zielsetzung:
Design:
Die App soll eine SplitActionBar haben. In der Mitte des Screens soll sich dann das Spiel ablaufen. Die Top-Actionbar soll lediglich ein Icon und den Spielename enthalten. Die ActionBar am Bottom soll zwei Texte haben. "Spielen" und "Pause".

Das Spiel:
In dem Spiel soll man ein kleines Strichmännchen nach Links und Rechts bewegen können. Dazu kann man auf dem Touchscreen tippen. Ist der Druck auf der Linkenseite geht das Männchen nach Links, ein druck auf die rechte entsprechend.
In bestimmten Abständen sollen "Bausteine" vom Himmel (Von der Top-ActionBar quasi) fallen. Diese landen dann auf dem Boden (Über der Bottom-ActionBar) und bleiben dort liegen. Wenn ein Baustein auf einen anderen fällt, dann soll dieser "auf" den schon vorhanden Stein liegen bleiben.

-- Das Spielfeld:
Das Feld soll in einem Raster dargestellt werden (Ähnlich wie Tetris). D.h. man hat zum Beispiel ein 20x6 "Raster"-Feld. Das Männchen kann dann nur 5x nach Links bzw. 5x nach Rechts laufen. Das selbe gilt für die Steine. Diese sollen auch nur in dem Raster fallen. Heißt also auch, dass sich die X-Kordinate während dem "Flug" nicht verändern darf...

Jetzt ihr:
Wie eingangs erwähnt, habe ich keine Ahnung wie ich da vorgehen soll. Bin also über jeden Tipp (gedankengang) dankbar!

Danke und Gruß

€dit: Just a few tutorials:
- http://www.basteldroid.de/category/...ntwicklung/lektion-4-teile-einer-android-app/
- http://panjutorials.de/tutorials/android-gameapp-entwicklungstutorial-lazy-pudding/
- http://www.androidpit.de/de/android/wiki/view/Spieleentwicklung_101
 
Zuletzt bearbeitet:
Hi,

da ich schon ein Spiel mit Cocos2dx und eins mit nativem Android-Code erstellt habe, habe ich ein wenig Erfahrung.

Bei deiner Zielsetzung würde ich zu Cocos2dx raten, auch wenn der Header und der Footer meiner Meinung dort nicht so einfach zu programmieren sind.
Vielleicht kannst du aber den Surface auch mittig platzieren und die Androidkomponenten außen drum herum.

Ich empfehle dir deswegen Cocos2dx, da dort schon eine Gravitationsapi zur Verfügung steht und das Iterieren über den einzelnen Frames meiner Meinung nach besser gelöst ist.

Also ich an deiner Stelle würde das Cocos2dx-Beispiel nehmen und es auf dem Endgerät meiner Wahl kompilieren. Dann kann man schon mal sehen, was möglich ist, und was nicht.

Ich habe vor ca. 1,5 Jahren in der C++-Version programmiert. Heutzutage würde ich die Javascript-Version nehmen.

Ich hoffe, ich konnte dir helfen.
 
  • Danke
Reaktionen: StefMa
Hallo auch von meiner Seite,
ich habe zwar bis dato noch kein Spiel fertig programmiert, dafür so manches schon mal angefangen.
Ich bin zwar der Meinung dass das Zurückgreifen auf eine Engine ein bisschen wie "cheaten" ist, da im Hintergrund viel abläuft, was einem selbst nicht wirklich klar wird, aber insgesamt ist es je nach Zeitaufwand, den man investieren möchte bzw. kann, wohl die sinnvollere Alternative.

Warum? Ich habe Tage und Nächte vor Libgdx gesessen um eben die von Kardroid angesprochenen "Funktionen" hinsichtlich Gravity, Kollisionabfrage, Steuerung des Sprite usw. zu programmieren und (vor allem) zu verstehen. Verstanden habe ich viel, funktioniert hat ebenfalls vieles, nur halt mit einem Zeitaufwand, den ich mir neben dem Studium einfach nicht einräumen kann.

Ein Projekt wofür ich ca. 5 Tage in libgdx gebraucht habe, ist mit einer Engine in wenigen Minuten (auf jeden Fall an einem Tag!) gemacht - ohne große Recherchen und ohne großes Programmierwissen. Mit minimalem Aufwand und Wissen bekommt man extrem viel hin - jedenfalls vergleichen mit der "eigenhändigen Programmierung".

Ich finde es schon regelrecht demotivierend, wenn man Wochen vor einem Game sitzt, sich über die kleinsten Ergebisse erfreut und dann jedes 13jährige VisualBasic-Kiddie binnen weniger Minuten ein Spiel "programmiert" (besser: zusammengeklickt), was in fast allen Bereichen besser ist als ein Projekt welches den "Beta"-Status wahrscheinlich nie verlässt, da die Zeit fehlt.

Ganz klarer Vorteil des Arbeiten ohne Engine: Man kann wirklich ALLES machen - gerade hinsichtlich im Blick auf OpenGL. Eine Engine "betreut" halt immer nur das für was sie gedacht ist.
Unity ist zB auch für Android verfügbar und recht vielseitig einsetzbar - weiß allerdings nicht, wie da die Lizenzierung mittlerweile aussieht, ggf. zahlt man für den (komerz.) Einsatz.

Was ich vergessen habe:
Deine Idee/Planung würde sich mit libgdx sehr gut umsetzen lassen.
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: StefMa
  • Danke
Reaktionen: StefMa
Hört sich interessant an.
 
Hi,

erstmal Danke für eure Antworten!

@keinbrain:
Ich werde das Projekt, sobald es etwas aufzeigen kann, als Open-Source Projekt auf meinen BitBucket-Account erstellen. Gerne könnt ihr dann dort mitarbeiten...

@ui_3k1:
Ähnliche Ansätze wie du verfolge ich auch! ;)
Ich möchte auch immer ungern auf externe lib's oder Engines zurückgreifen. Irgendwie, du sagst es so schön, "cheatet" man dabei.

Sobald ich ende nächster Woche wieder Zeit habe, werde ich ich mir das ganze mal mit und ohne Engines anschauen...

Danke und Gruß

StefMa
 
Hey ho,

wenn du wirklich alles von Hand schrauben möchtest, ist diese Buch kein schlechter einsteig für die grundlegenden Sachen.
Beginning Android Games: Amazon.de: Mario Zechner: Englische Bücher
Es sollte davon auch schon neuere geben ;)

Ich mag/mochte dieses Buch... und mit ein bisschen graphischen Geschick (was mir fehlt :D) bekommt man so manches hin... und man denkt sich schnell wie man manche Sachen optimeiren/ander/besser/schöner lösen kann.

Ich finde das Buch gut als denkanstoß und einen einen Überblick zu geben... ich möchte jetzt nicht sagen das die daraus resultierende Engine zufriedenstellen ist, aber...

lg. Dagobert
 
Ja das kenne ich auch ;)
Was mich dran gestört hat.. das es "gleich openGl" und somit "zwei Problemen gleichzeitig habe".

lg.
 
Sieht nach "nicht viel aus" aber für die kurze Zeit schon echt gut (ich weiß wie viel Arbeit in so ein paar Linien stecken können). :D
Finde es gut, dass es noch Leute gibt, die "programmieren" und auch die Sachen verstehen wollen :)
Für was hast du dich jetzt entschieden?
 
Habe mir die tutorials von panjuta (Links im ersten Post) angeschaut...
Sieht auf den ersten Blick wirklich nicht nach viel aus. Aber ist wirklich kompliziert sich da rein zu denken.
Glaube auch das dass schwierigste wohl jetzt erst kommt ;-)

Gesendet von meinem Nexus 4 mit der Android-Hilfe.de App
 
Lange nichts mehr gemacht (wegen Prüfung und so :sleep:) aber nun starte ich wieder voll durch!!! :D
Naja, halbwegs..
Loading+%25281%2529.gif

Macht noch nicht ganz was ich will, aber es kommt noch :)

Sobald das mit dem verschieben der Blöcke funktioniert, werde ich es wahrscheinlich open-sourcen ;)

Gruß
 
Gefällt mir. :thumbsup:


Bin schon neugierig.
 
Und womit hast du das jetzt geschrieben?
 
Mit Java :D
Anleitung von Panjutorials (im Startpost).

Gruß
 

Ähnliche Themen

M
  • merlin1234x
Antworten
1
Aufrufe
1.209
wilco
W
4
Antworten
0
Aufrufe
1.528
453202
4
4
Antworten
0
Aufrufe
906
453202
4
Zurück
Oben Unten