Java Android Game Leistung (viele Objekte zeichnen)

cooldiman1

Lt. Junior Grade
Registriert
Dez. 2011
Beiträge
299
Hallo CB-User,

ich bin aktuell mich mit Android Studio am beschäftigen

Ich möchte ein Strategiegame entwickeln und dort ist es sehr wahrscheinlich das 200+ Objekte gleichzeigt auf dem Screen sind.
Efahrung habe ich mit C# Monogame.

Ich habe dieses Tutorial (http://panjutorials.de/tutorials/android-gameapp-entwicklungstutorial-lazy-pudding/)
angefangen. Soweit ich das dort verstanden habe, erstelle ich Bitmaps die ich in ein Canvas male/zeichne.

Das habe ich umgesetzt und ich bekomme auf meinem HTC One M7 es hin ca. 140 Bilder (das Android Logo) gleichzeitig zu zeichnen und zu bewegen bei 60FPS. Aber das ist auch das Maximum. Bei mehr als 150 Bilder gleichzeitig wirds nur noch langsamer.

Jetzt hatte ich mir OpenGL ES angesehen, aber hab mich davon ziemlich verwirren lassen, weil es ja doch etwas umfangreicher aussieht und ziemlich unverständlich ist, für mich als Anfänger.

Meine Frage:
- Wie bekomme ich es hin sehr viele Objekte zu zeichnen (200+) und das mit einer möglichst "einfachen" Methode?
- Hat jemand dort Erfahrung und kann mir ein Thema sagen welches ich mir am besten im Moment aneignen sollte?


MfG,
Robin Scheulen
 
Zuletzt bearbeitet:
Schau dir am besten Libgdx an. Damit solltest du locker die Anzahl anzeigen können, da 3D-beschleunigt mittels OpenGL ES. Texturen laden und dann als Sprite zeichnen.
Gibt es auch genug Dokumentation zu und die Lib ist für die Spieleentwicklung auf Android entstanden.
 
Wenn du bereits Erfahrung mit C# Monogame hast, wieso probierst du dann nicht Unity3D aus? http://unity3d.com/

Damit kannst du auch ziemlich schnell ein 2D/3D Strategiespiel für Android erstellen. Einige Code-Schnipsel, speziell Logik, solltest du sogar übernehmen können.
 
Ok danke schonmal :)
Ich schaue mir mal Libgdx an.
Irgendwie bin ich von Unity3D nicht so angetan. :)

Gruß,
Robin Scheulen

PS: Wenn jemand noch andere Ideen hat, immer her damit :)
 
Wenn du bei Java bleiben möchtest, dann würde ich dir auch LibGDX ans Herz legen. Sehr einfach zu benutzen und dennoch mächtig. Ansonsten kannst du dir auch mal cocos2d-x anschauen. Auch eine sehr gute 2D Crossplatform Engine. Hier hingegen müsstest du C++ beherrschen.
 
Zurück
Oben