Ich habe versucht, OpenGL ES 2.0 zu lernen, um ein einfaches 2D-Spiel zu erstellen. Ich habe ein Buch über Android-Entwicklung gekauft, aber nachdem ich festgestellt habe, dass der Autor sein eigenes SDK verwendet, das OpenGL ES 1.0 implementiert, habe ich mich entschieden, nur Online-Tutorials zu verwenden. Ich war so verloren, herauszufinden, was ich verwenden soll. Die Matrizen und Shader von 2.0 verwirren mich und ich kann kein Tutorial finden, das nur erklärt, wie man ein einfaches 2D-Bild texturiert. Grundsätzlich:
- OpenGL ES 1.x oder 2.0 für einfaches 2D mit wenig OpenGL-Erfahrung
- Wenn 2.0 Irgendwelche guten Tutorials für 2.0, habe ich so viele für 1.0 gefunden
Antworten:
Ich würde eher sagen: Klären Sie zuerst Ihre Konzepte mit OpenGL ES 1.x und entscheiden Sie sich dann für OpenGL ES 2.0, da erstere Ihre Basis stark machen und Sie möglicherweise keine Probleme haben, letztere zu erlernen.
Insgesamt glaube ich, dass Sie die Wahl haben. Wenn Sie jedoch ein E-Book für OpenGL ES benötigen, können Sie mich danach fragen. Ich werde den Link hier einfügen.
quelle
OpenGL ES 2 ist die beste Wahl für Android, wenn Sie keine Rückkompatibilität suchen.
Schauen Sie sich dieses Tutorial an: https://code.google.com/p/gdc2011-android-opengl/ Es ist gut erklärt.
quelle
ES 2.0 hat eine steilere Lernkurve und Sie brauchen sie nicht wirklich, um loszulegen oder viele nützliche Dinge über OpenGL-Programmierung zu lernen. Selbst mit ES 2.0 werden Sie wahrscheinlich eine feste Funktionsbibliothek erstellen, ähnlich wie ES 1.x zum Zeichnen von Grafikprimitiven.
Also würde ich sagen, bleib vorerst bei OpenGL ES 1.x und wenn du das beherrschst, kannst du später ES 2.0 und Shader ausprobieren. Die meisten Spiele benötigen nur ein paar grundlegende Shader, es sei denn, Sie machen etwas Besonderes. Hier ist ein gutes Tutorial für 2.0 Shader in Android. http://blog.shayanjaved.com/2011/03/13/shaders-android/
Es gibt auch Motoren, die die gesamte OpenGL-Arbeit für Sie erledigen. Wenn Sie Java mögen, dann vielleicht libGDX (http://libgdx.badlogicgames.com/) und wenn Sie C ++ mögen, dann vielleicht cocos2d-x (http://www.cocos2d-x.org/projects/cocos2d-x/wiki)
quelle
OpenGL ES 2.0 ist nicht komplexer als ES 1.0 Wir haben auf ES 2.0 umgestellt und unterstützen ES 1.0 in echten Apps nicht. ES 2.0 wird auf iPhone 3GS und neueren Versionen unterstützt. Es ist jetzt der meiste iOS-Markt. Unter Android ist die Situation ähnlich, aber es gibt viel mehr Geräte auf dem Markt.
Ich empfehle, ES 2.0 zu lernen und zu verwenden, da Sie ES 2.0 kennen müssen. Sie sollten ES 2.0 oder beide kennen. Personen, die ES 1.0 kennen, müssen 2.0 lernen
Für ES 2.0 ist ein Shader erforderlich, Sie können den Shader jedoch in 5 Codezeilen hinzufügen
Wenn ES 1.0-Code mit ES 2.0 kompatibel war, können Sie ihn zuerst lernen. Aber es ist anders. Sie verschwenden Zeit damit, ES 1.0 zu lernen und später zu ES 2.0 zu wechseln.
Es ist Zeit für ES 2.0, besonders wenn Sie etwas lernen.
quelle
Wenn Sie nur 2D-Inhalte haben, ist OpenGL ES 1 in Ordnung. Wenn Sie jedoch 3D-Inhalte haben möchten, ist OpenGL ES 2 geeignet.
quelle