Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

infusion93

Frischling

  • »infusion93« ist der Autor dieses Themas

Beiträge: 19

Wohnort: Frankfurt

Beruf: Informatikstudent

  • Private Nachricht senden

1

28.05.2015, 11:40

Lohnt sich der Aufwand für OpenGL ES 2.0 ?

Liebe Community,
ich beschäftige mich seit längerem mit der App-Entwicklung für Android und iOS. Ich habe wenig bis gar keine Erfahrung mit OpenGL. Ich habe mal versucht, Snake auf Android mit OpenGL ES 2.0 zu programmieren, der Aufwand dafür war enorm. Nun stellt sich für mich die Frage, ob sich der Aufwand dafür lohnt, oder ob ich mit Möglichkeiten wie Canvas arbeiten soll.
Ich möchte als Nächstes eine plattformübergreifende App entwickeln, die 2D Mini-Spiele in einer App vereint (ich weiß so etwas gibt es, es ist ja nur zur Übung). Sollte ich dafür wirklich OpenGL ES 2.0 lernen? Der Vorteil wäre sicherlich, dass sowohl iOS als auch Android mit OpenGL ES 2.0 arbeiten, die Übersetzung von Java in Objective-C sollte also leicht fallen.
Ich würde mich sehr über Eure Meinungen und ggf. über Literatur-Empfehlungen bzgl. OpenGL ES 2.0 freuen.
Mit freundlichem Gruß:
Marcel Gebhardt

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

2

28.05.2015, 11:54

Es lohnt sich schon OpenGL ES 2 mal vom Prinzip her verstanden zu haben, aber wenn Du für diverse Plattformen entwickeln willst, lohnt sich vielleicht eher der Blick auf Frameworks, die das schon bieten. Als Basis steht dort dann allerdings gern mal C++ nativ oder C# als "Script"-Sprache. Falls Du nativ bleiben willst, lohnt sich für Dich eventuell auch ein Blick auf Swift, speziell wenn Du es von Java/Android auf iOS umschreiben willst. Da ist der Aufwand deutlich geringer. Dasselbe gilt natürlich auch für C++ unter iOS.
Du musst also entscheiden, was Du willst. Willst Du es lernen, damit Du es kannst - was sicher nie schadet. Oder willst Du plattformunabhängig Spiele entwickeln? Bei letzterem würde ich wie gesagt eher auf ein Framework zugreifen, was Dir die ganzen plattform-spezifischen Dinge abnimmt und wo Du Dich auf's Wesentliche konzentrieren kannst.
Was ich Dir jedenfalls nicht raten würde, ist OpenGL ES 1 zu machen, was bei Dir aber ohnehin scheinbar keine Option ist.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

infusion93

Frischling

  • »infusion93« ist der Autor dieses Themas

Beiträge: 19

Wohnort: Frankfurt

Beruf: Informatikstudent

  • Private Nachricht senden

3

28.05.2015, 13:08

Und wo kriege ich solche Frameworks her? Welche Entwicklungsumgebung benutzt man dann und sind denn dann die Abfragen für Daten vom G-Sensor, etc. für alle beiden Plattformen gleich?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

4

28.05.2015, 16:54

SFML2 wäre ein Beispiel, allerdings noch etwas wackelig für mobile (speziell iOS, da ist noch einiges zu tun und mich haben sie mehr oder minder vergrault, weswegen ich noch nicht genau weiß, ob ich weitere Fixes beisteuern werde). LibGDX ein anderes Framework. IDE kannst Du nehmen, was Du willst, solange es die entsprechende Sprache kann. Der Vorteil solcher Frameworks ist, dass die Abfrage diverser Dinge abstrahiert und für alle Plattformen identisch ist.
Bedenke aber, dass z.B. für iOS ein jährlicher Beitrag von $99 notwendig ist. Das entfällt auch bei Crossplattform-Frameworks nicht.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

5

28.05.2015, 19:00

Sorry, aber die Behauptung, dass SFML schlechtere Performance hat, halte ich für sehr großen Unsinn. Woher stammt das?
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Julién

Alter Hase

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

6

28.05.2015, 20:38

@Blue:
Seine Aussage disqualifiziert sich schon durch die Anzahl der Ausrufezeichen und der Verwendung von Rechtschreibfehlern als Stilmittel.

@infusion93:
Die Frage, ob du eine Low Level API (hier OpenGL ES 2) verwenden sollst, kannst du dir selber beantworten,
wenn du weist, was du denn erreichen möchtest.
Du willst verstehen was hinter der Kulisse passiert?
Arbeite dich in OpenGL ES 2 ein!
Du willst schnell plattformübergreifende Apps entwickeln?
Arbeite dich in ein Framework ein!

Abhängig von deiner Erfahrung mit Programmiersprachen wirst du etwas finden, dass dir mehr oder weniger zusagt.
Da du schon gesagt hast, dass du mit Java Erfahrung gesammelt hast, würde ich dir LibGDX empfehlen.
Mein persönlicher Favorit ist jedoch die Unity Engine, diese verwendet zwar eine andere Sprache, nämlich C#. C# ähnelt Java sehr stark.
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

infusion93

Frischling

  • »infusion93« ist der Autor dieses Themas

Beiträge: 19

Wohnort: Frankfurt

Beruf: Informatikstudent

  • Private Nachricht senden

7

28.05.2015, 21:08

Vielen Dank, ich habe mich die letzten Stunden in Unity reingearbeitet. Ich habe viel herumprobiert mit verschiedenen 2D/3D Objekten und mit 2D/3D Physik, etc. jetzt frag ich mich nur noch, wie ich das Drumherum von der App mache also ein anständiges Menü, eine Bestenliste, etc. Das wäre in Android Studio oder XCode einfach erstellt, in Unity habe ich dazu noch nichts gefunden. Da muss ich wohl ein wenig im Internet stöbern oder hier hat einer einen Vorschlag.

Julién

Alter Hase

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

8

28.05.2015, 21:18

Nutze doch einfach das GUI-System von Unity!.
Ansonsten ist Unity in Szenen organisiert, du kannst durchaus dein Hauptmenü in einer separaten Szene haben.
(Selber setze ich Szenen mit Bildschirm füllenden Fragments gleich)
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

KeksX

Community-Fossil

Beiträge: 2 107

Beruf: Game Designer

  • Private Nachricht senden

9

29.05.2015, 02:57

Habe eigentlich seit dem Buch damals nicht mehr mit gearbeitet, aber ich habe gehört, dass die SDL sehr guten mobile Support(und allgemein Multiplattform) hat.

Unity hat seit 4.6 ein neues, brauchbares GUI System und kann auch mit Datenbanken arbeiten. Aber die wahre Stärke ist ja eigentlich der Asset Store, in dem es auch vielen kostenlosen Kram gibt in der Richtung. Ich würde dir eigentlich nur zu Unity raten wenn die Priorität auf Spiel > Entwicklungsprozess liegt. Zudem ist die Performance auf mobilen Endgeräten zwar ok, aber man muss oft einiges an Optimierungsarbeit reinstecken. (Gut, muss man letztendlich überall, aber bei Unity ist halt closed source und deshalb ist es schwierig)
WIP Website: kevinheese.de

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

10

29.05.2015, 08:44

SFML macht nciht mal sprite batching.
Die Behauptung ist schlicht falsch. Das kann man mit SFML sehr wohl machen. Da brauche ich mir auch keine Lobreden des Entwicklers selbst durchlesen oder einen Benchmark, der das nicht berücksichtigt. Sorry.

Das Thema hat sich allerdings wohl auch erledigt, er hat sich entschieden.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige