News OpenGL 3.2 mit Geometry Shader ist da

Wolfgang

Redakteur
Teammitglied
Registriert
Nov. 2002
Beiträge
8.630
Um eine Grafikkarte zum Arbeiten zu bringen muss man eine speziell davor vorgesehene API nutzen, die die Verbindung zwischen dem Betriebssystem und der GPU herstellt. Im Spielemarkt wird dazu beinahe ausschließlich auf Microsofts DirectX zurück gegriffen, weswegen im professionellen Markt aufgrund der besseren Kompatibilität zu anderen Betriebssystemen OpenGL vorgezogen wird.

Zur News: OpenGL 3.2 mit Geometry Shader ist da
 
Ist ja lustig was nvidia da macht^^
Bin gespannt ob demnächst mehr Spiele mit OpenGL Unterstützung rauskommen werden.
 
nja, es sollen ja nun sachen genutzt werden, die ansich für DX10 gedacht waren.... man nutzt also eine schon gebaute straße
 
Technisch ist OpenGL jedoch dem DirectX-Standard unterlegen

Dieser Satz ist vollkommen falsch!
1. Ist DirectX bei weitem kein Standard. Es ist noch nicht einmal mehr offen.
2. Ist OpenGL DirectX nicht Technisch unterlegen.
OpenGL ist älter als DirectX. Außerdem ist es deutlich komplexer was dieses auch nicht Unbedingt zum Einsatz in Spielen zu gebrauchen macht. Da man mit DirectX deutlich einfacher zum Ziel kommt. Wenn OpenGL unterlegen wäre würde man es nicht in professionellen Dingen wie dem unterstützen beim Rendern von Shrek 3 nehmen.

Man muss sagen, das OpenGL 3 nicht optimal ist und viel Kritik eingesteckt hat. Dies liegt aber daran, dass das ursprüngliche Ziel, OpenGL aufzuräumen und zu vereinfachen verfehlt / nicht erfolgt ist. OpenGL 3 schleppt immer noch Konzepte aus 1.0 mit. Für die Spiele Industrie ist dies vollkommen überflüssig. Der Grund warum die Reinigung am Ende nicht so ausgeführt wurde wie erwartet ist, dass die Professionellen Systeme (CAD, Realistisches Rendering,...) in denen OpenGL Einsatz findet diese Konzepte behalten wollten. (Das Ursprüngliche Konzept, die API komplett zu Überarbeiten und die alte API seperat zur Verfügung zu stellen schlug leider fehl.) Ich finde auch, das die Khronos Group mit OpenGL 3 gewisse Fehler gemacht hat, dies macht OpenGL aber genauso wenig wie die schlechtere Spiele Fähigkeit Teschich unterlegen.
 
Zuletzt bearbeitet:
PunGNU schrieb:
Man muss sagen, das OpenGL 3 nicht optimal ist und viel Kritik eingesteckt hat. Dies liegt aber daran, dass das ursprüngliche Ziel, OpenGL aufzuräumen und zu vereinfachen verfehlt / nicht erfolgt ist. OpenGL 3 schleppt immer noch Konzepte aus 1.0 mit.


Na dann nenn mir doch mal ein Framework wo das nicht so ist :) Bei DX ist das schon der Horror, bei Java ist es genauso wie beim iPhone SDK und wahrscheinlich auch sonst ueberall. Wuerde ja immer Leute geben die sich aufregen das ihre decrepated Methods auf einmal nicht mehr funktionieren wuerden ^^
 
Dieser Satz ist vollkommen falsch!
1. Ist DirectX bei weitem kein Standard. Es ist noch nicht einmal mehr offen.
2. Ist OpenGL DirectX nicht Technisch unterlegen. (und wird auch nicht nur wegen der Kompatiblität zu anderes Betriebsystemen im Professionellen Bereich benutzt.)
OpenGL ist älter als DirectX. Außerdem ist es deutlich komplexer was dieses auch nicht Unbedingt zum Einsatz in Spielen zu gebrauchen macht. Da man mit DirectX deutlich einfacher zum Ziel kommt. Wenn OpenGL unterlegen wäre würde man es nicht in professionellen Dingen wie dem unterstützen beim Rendern von Shrek 3 nehmen.

Man muss sagen, das OpenGL 3 nicht optimal ist und viel Kritik eingesteckt hat. Dies liegt aber daran, dass das ursprüngliche Ziel, OpenGL aufzuräumen und zu vereinfachen verfehlt / nicht erfolgt ist. OpenGL 3 schleppt immer noch Konzepte aus 1.0 mit. Für die Spiele Industrie ist dies vollkommen überflüssig. Der Grund warum die Reinigung am Ende nicht so ausgeführt wurde wie erwartet ist, dass die Professionellen Systeme (CAD, Realistisches Rendering,...) in denen OpenGL Einsatz findet diese Konzepte behalten wollten.

das stimmt aber auch nicht was du da sagst. Direct3D (DirectX ist nicht die konkurrenz von openGL!) und openGL sind ziemlich gleich alt (beide 1992). die von dir genannte komplexität hat nichts damit zu tun, dass es kaum für spiele benutzt wird. die API ist einfach ein chaos.

der grund wieso es im professionellen bereich benutzt wird ist auch der, dass es von den Firmen auf ihre bedürfnisse erweitert wird. OpenGL wird kaum unverändert benutzt im professionellen bereich. bei CAD anwendungen ist das wiederrum etwas anders und dort ist auch meistens parallel Direct3D implementiert, wodurch man als anwender frei zwischen Software Renderer, OpenGL und Direct3D wählen kann unter windows.
 
@PunGNU:
DirectX ist ein 'de facto Standard' in der Spielzeug-vernagelten Windows-Welt. In dieser Welt entscheiden Verkaufszahlen, was 'standardisiert' ist oder nicht.
Die Relikte im OpenGL 3.2-Standard wurden vielfach kritisiert, jedoch sollte man auch bedenken, daß ein Neudesign vermutlich eine Veröffentlichung weiter verzögert hätte. Vermutlich werden die nächsten Versionen sukzessive von Ballast befreit. Immerhin garantiert ein solcher Weg auch den weiteren Einsatz teurer und qualitativ hochwertiger Software mit älteren Standards - die Windowswelt muß sich darum nicht kümmern, sie lebt in einer undefiierten Wegwerfwelt,

Offene Standards im Graphikbereich (eine Bastion, die in vielen Fällen keine Alternativen zu Windows läßt) wären wünschenswert, sind aber zum derzeitigen Zeitpunkt illusorisch.
 
@Falc

ICh weiß, wobei bei Java geht das Imho noch, C++ ist da noch ein paar mal schlimmer. Nichtsdestotrotz war ein Neuanfang das Ziel, die Kompatiblität sollte durch eine Seperate API gewährleitet werden. Was aber nicht ganz so klappte und da die CAD industrie die alten Konzepte brauchte entschied man sich OpenGL eben nicht von Grund auf neu aufzubauen. Dies hat einen teil der Community entäucht. Bei DX sind solche Überarbeitungen einfacher. FarCry 2 braucht keine Compatibität zu FarCry 1. ;)

@ Falc und Eisenfaus

ack, ich weiß das es nicht so einfach und Problemlos ist die alten Konzepte über Board zu werfen. Dies macht OpenGL aber noch lange nicht "Technisch unterlegen" wie es im Artikel Stand.

@Bubbsy und Topic

Mit 3.2 wird übrigens schon ordentlich Abgespeckt. Mittlerweile kann man bei OpenGL wählen ob man zwichen der schlanken"Kern Version" und dem Kompatiblitätsmodus wählen, welcher für den Professionellen Bereich alles mitschleppt.

@ MountWalker
Die meisten Spiele welche auch mit OpenGL (für OS X) verfügbar sind kann man auch unter Windows mit OpenGL spielen. Spiel mit --OpenGL starten bzw. mit RegEdit einen entsprechenden Dword Wert setzen. (nur in Ausnahmefällen sinnvoll...)
 
Zuletzt bearbeitet:
@ PunGNU

Wolfgang meint sicherlich, dass die offizielle OpenGL-Spezfikation unterlegen sei, weil sie technologisch hinterherhinkt - was sie auch wirklich macht. Es ist nur kein Problem und kein Endverbraucher spürt diesen Mangel, weil die "nötigen Extensions" ja sowieso im Grafiktreiber vorhanden sind.

@ Arhey

Naja, gibts ja schon die ganze Zeit, bspw. World of Warcraft und alle anderen Spiele auf Mac OS X. Auf Windws wird man aber weiterhin darauf warten müssen. Durch die neue OpenGL-Spezifikation ändert sich daran nichts, weil die technologische Rückständigkeit von OpenGL dank Extensions in der Praxis nie existiert hat - die Erweiterungen, die jetzt aufgenommen wurden, fanden sich wohlmöglich sogar 1:1 vorher so als inoffizielle Erweiterung im Nvidia-Geforce-Treiber. Dass OpenGL bei Windows-Spielen kaum genutzt wird, liegt daran, dasss man für ein Spiel nicht nur eine Grafik-API braucht und DirectX ein einheitliches SDK für alle nötigen APIs (Grafik, Klang, Musik, Eingabe ...) bietet.

@ Falc410

DirectX10 ist nicht abwärtskompatibel - DirectX10 ist von Altlasten bereinigt. deswegen gibt es auf Vista parallel zu DirectX10 noch den DirectX9L, der die Abwärtskompatibilität herstellt, aber diese beiden APIs sind getrennt. Bei .Net hast du das auch, .Net 2.0 ist nicht kompatibel zu .Net 1.0, wer beides braucht, muss beides extra installieren. ;) (und die Löschung von DirectSound3D aus DirectSound hat ja auch für einigen Wirbel gesorgt)
 
Zuletzt bearbeitet:
Der Autor dieses Textes sollte lieber sein halbes Gehalt abdrücken und diese Häfte in jemanden investieren, der seine Texte Korrektur-liest. Vertipper hin und her, das kann ja mal passieren; auch, dass jemand mal Groß- und Kleinschreibung vertauscht ;) . Aber was da an Grammatikfehlern drin ist: WAHNSINN!

1. Satz: davor = dafür
2. Satz: weswegen = wohingegen
3. Satz wurde weiter oben richtig gestellt. (-> DX ist KEIN Standard!)
4. Satz: soweit keine Fehler entdeckt, aber auch ich bin nicht perfekt ;)
5. Satz: davon hab ich keine Ahnunung, s. 4. Satz
 
@blubbsy

Das erste direct3D wurde nachträglich für Win95 entwickelt und wurde das erste mal Ende 1995 veröffentlicht.
Offiziell verfügbar war es erst '96.
 
PunGNU schrieb:
2. Ist OpenGL DirectX nicht Technisch unterlegen.
OpenGL ist älter als DirectX. Außerdem ist es deutlich komplexer was dieses auch nicht Unbedingt zum Einsatz in Spielen zu gebrauchen macht. Da man mit DirectX deutlich einfacher zum Ziel kommt.
Da schreibst du doch selbst schon wie es ist! Außerdem ist es keine Leistung dass es älter ist. Netscape ist auch älter als Firefox, nur hat das irgendeine Bedeutung?

Seit OpenGL von der Khronos-Gruppe weiterentwickelt werden soll, ist es doch einfach nur noch Bullshit was die Weiterentwicklung angeht! Hätte sich Carmack nicht hin und wieder hingesetzt und das ganze gepusht, wer weiß ob es überhaupt noch ein Spiel in OpenGL gegeben hätte.

Mit den Renderingprogrammen habt ihr natürlich recht, aber es hat auch da ewig gedauert bis die Funktionen der Hardware besser genutzt wurden, bis zB die GLSL Shader verfügbar wurden, mit denen man mal erweiterte Effekte und Prozedurale Texturen live verwenden konnte.

Alles in allem hat OpenGL mittlerweile schon ein Problem was Konkurrenzfähigkeit zu DX angeht.
 
F_GXdx schrieb:
..., bis zB die GLSL Shader verfügbar wurden, mit denen man mal erweiterte Effekte und Prozedurale Texturen live verwenden konnte. ...
Dank "nötiger Extensions" gabs die bei Nvidia sicherlich nicht so ewig zeitverzögert. OpenGL ist, "seit es von der Khronos Group"... eben ganz einfach nicht nur die offizielle OpenGL-Spezifikation. Bevor 2.0 rauskam wurde die reine offizielle Spec ohne inoffizielle Erweiterungen sowieso von niemandem mehr verwendet - auch nicht von Bioware und vielen anderen, die neben Id Software ebenfalls Spiele auf den Mac portierten. (Oni, Halo1, Halo2 ja nur deshalb nicht, weil Bungie von MS aufgekauft wurde, die beiden meist gespielten Spiele der Welt: World of Warcraft und Die Sims 3 usw. usf.)
 
Zuletzt bearbeitet:
Ich möchte mal bemeren, dass ich echt positiv überrascht bin von Nvidia. Kaum ist ein neuer Standard für Grafikkarte verfügbar, haben die schon nen Treiber parat. Sie waren auch die Ersten die OpenCL voll unterstützen und nun wahrscheinlich auch die Ersten mit OpenGL 3.2. DIe geben echt Gas, ich bin gespannt was da noch kommt.

Zu OpenGL:
Es wäre schön wenn es sich langsam gegen DirectX im Spielebereich behaupten könnte. Ist ein Spiel erstmal auf OpenGL umgesetzt, ist der Sprung auf anderen Betriebssysteme à la Linux oder MacOS auch nicht mehr weit. Auf jeden Fall mal ein Schritt in die richtige Richtung.
 
OpenGl und OpenCl haben den reiz unabhängig von Microsoft zu sein und somit doch ein gutes Stück freier von der Hardware-/ Softwaremafia zu sein. Denn OpenGL 3.2 und OpenCL 1.0 laufen komplett ab der Geforce 8er Reihe, wohin gegen DX11 noch auf gar keiner GPU läuft. Und zum Thema "OpenGL steht nicht in Konkurrenz zu DirectX", ja das stimmt wohl, aber kennt ihr SDL (http://www.libsdl.org/) ? Ist noch nicht alles drin, aber es kann noch werden.
 
Falc410 schrieb:
Wuerde ja immer Leute geben die sich aufregen das ihre decrepated Methods auf einmal nicht mehr funktionieren wuerden ^^
Ist trotzdem unvorteilhaft, wenn man erstmal groß ankündigt, alles neu und besser zu machen, um im Massenmarkt mal wieder eine Rolle zu spielen und dann alles zu kippen und eine nicht mal halbgare Zwischenlösung präsentiert.
OpenGL ES (für eingebettete Systeme) ist schonmal wesentlich moderner als die "vollständige" Version :rolleyes:
 
aber kennt ihr SDL (http://www.libsdl.org/) ? Ist noch nicht alles drin, aber es kann noch werden.
Was hat nun Open Gl oder Direct 3D mit SDL zu tun? Dir ist schon klar, dass das ganze nur für 2D gedacht ist? Falls man 3D nutzen will muss man dennoch weiterhin Open Gl einbetten. Bin mir gerade nicht sicher aber ich glaube gelesen zu haben, dass man sogar Direct 3D einbetten kann...
Technisch ist OpenGL jedoch dem DirectX-Standard unterlegen
An den Artikelschreiber:
Könnte man diesen Satz streichen oder umformulieren?

Denn dieser Satz weckt den falschen Eindruck, nämlich dass man mit Open Gl weniger machen kann als mit Direct X, oder dass Open Gl gar langsamer oder schlechter ist als Direct X. Das ist aber alles ganz großer Blödsinn, denn mit den Erweiterungen kann OpenGL sogar mehr als Direct X! Bei Direct X muss schon ewig im Vorfeld geklärt sein was als nächstes kommt bevor die Direct X Version überhaupt erschienen ist, sollten neue Feautres kurz vor Release oder danach erscheinen sind sie eben nicht enthalten und können normalerweise auch nicht genutzt werden. Bei Open Gl ist das komplett anders, da können neue Features sofort genutzt werden und zwar nämlich in Form von Erweiterungen.

Auf Browser übertragen könnte man Open GL mit dem Fire Fox, der nahezu nix von Haus aus kann aber durch die Erweiterungen im Funktionsumfang den meisten Browsern dennoch überlegen ist und Direct X mit dem Opera vergleichen, der von Haus aus sehr viel mitbringt aber kaum nachrüstbar ist, wenn etwas fehlt!

Das ganze ist lediglich eine andere Vorgehensweise, hier von unterlegen zu sprechen wäre eine ziemlich kurzsichtige Sichtweise!
Bin gespannt ob demnächst mehr Spiele mit OpenGL Unterstützung rauskommen werden.
Gibt doch schon einige, hier eine Liste: http://en.wikipedia.org/wiki/List_of_OpenGL_programs
Blizzard und ID werden sicherlich weiterhin auf Open Gl setzen, wobei ich nicht verstehe wieso sich Blizzard den doppelten Aufwand mit Direct X macht...

Aber ich denke, dass der Grund wieso Direct X bei Spielen so beliebt ist, ist dass es eben bequemer ist für Direct X zu entwickeln.

Außerdem wird nicht OpenGL häufig bei Konsolen verwendet, gerade abseits der XBox?
 
Zuletzt bearbeitet:
Zurück
Oben