FAQ: Modernes OpenGL mit OpenGL 3.x
-
Es funktioniert schon mit einem Core-Context. Allerdings kommt wie gesagt die Warnung. Die Treiber sind da sehr kulant was glGetString angeht. Aber es sind auch Funktionen falsch benannt. So haben alle glFramebuffer-Funktionen noch das EXT hinten dran, was einfach falsch ist. Es ist im Core. Erbsenzählerei? Vielleicht. Aber wenn sich das Ding nicht an Standards hält, dann is das ein Problem.
-
Mir ist das ganze Ding um die Ohren geflogen, weil glGetString(GL_EXTENSIONS) einen Nullpointer zurückliefert. Ich verwende die 270.41.06 NVidiatreiber, und ein Forward Compatible Context.
Oh, und ein Nachteil hat gl3w: da die S3TC/DXT-Formate nie in den Kern aufgenommen wurden, sind sie nicht #definiert, das muss man selbst nachziehen. Sind aber nur 4 Defines, was das ganze leicht fixbar macht.
-
4 defines sind nicht wild. Die x/wgl Funktionen fehlen auch. Allerdings ist es die einzig wirklich brauchbare OpenGL3 Lib für diesen Zweck atm.
-
Die x/wgl-Funktionen sind idR aber eher nur im Sourcecode von Libraries wie SDL und GLFW brauchbar. Direkt verwendet man sie kaum, am ehesten für PBuffer zB.
-
Soll der Thread hier eig. gepinnt oder in die Spiele-FAQ verschoben werden? Ich kann's zwar selbst nicht machen, würd aber dann 'nen Mod/Admin anhauen
Wär ja schade, wenn er untergehen würde.
-
GPC schrieb:
Soll der Thread hier eig. gepinnt oder in die Spiele-FAQ verschoben werden? Ich kann's zwar selbst nicht machen, würd aber dann 'nen Mod/Admin anhauen
Wär ja schade, wenn er untergehen würde.Auf jeden Fall.
Ich hatte diesen Beitrag vor einiger Zeit entdeckt, aber keine Zeit gehabt mich damit zu beschäftigen. Jetzt musste ich schon danach suchen.
(Und ich wusste den Titel nicht mehr)
-
GPC schrieb:
Soll der Thread hier eig. gepinnt oder in die Spiele-FAQ verschoben werden? Ich kann's zwar selbst nicht machen, würd aber dann 'nen Mod/Admin anhauen
Wär ja schade, wenn er untergehen würde.Bitte nur pinnen, denn OpenGL hat ja nicht zwangsläufig etwas mit Spielen zu tun.
OpenGL kann man auch ganz gut für ernsthafte 3d Visualisierungen gebrauchen und dann ist das anpinnen im Forum Grafikprogrammierung schon richtig und Spiele-FAQ eher fehl am Platz.
-
ins FAQ zu verschieben ist eher eine bestraffung fuer einen thread, mir scheint es als ob dort seltener geschaut wird als das leute hier die suche verwenden.
sticki fuer die threads, wie damals fuer den guten terrain rendering thread usw. will ich eher nicht vergeben, weil es die ersten x-zeilen mit selten gelesenem zeug "zumuellt" (wenn ich das hier sticki mache, muesste ich der fairheit halber sehr viele andere threads sticky machen).
ich werde einen thread sticki machen mit indices die auf sowas wie das hier verlinken.
-
Hi,
ist da irgendein Sinn vorhanden, dass in GL3w kein GL_QUAD zum Zeichnen definiert ist?
-
Und was ist jetzt der Unterschied zu OpenGL 4.0?
-
Andreas XXL schrieb:
ist da irgendein Sinn vorhanden, dass in GL3w kein GL_QUAD zum Zeichnen definiert ist?
Vielleicht, weil es seit OpenGL 3 nicht mehr unterstützt wird. Hast du dir mal die Spec. angeschaut? QL_QUAD ist departched. Und das schon seit ein paar Jahren --> also einer Ewigkeit für Softwareentwickler.
Keine OpenGL >= 3 Grafikkarte muss GL_QUAD unterstützten. Verwendest du es heutzutage noch dann ist es nicht Garantiert, dass dein Programm auf einen aktuellen Rechner läuft.
-
Eine Einführung in OpenGL 4.2: http://rastergrid.com/blog/2011/08/an-introduction-to-opengl-4-2/
Ein Vergleich von OpenGL 3,4 und DirectX 10,11: http://rastergrid.com/blog/2011/10/opengl-vs-directx-the-war-is-far-from-over/
-
Ein C++-wrapper für OpenGL 3 und höher: http://oglplus.org/html/index.html
Find ich super wenn man keine Lust auf das C-Interface hat. Und die examples dabei sind auch sehr hübsch.
-
-
dv_ schrieb:
Im Übrigen kann man auch http://www.glfw.org/ als Alternative zu SDL 1.3 einsetzen; GLFW 2.7 unterstützt auch OpenGL 3.x Contexterzeugung.
Das sollte man oben erwähnen, da GLFW moderner als GLUT und leichtgewichtiger als SDL ist.
-
Folien von Valve zu deren Erfahrung mit OpenGL und dem Linux-Port von Source: Porting Source to Linux (pdf)
-
Sehr interessant zu lesen, danke rüdiger.
-
Das verstehe ich nicht:
1. Create a window (don’t show)
2. Create a context
3. Query for window-specific extensions
4. Create another window (this will be the application window)
5. Create a context using extension function from step 3.
6. Destroy Context from step 2.
7. Destroy window from step 1.Wozu das 2. Fenster? Man kann doch einfach wglMakeCurrent mit dem neuen Kontext aufrufen und den alten dann zerstören? Oder wie?
-
Was ist denn jetzt der beste Weg einen OpenGL Contex zu erzeugen(natürlich nicht für diese alte Version sondern ab 3.x) Wir hatten hier SDL1.3, Glfw und gl3w wenn ich das recht verstanden haben?
Was nutzt ihr eigentlich wenn ihr das aktuelle OpenGL in Java nutzen wollt?
-
...