OpenGL 4.0

@ikarus_can_fly:
Tut mir leid. Mein Beitrag bezog sich auf Rollora. Dass ich dich zitiert habe, hatte ich leider nicht beachtet. Ich habe oberes mal leicht verändert und mit Zusatz versehen.
 
@Rollora

Wie du schon bemerkt hast gab es vieles halt nur als Extension für OpenGL. Das machte das Programmieren damit nicht unbedingt einfacher. Man musste jedes Feature einzeln prüfen. Sowas ist Fummelarbeit. Und dann dauerte es halt auch immer etwas bis eine Extension rauskam die dann von allen IHVs unterstützt wurde.
Also geht es weniger darum, dass nicht die gleichen Features möglich waren sondern, dass diese umständliche anzusprechen waren. BTW Hardware-Tesselation (nicht TruForm) ist auch heute noch nicht mit OpenGL möglich so wie sie DirectX 11.


TruForm wird wie gesagt schon lange nicht mehr unterstützt. Nach der 8500er konnte die 9000er es nur noch in Software und ab der X1000er Serie war das Feature AFAIR schon wieder verschwunden. Es war einfach zu unflexibel.
Die Idee hinter der "neuen" Hardware-Tesselation ist zwar ähnlich hier ist die Sache wesentlich flexibler gestaltet. Somit sieh nicht alles mehr aus wie ein aufgeblasener Luftballon wie ihn TruForm bot. Außerdem war TruForm damals nur von einigen ATI-Karten supported und das neue ist herstellerunabhängig - ein gewaltiger Fortschritt.
Naja, dass es heute Flexibler ist stimmt natürlich. Aber dann auch wieder nicht. Die 9700er Generation zum Beispiel bot Displacement Mapping und Tesselation (wurde damals halt für die Werbung TruForm genannt, ist aber halt Tesselation) und das moderne Tesselation ist im Prinzip dasselbe (also Displacement Mapping mit Tesselation realisiert). Insofern wurde es nur geringfügig weiterentwickelt und dann halt als Vorraussetzung eingeführt.
Nvidia hatte glaub ich damals schon sowas ähnliches wie N-patches aber naja. Wie damals schon alle Entwickler meinten: zum reinen Polygonvervielfachen taugt es nichts, weil man das ja gleich bei den Figuren machen könnte. Deshalb kam Tesselation ja auch nie groß raus (außer jetzt, jetzt wirds groß beworben als DIE Neuerung).
Du hast recht, die X800 und X18/19xx Generation konnte es nicht, die HD Generation beherrscht schon das heutige Tesselation. Damals wurde es auch nicht mehr TruForm genannt, sondern eben Tesselation. Da dieser (R600RV670RV770 und RV870) Chip auf dem Xenos (Xbox) beruht, ist die heutige Interpretation von Tesselation also in der Form wie sie in DX11 kommt nicht 10 sondern nur 5 Jahre alt. Ok meinetwegen. Ein alter Hut ist es trotzdem ^^.
 
Ein alter Hut ist es trotzdem ^^.
... den es auch schon für DirectX gab. Also Feature-mäßig nehmen sich beide nichts. Nur lässt sich DirectX leichter programmieren meinen einige (kann selber nur OpenGL).

Und es gibt eine Funktion, um alle auf den PC vorhandenen Windowserweiterungen zu ermitteln. Doch diese Funktion ist selber eine Windowserweiterung, was heißt: Ich muss zuerst die Funktion verwenden, um herauszufinden, ob genau diese eben verwendete Funktion existiert und dann kann ich mir erst die Funktion holen und verwenden. :ugly:
Und falls du jetzt meinst, das kann nicht sein: genau auf diesen PC hier existiert diese Erweiterung nur in der Liste der Windowserweiterungen [es gibt noch eine für OpenGL selber, aber da ist die nicht drin :P ].
So viel übrigens zur Plattformunabhängigkeit, ohne spezielle Windows-Funktionen würde das gar nicht unter Windows laufen/angezeigt werden, so würde es wohl auch unter Linux sein, dafür habe ich aber nie entwickelt. ;)
Ein Glück gibt es GLUT von 1998/2000. :D
Welche Extension meinst du denn? Achso die Linux-Varianten zu den WGL-Extensions fangen mit GLX an und ist quasi das gleiche.
Für die Nutzung von Extensions nutzt man aber besser ne Library wie GLew - damit hat man dann quasi keine Probleme mehr und man muss sich nicht erst die Functionpointer besorgen und damit den Code unnötig unübersichtlich machen.

GLUT ist allerdings total veraltet (also halt für OpenGL aus der Pre-3.0-Ära). Man kann ja IMO keinen 3.0 Context erstellen. Also entweder wieder per WGL-Extension anfordern (wglCreateContextAttribsARB()) oder die beta von SDL 1.3 nehmen (gibts im offiziellen OpenGL Wiki ein Beispiel zu).
 
Welche Extension meinst du denn? Achso die Linux-Varianten zu den WGL-Extensions fangen mit GLX an und ist quasi das gleiche.
Für die Nutzung von Extensions nutzt man aber besser ne Library wie GLew - damit hat man dann quasi keine Probleme mehr und man muss sich nicht erst die Functionpointer besorgen und damit den Code unnötig unübersichtlich machen.

GLUT ist allerdings total veraltet (also halt für OpenGL aus der Pre-3.0-Ära).

WGL_ARB_extensions_string ermoeglicht die Nutzung von wglGetExtensionsStringEXT bzw. wglGetExtensionsStringARB. Aber WGL_ARB_extensions_string steht halt nicht zwangsweise in der Liste von glGetString(GL_EXTENSIONS) sondern man muss eine der beiden oberen Funktionen verwenden, da es nun einmal eine Windowserweiterung ist. Zum Glück gibt es den Funktionspointer auch so. :D

Ansonsten könnte GLEW das Extension-Leben wirklich verbessern, das werde ich mir mal merken. Danke. :)
 
Ich dachte Konsolen arbeiten mit DX9?
Die Grafikhardware ist in etwa auf dem technischen Stand der DX9c Karten. Das bedeutet aber noch lange nicht dass sie über diese Schnittstelle angesprochen wird.
Ich habe zwar D3D noch nie richtig genutzt aber seit OpenGL 3 ist es eigentlich sehr einfach damit zu hantieren. Das mit der Zertifizierung der Treiber wäre aber womöglich echt mal sinnvoll - wobei mittlerweile zwischen Windows und Linux OGL-Treibern kein allzugroßer Unterschied mehr besteht. Da werden wohl große Teile wiederverwendet.
Was ich noch so an Entwicklerstimmen vom OGL 3 Release im Kopf habe klang da ganz anders. Zu aufgepumpt, zu uneinheitlich und zu schwerfällig sei es geworden hieß es damals. Ohne ein MS der mal sagt "das ist jetzt Standard und haltet ihr euch gefälligst dran" hat man einfach munter zig Implementierungsmöglichkeiten parallel erlaubt die jeweils nicht von jeder Hardware ideal unterstützt werden.

Nein werden sie nicht.
Open GL gibt es länger als Direct X. Open GL war immer die "modernere" Version der beiden, es gab unter Open GL eigentlich immer mehr und bessere Features (und mehr Freiheiten) als in Direct X. Und dennoch gingen alle Entwickler zu DX. Und das wird OGL4 nicht aufhalten
Zumindest seit DX10 ist das definitiv nicht mehr der Fall. Sicher kann man neue Features immer recht schnell über extensions nutzen. Herstellerübergreifende Implementierungen lassen dafür aber um so länger auf sich warten.

Vielleicht ist bei OGL 4 jetzt ja mal wieder eine eindeutigere Linie gelungen, dann würden sich vielleicht auch wieder mehr Entwickler darüber Gedanken machen Engines damit aus zu rüsten.
 
Mein XP läuft flüssig und schnell und ich brauch kein Windows 7 oder gar Vista.

Wow! :ugly:

Dann läuft dein XP ja mit 32bit nur, max. 2 GB Ram pro Anwendung, ohne DX11, ohne SSD Unterstützung, 25% langsameren Transpherraten mangels HD Caching, mit max. 300 Mbit statt 1 Gbit Netzwerkschrottprotokoll, mangelhafter Mulitcoreunterstützung und miesester Usebillity.:daumen2:

So jetzt stürz Dich auf usebillity! :lol:...sonst müsstst womöglich noch zum anderen Stellung nehmen... :lol:
 
Was ich noch so an Entwicklerstimmen vom OGL 3 Release im Kopf habe klang da ganz anders. Zu aufgepumpt, zu uneinheitlich und zu schwerfällig sei es geworden hieß es damals. Ohne ein MS der mal sagt "das ist jetzt Standard und haltet ihr euch gefälligst dran" hat man einfach munter zig Implementierungsmöglichkeiten parallel erlaubt die jeweils nicht von jeder Hardware ideal unterstützt werden.
Die Kritik betraf damals vorallem das Fallenlassen der Umstellung von einer Zustandmaschine hin zu einem Objekt basiertem Modell. Das macht die Arbeit in Multi-Threading Anwednungen wohl unnötig umständlich.
Das Problem bleibt natürlich weiterhin aber da ich DX nicht beherrsche kann ich dazu keine Aussage treffen.

@Zulu5@recode.me

das Ding heißt Usability - kommt wohl von ability. Nix mit Billy. :D
 
Wow! :ugly:

Dann läuft dein XP ja mit 32bit nur, max. 2 GB Ram pro Anwendung, ohne DX11, ohne SSD Unterstützung, 25% langsameren Transpherraten mangels HD Caching, mit max. 300 Mbit statt 1 Gbit Netzwerkschrottprotokoll, mangelhafter Mulitcoreunterstützung und miesester Usebillity.:daumen2:

So jetzt stürz Dich auf usebillity! :lol:...sonst müsstst womöglich noch zum anderen Stellung nehmen... :lol:
XP läuft auf vielen Computern noch viel schneller als Win 7. Deshalb lohnt es sich für viele nicht umzusteigen.
Außerdem erzählst du absoluten Blödsinn.
Erstens gibts von XP auch eine 64 Bit Version, zweitens unterstützt selbst die 32 Bit Version mehr als nur die von dir propagierten 2GB Ram, drittens wird meine SSD super unterstützt, viertens funktioniert mein 1Gbit LAN komischerweise wirklich mit 1 Gbit, die Multicoreunterstützung ist auch nicht so viel schlechter (Multicorebenchmarks laufen bei mir auf XP sogar minimal schneller), die Usability ist nicht besonders viel anders, vorallem nicht wenn man Shortcuts verwendet.... du laberst also totalen Müll
Was hinzu kommt und weshalb ich immer noch Win XP benutzen "muss": Die Kompatibilität zu vieler meiner alten Programme/Spiele ist nicht vorhanden bei Vista/Win 7.
Der Sound meiner Audigy 2 ZS klingt in Spielen bei XP viieeeel besser, weil funktionierendes EAX vorhanden ist. Kommt mir jetzt bitte keiner mit Aalchemy, das ist kein Ersatz...
 
...Was hinzu kommt und weshalb ich immer noch Win XP benutzen "muss": Die Kompatibilität zu vieler meiner alten Programme/Spiele ist nicht vorhanden bei Vista/Win 7...

Nur zu diesem Punkt habe ich da eine Frage an Dich...:huh:

Hast Du mal vesucht diese (ich nenn sie jetzt mal) Problem-Programme, per Win 7 im Kompatiblitäts Modus zu starten? So läßt sich Win 7 bis zu Win95 runterkastrieren...

Den Rest stelle ich nicht in Frage...
 
Das hört sich im Phoronix-Forum ganz anders an. Man geht aufgrund der steigenden Marktmacht von Apple davon aus, dass Plattformunabhängigkeit wieder wichtiger wird - siehe Valves Ansatz mit der Source-engine Portierung auf OGL. In den USA gibts halts wirklich Leute die sich so ne komischen Macs kaufen und auch in Europa werdens immer mehr. Wenn sie weiterhin so am Ball bleiben, dann könnte es vielleicht doch noch was werden.
Ich habe zwar D3D noch nie richtig genutzt aber seit OpenGL 3 ist es eigentlich sehr einfach damit zu hantieren. Das mit der Zertifizierung der Treiber wäre aber womöglich echt mal sinnvoll - wobei mittlerweile zwischen Windows und Linux OGL-Treibern kein allzugroßer Unterschied mehr besteht. Da werden wohl große Teile wiederverwendet.

Ein EA-Phenomic Mitarbeiter sagt das z.B., lies dir das mal durch, von ihm hab ichs, das die Plattformunabhängigkeit mehr ein Märchen/Propaganda ist.
Und da moderne Engines eh Multiapi sind, setzt man unter Windows besser gleich auf D3D, das funktioniert idR!
 
Hast Du mal vesucht diese (ich nenn sie jetzt mal) Problem-Programme, per Win 7 im Kompatiblitäts Modus zu starten? So läßt sich Win 7 bis zu Win95 runterkastrieren...
Das war natürlich das erste was ich versucht habe, also:jap habe ich. Bei manchen hats dann geklappt (diese sind dann aber nicht mehr in der Kategorie "Problemprogramme") bei den meisten eigentlich nicht.
Und wie gesagt auch manche Spiele nicht - leider. Und die kann ich dann nichtmal Virtuell starten, weil sie 3D Support brauchen.
 
Das war natürlich das erste was ich versucht habe, also:jap habe ich. Bei manchen hats dann geklappt (diese sind dann aber nicht mehr in der Kategorie "Problemprogramme") bei den meisten eigentlich nicht.
Und wie gesagt auch manche Spiele nicht - leider. Und die kann ich dann nichtmal Virtuell starten, weil sie 3D Support brauchen.

Nur so aus Neugier...Welche Prog...bzw Spiele laufen nicht...Nicht das ich es bezweifel

Ich benutze zB Win 7 Pro x64...und ich zocke manchmal noch Doom1 / 2 (aber mit der original Doom95.exe doch ohne einen Kompatibitäts Modus)
 
Ein EA-Phenomic Mitarbeiter sagt das z.B., lies dir das mal durch, von ihm hab ichs, das die Plattformunabhängigkeit mehr ein Märchen/Propaganda ist.
Und da moderne Engines eh Multiapi sind, setzt man unter Windows besser gleich auf D3D, das funktioniert idR!
Das haben du und Exxtreme (auch ausm 3DC Forum) ja auch schon bemängelt - also dass es kein WHQL-Equivalent gibt. Das stimmt natürlich. Naja ich werds merken bei meiner Studienarbeit wie gravierend das Problem ist. :D

@ikarus_can_fly

Anno 1602 Königsedition hab ich bspw. nicht zum Laufen bekommen.
 
Schau in dem Thread doch mal, was z.B. Coda gesagt hat.
Er sagte, dass streng genommen jeder Treiber eine eigene Plattform ist, mit eigenen Eigenschaften.
 
Schau in dem Thread doch mal, was z.B. Coda gesagt hat.
Er sagte, dass streng genommen jeder Treiber eine eigene Plattform ist, mit eigenen Eigenschaften.
Jojo ich hab das gelesen. :)
Man glaubt sowas halt nur kaum wenn mans nicht selbst erlebt hat aber Bullshit werden sie schon nicht erzählen. Ist halt eigentlich nur ein Unding - denn der Sinn eines Standards ist das nunmal nicht. Aber ist ja mit Programmiersprachen ähnlich - jeder Compiler macht manche Sache anders als andere. Mein Prof für Theorie der Programmiersprachen hat mehrfach diese informalen Spezifikationen bemängelt gerade weil sie halt so uneindeutig sind.
 
Schau in dem Thread doch mal, was z.B. Coda gesagt hat.
Er sagte, dass streng genommen jeder Treiber eine eigene Plattform ist, mit eigenen Eigenschaften.

Das stimmt so aber nicht. Die Graka Treiber sind unter Windows/Linux sowohl bei Ati als auch bei nVidia zu über 90% identisch (Quelle: Phoronix), und die Unterschiede belaufen sich eigentlich blos auf solche Sachen wie Treiber <--> Kernel, .... Bei der OpenGL Implementation gibt's kaum Unterschiede.
Auch die Sourcen von OpenSource Crossplatform Engines enthalten kaum ifdefs für die unterschiedlichen Plattformen..
Btw.. Titel der zukünftig auch auf OpenGL setzen werden: Rage, Doom4.
 
Das stimmt so aber nicht. Die Graka Treiber sind unter Windows/Linux sowohl bei Ati als auch bei nVidia zu über 90% identisch (Quelle: Phoronix), und die Unterschiede belaufen sich eigentlich blos auf solche Sachen wie Treiber <--> Kernel, .... Bei der OpenGL Implementation gibt's kaum Unterschiede.
Auch die Sourcen von OpenSource Crossplatform Engines enthalten kaum ifdefs für die unterschiedlichen Plattformen..
Btw.. Titel der zukünftig auch auf OpenGL setzen werden: Rage, Doom4.
1. Es heißt ja nicht Catalyst Linux != Catalyst Windows, sondern vorallem nVidia OpenGL != ATI OpenGL. Und dann kommen ja noch die MacOS Implementationen hinzu bei denen ich nicht weiß wieviel Code identisch ist.


2. Rage nutzt Direct3D für die Engine:*** Software to shun Linux, OpenGL with Rage - The Tech Report[/url] aber das hat John Carmack AFAIR klar gemacht nachdem OpenGL 3.0 die große Flop wurde. Doom4 nutzt glaub ich die gleiche Engine
 
1. Es heißt ja nicht Catalyst Linux != Catalyst Windows, sondern vorallem nVidia OpenGL != ATI OpenGL. Und dann kommen ja noch die MacOS Implementationen hinzu bei denen ich nicht weiß wieviel Code identisch ist.


2. Rage nutzt Direct3D für die Engine:*** Software to shun Linux, OpenGL with Rage - The Tech Report[/URL] aber das hat John Carmack AFAIR klar gemacht nachdem OpenGL 3.0 die große Flop wurde. Doom4 nutzt glaub ich die gleiche Engine

1. Interessant das dann gerade kleine Spiele ohne jemals auf einer anderen Karte getestet worden zu sein auf anderen Karten laufen... Auch find ich bei der Darkplaces Engine z.B. noch weniger Unterschiede für die einzelnen Karten/OpenGL Implementationen..
2. Es erscheint aber trotzdem für Linux. Also wird's wohl zumindest nen OpenGL Renderpfad bekommen. Da deine Quelle aber sagt, dass es keinen Linuxclient geben wird, zeigt nur eins: Die ist hoffnungslos veraltet. Es wird mit sehr hoher Wahrscheinlichkeit einen Linuxclient geben ( [Phoronix] Good News, id Tech 5 Is Likely Coming To Linux auch wenn ich von Phoronix wenig bis nichts halte (Gerüchteküche..), ein direktes Zitat werden selbst die wohl kaum falsch bringen).

Edit: Und mir ging's/geht's hier auch nicht darum hier groß rumzuflamen. Aber in dem Thread stehen einfach so viel Unwahrheiten, da konnt ich mich nicht zurückhalten (OpenGL ist NICHT unterlegen, ...). Ansonsten hat jede API ihre Vor-/Nachteile, und was man aus der API rausholt ist allein vom Programmierer abhängig.
 
Zuletzt bearbeitet:
Das stimmt so aber nicht.
Doch, das stimmt.

Demirug ist sehr glaubwürdig, ScottmanDeath hat auch früher viel mit OpenGL gearbeitet.

Es gibt in dem Thread auch noch die Aussagen von einem AutoCAD Menschen.

Schau mal was Autocad zu OGL sagt, es ist schon ziemlich heftig, wenn ein Hersteller, der das ehemals verwendete auf der Website öffentlich sagt, das man OGL gedropt hat, wegen Stabilitäts und Qualitäsproblemen (sprich man weiß nie genau, was dabei rauskommt bzw wie sehr sich die Bilder unterscheiden, bei D3D weiß mans, das ist besser spezifiziert und wird auch überprüft).


Und dieses PDF ist auch äußerst heftig!

Da sagt ein Autocad Entwickler ganz klipp und klar, das D3D einfacher ist, denn wenn was nicht läuft, kann man sich sicher sein, selbst Mist gemacht zu haben, das ist bei OGL anders, wo ein Großteil der Ressourcen für Zertifizierungen von Treibern draufgehen - bei D3D ists auch egal, ob du eine Consumer oder Profi GraKa nutzt, was wiederum schlecht für nVidia ist, da sie dann die sau teuren Quadros nicht mehr verkaufen könnten...
 
Doch, das stimmt.

Demirug ist sehr glaubwürdig, ScottmanDeath hat auch früher viel mit OpenGL gearbeitet.

Es gibt in dem Thread auch noch die Aussagen von einem AutoCAD Menschen.

Schau mal was Autocad zu OGL sagt, es ist schon ziemlich heftig, wenn ein Hersteller, der das ehemals verwendete auf der Website öffentlich sagt, das man OGL gedropt hat, wegen Stabilitäts und Qualitäsproblemen (sprich man weiß nie genau, was dabei rauskommt bzw wie sehr sich die Bilder unterscheiden, bei D3D weiß mans, das ist besser spezifiziert und wird auch überprüft).


Und dieses PDF ist auch äußerst heftig!

Da sagt ein Autocad Entwickler ganz klipp und klar, das D3D einfacher ist, denn wenn was nicht läuft, kann man sich sicher sein, selbst Mist gemacht zu haben, das ist bei OGL anders, wo ein Großteil der Ressourcen für Zertifizierungen von Treibern draufgehen - bei D3D ists auch egal, ob du eine Consumer oder Profi GraKa nutzt, was wiederum schlecht für nVidia ist, da sie dann die sau teuren Quadros nicht mehr verkaufen könnten...

Dann frag ich mich aber.. wieso gibts Hersteller die das Können? Ham dies einfach nur drauf oder können/wollen die anderen nicht? Nur weil ein paar Hersteller jetzt mal ihre Meinung geändert haben?


Ich will ja nicht sagen das Direct3D/X schlecht ist (was es ja auch nicht ist und ich auch nie gesagt habe), aber fakt ist, dass OpenGL nicht schlechter ist. Wie schon gesagt, jede API hat ihre Vor- und Nachteile. Blos weil du jetzt einige Entwickler genannt hast, die sagen das OpenGL auch wirklich schlecht ist, heißt es noch lange nicht, dass OpenGL schlecht ist. Ich kann dir z.B. auch Entwickler (Zitate) suchen, die sagen das Direct3D/X schlecht ist und OpenGL das Non-Plus-Ultra ist. Wer hat recht? KEINER! Jede API hat ihre Vor-/Nachteile. Ist einfach so. Jeder der das neutral betrachtet wird zu diesem Schluss kommen.
 
Zurück