Seite 1 von 1

OpenGL / GLSL unter Qt4

Verfasst: 7. November 2005 14:34
von heikob
Hallo,

gibt es eine Möglichkeit, direkt in einem Qt Programm Shader Programme (GLSL) auszuführen? Die Verwendung von OpenGL ist ja unproblematisch möglich. Das praktiziere ich mittlerweile. Leider habe ich im Netz bisher nichts darübergefunden.

Kann ich die bekannten Bibliotheken wie beispielsweise Glut in meinem Projekten verwenden? Meiner Meinung nach geht das nicht, aber ich lasse mich gerne eines besseren belehren.

Gibt es hier jemand, der mit dieser Kombination (Qt/GLSL) Erfahrung hat und mir auf die Sprünge helfen bzw. den Link zu einem Tutorial geben kann?

Vielen Dank
HeikoB

Re: OpenGL / GLSL unter Qt4

Verfasst: 12. November 2005 19:01
von #pfo
heikob hat geschrieben:Hallo,

gibt es eine Möglichkeit, direkt in einem Qt Programm Shader Programme (GLSL) auszuführen? Die Verwendung von OpenGL ist ja unproblematisch möglich. Das praktiziere ich mittlerweile. Leider habe ich im Netz bisher nichts darübergefunden.B
fein. Qt oder irgendeine anderes Toolkit hat nicht die geringste Verbindung mit GLSL. Vertex/Fragment Programme stecken im OpenGL code.
heikob hat geschrieben: Kann ich die bekannten Bibliotheken wie beispielsweise Glut in meinem Projekten verwenden? Meiner Meinung nach geht das nicht, aber ich lasse mich gerne eines besseren belehren.
Du solltest noch einmal die Dokumentation zu QGL nachlesen.
heikob hat geschrieben: Gibt es hier jemand, der mit dieser Kombination (Qt/GLSL) Erfahrung hat und mir auf die Sprünge helfen bzw. den Link zu einem Tutorial geben kann?
Offensichtlich suchst du nach Anfänger tutorials/Bücher. Empfehlenswert sind das Red, Orange und Blue Book, sprich: OpenGL Programming Guide, OpenGL Shading Language und OpenGL Reference.

Verfasst: 13. November 2005 13:06
von heikob
Vielen Dank für deinen konstruktiven Beitrag. Selbstverständlich habe ich die von dir angegebene Grundliteratur zu dem Thema (Red-, Blue- und Orangebook) bereits zu rate gezogen.

Zum Anderen ist es mir durchaus bewusst, dass Qt OpenGL und GLSL nicht ersetzt. Allerdings sollte, wenn man GLSL unter Qt normal verwenden könnte, folgendes funktionieren. (Das stammt übrigens aus dem Orangebook):

Code: Alles auswählen

GLhandleARB brickVS;
brickVS = glCreateShaderObjectARB(GL_VERTEX_SHADER_ARB);
Jetzt wird es aber interessant. Der Datentyp GLhandleARB stellt noch kein problem dar. Dieser ist noch bekannt. Allerdings führt die Funktion glCreateShaderObjectARB(GL_VERTEX_SHADER_ARB) zu folgendem Fehler:

'glCreateShaderObjectARB' was not declared in this scope

Und möchte ich eigentlich nur wissen, wieso das nicht funktioniert und wie ich Qt dazu bringen kann, dass ich überhaupt die Möglichkeit habe einen Shader in mein Programm einzubinden.

Verfasst: 13. November 2005 16:37
von BartSimpson
dann schätze ich mal unterstützt deine OpenGL lib das nicht, die du benutzt. Oder du must noch was includieren.

Verfasst: 13. November 2005 18:43
von #pfo
BartSimpson hat geschrieben:dann schätze ich mal unterstützt deine OpenGL lib das nicht, die du benutzt. Oder du must noch was includieren.
so ist es, es eine frage der include files die bei deinen treibern dabei sind, der libs also der OpenGL ICDs.