ARCHIV 1999-2006

ARCHIV :: # 3138

Besser spät als nie: OpenGL 2.0

Noch genug Zeit für Apple, OGL 2 in den Tiger zu packen?

Autor: flo - Datum: 11.08.2004

Im Rahmen der SIGGRAPH 2004 ist heute die OpenGL-2.0-Spezifikation freigegeben worden -- ziemlich genau ein Jahr nach der etwas überraschenden Zwischenversion 1.5, die bereits eine erste Implementation der OpenGL Shading Language mitbrachte. In Version 2 nennt sich diese plattformübergreifende Sprache nun "High Level Shading Language" (immer noch basierend auf ANSI-C und Teilen von C++) und dürfte insbesondere bei der Berechnung von komplexen Oberflächen inkl. Reflexionsverhalten Vorteile gegenüber der ersten Version bringen. Die Webseite bietet bis dato leider immer noch die alten Spezifikationen. OGL 2 wird weiterhin voll abwärtskompatibel bleiben. Die Möglichkeiten der Shading Language sollten eigentlich Spiele-Entwicklern sehr entgegen kommen -- doch dieselbe Hoffnung machte sich auch schon bei OGL 1.5 breit. Den Vorsprung von Direct X holt man eben nicht so schnell auf. Ebenso brauchte selbst ATI -- sehr stark involviert in die OGL-Entwicklung -- relativ lange, um einen OGL 1.5-kompatiblen Treiber anzubieten. Erst die ATI Radeon 9800 unterstützte das komplette OGL-1.5-Featureset und erst Version 1.5 von ATIs Rendermonkey implementierte (nach einem Dreivierteljahr seit Ankündigung) die Shading Language. Erste Kommentare in den nächsten Wochen und Monaten von den einschlägigen Spieleschmieden werden nichtsdestotrotz sicherlich spannend.

Etwas verwirrend ist die erneute Angabe eines angeblich neuen Features: Die Unterstützung von "non-power-of-two"-Texturen. Die sollte eigentlich schon OGL 1.5 gebracht haben, das in 10.3 steckt und für Quartz Extreme wenigstens teilweise mit benutzt wird -- und dabei ständig mit derartigen Texturgrößen umgehen muss. Interessant dürfte auch sein, inwieweit OpenGL-2-Features angesichts von Core Image (für OS X 10.4 angekündigt) für das System-GUI relevant sind. Solange die Fenster von 10.4 nicht gerade im Fell-Look daherkommen... Andererseits wird die aktuelle Implementierung von OpenGL an sich immer wieder bemängelt, sodass grundlegende Nachbesserungen möglicherweise wesentlich wichtiger wären als die schnellstmögliche Implementierung der zusätzlichen OGL-2.0-Features. Da bis zu einer 10.4-Veröffentlichung aber noch rund ein Dreivierteljahr ins Land gehen dürfte, bringt Apple ja vielleicht beides hin.

Kommentare

Spielehersteller

Von: jamesp.Sullivan | Datum: 11.08.2004 | #1
Mal deren reaktion abwarten. Ob das endlicch mehr Spiele auf den Mac bringt, als bisher? Versprochen wird es ja immer. Ich bin zwar nicht geswitched, um zu spielen, aber es ist nunmal eine nette Abwechslung. Und deshalb wäre es angenehm, eine größere Auswahl zu haben...

Warum sollte das mehr Spiele bringen?

Von: dermattin | Datum: 11.08.2004 | #2
Der Unterschied zu DirectX besteht doch weiterhin oder nicht? Also alles wie gehabt, so lange sich Firmen für M$ bücken, wird deren Kurzsichtigkeit dem Mac wenig Spiele bescheren.

@ Autor

Von: icedieler | Datum: 11.08.2004 | #3
Könntest du in deinem Beitrag bitte das englische Wort "Implementation" durch das deutsche "Implementierung" ersetzen!

Mich schauert's immer wenn ich solche Sachen lesen und hören muss.

Apple im Konsortium

Von: Tobsen | Datum: 11.08.2004 | #4
Nachdem Apple stimmberechtigt ist bei OpenGL würde mich es wundern, wenn sie nicht schon damit angefangen hätten es zu implementieren.

und mich schaudert´s erst...

Von: dudu | Datum: 11.08.2004 | #5
wenn ich lesen darf, das ein Schnulli mit dem Namen ICEDIELER sich über Anglizismen aufregt....
flo: keep up the good work!
:)

Moin icedieler

Von: flo (MacGuardians) | Datum: 12.08.2004 | #6
Da hast du völlig recht und ich habe es geändert.

Bringt uns das was?

Von: cool.filu | Datum: 12.08.2004 | #7
Eine vielleicht etwas laienhafte Frage:
Kann die das neue OpenGL Softwaremäßig integriert werden, oder brauchen wir schon wieder bald neue Hardware, bzw. Grafikkarten?

Habe eine ATI Mobility Radeon 9700 Grafikprozessor mit 128MB in meinem PB.

Naja.

Von: Phileas | Datum: 12.08.2004 | #8
Naja, es war doch eher eine freundliche Bitte das Wort zu ändern und keine Kritik an Flos guter Arbeit.

Zum Thema:

Man hört schon seit Jahren:
"Hoffentlich werden jetzt mehr Spiele für den Mac umgesetzt."

Sollte was bringen (@cool.filu)

Von: flo (MacGuardians) | Datum: 12.08.2004 | #9
Das interessante an OpenGL ist ja vor allem die Shading Language, mit der man also komplexe Berechnungen an die programmierbaren Einheiten der Grafikkarte (die es ja schon lange gibt) weitergeben kann. Sobald also für jetzige oder auch ältere Karten ein passender Treiber vorhanden ist, könnten imho auch heutige Karten (oder welche voriger Generationen) von OGL 2 profitieren, denn Shader haben sie ja schon lange.

Frage ist natürlich, ob ATI und Co. das machen werden (denn in erster Linie wollen die ja Karten verkaufen).

Inwieweit man für OGL2 auch die tatsächliche Hardware anpassen muss, ist mir nicht bekannt, aber ich denke nicht, dass das nötig ist, im Falle der 9800, die immerhin schon OGL-1.5-fähig ist, zum Beispiel ganz sicher nicht. Die 9700er würde ich auch dazu rechnen.

Möglicherweise bieten die Grafikkartenvoraussetzungen für Apples Core Image einen Anhaltspunkt (siehe Link im Artikel). Demnach würde alles runter bis zur 9600er und bei nVidia runter bis zur 5200er funktionieren... Ob da jedoch ein Zusammenhang besteht, ist pure Spekulation meinerseits.

Bei der Spieleproduktion bildet OGL nun prinzipiell einen verstärkten Anreiz, da mit der HLSL nun eigentlich alles zur Verfügung steht (bis auf die passenden Treiber ;), um die modernen Grafikkarten voll auszunutzen. Trotzdem programmieren natürlich viele schon jahrelang auf DX, und Umstellungen kosten Geld und Nerven (zudem werden Grafik-Engines auch nicht jeden Tag komplett neu geschrieben). OGL 2 positioniert sich also prinzipiell besser, aber der Umstieg ist halt immer noch ein Wagnis. Allerdings muss man auch sagen, dass der Umstieg von DX-Version zu DX-Version auch nicht immer ganz ohne ist, da MS gerne an den APIs rumfummelt und man so oft ganz andere Wege gehen muss, will man auf eine neue DX hin programmieren. Insofern könnte sich OGL mittel- und langfristig für Neuproduktionen anbieten...

alles imho ;)

In einer älteren c't hab ich mal gelesen...

Von: Marcel_75 | Datum: 12.08.2004 | #10
...dass selbst Profi-OpenGL Karten nicht so gut zum zocken geeignet sind wie "normale" Consumer-Grafikkarten.

Und ich glaube mich zu erinnern, dass die c't in diesem Zusammenhang auch erwähnte, dass DirectX grundsätzlich besser/einfacher zu programmieren ist wenn es um Effekte in Games geht. OpenGL macht vieles genauer und besser, ist aber umständlicher zu handhaben und auch langsamer.

Kann das in etwa jemand bestätigen?