Umstieg von OpenGL 3 auf WebGL sinnvoll?
-
Momentan programmiere ich mit C++ und OpenGL 3. Allerdings ist damit eine Programmierung für Smartphones & Co nicht möglich und anscheinend benötigt WebGL nur OpenGL 2.0 auf PCs, womit es auch auf älterer Hardware lauffähig wäre.
Bevor ich aber umstelle, habe ich noch ein paar Fragen, welche ich hier einfach einmal stelle:
Kann ich mit WebGL so programmieren, dass es auf allen PC- und mobilen Betriebssystemen funktioniert?
Welche Programmiersprache müsste ich dafür verwenden?
Wie groß ist der Unterschied zwischen OpenGL 3 und WebGL bezüglich Performance, Programmierung und Funktionsumfang(werden z.B. Framebuffer-Objekte aus OpenGL 3 unterstützt)?
Welche Gründe sprechen gegen WebGL?mfg Senfti
-
Senfti schrieb:
Kann ich mit WebGL so programmieren, dass es auf allen PC- und mobilen Betriebssystemen funktioniert?
Solange es dafür einen Browser gibt, der WebGL unterstüzzt sollte das gehen. Für Handys etc. sieht das aber noch sehr schlecht aus: http://caniuse.com/webgl
-
Handy nehmen eher OpenGL ES
-
Senfti schrieb:
Programmierung für Smartphones & Co [...]
Welche Gründe sprechen gegen WebGL?JavaScript.
-
Senfti schrieb:
Welche Programmiersprache müsste ich dafür verwenden?
Javascript, und das ist, wie hellihjb schon angedeutet hat, das größte Manko. Du kannst dir gerne mal ein paar WebGL-Beispiele angucken und es selber versuchen. Sobald du aber ein größeres (objektorientiertes) Projekt mit JavaScript machen willst, hats du irgendwann einfach keinen Bock mehr, weil das dermaßen fürchterlich wird, damit zu arbeiten. Aus diesem Grunde habe ich meine WebGL-Tätigkeiten auch erstmal eingestellt.
Senfti schrieb:
Wie groß ist der Unterschied zwischen OpenGL 3 und WebGL bezüglich Performance, Programmierung und Funktionsumfang(werden z.B. Framebuffer-Objekte aus OpenGL 3 unterstützt)?
Framebuffer gibt es, der Funktionsumfang entspricht weitestgehend eben WebGL ES 2.0 (was wie bereits gesagt wurde auf mobilen Plattformen zum Einsatz kommt), von der Performance her gibt es an OpenGL selber keinen Unterschied (macht ja die Hardware), du hast natürlich einige Sachen weniger, die man nun zwingend selber machen muss (bspw. Lichtberechnung). Aber na ja. Langsamer wird es nur durch die Schnittstelle Javascript/Browser.
-
Danke, dass ihr mich belehrt habt, die Finger von WebGL zu lassen
WebGL muss der Browser unterstützen, aber OpenGL ES nicht? Was ist dann der Vorteil von WebGL, denn ich kann doch einfach ein Java-Programm mit OpenGL ES im Browser ausführen?
-
Der Clou von WebGL ist doch (wie bei vielen anderen Sachen in HTML5), dass man keine anderen Plugins benötigt, sondern nur den Browser. Zudem sind Java Applets veraltet. Und auf den meisten Smartphones hast du kein Java.
-
Hallo,
Javascript ist nicht nur von Nachteil. Auch wenn man damit eine etwas schlechtere Performance hat, ist die Entwicklung etwas einfacher. Man kann die Ergebnisse sofort im Browser nachvollziehen und braucht nicht extra neu zu kompilieren. WebGL eignet sich meiner Ansicht nach vor allem gut für Demos und kleinere Programme. Eines der größten Mankos ist vielleicht die bisher fehlende Browser-Unterstützung von Extensions.
Viele Grüße
dj3hut1