我想找到所有在GLSL中的NeHe的Qt教程。因爲讓我們面對它,過去的OpenGL已經死了,着色器是現在唯一的方法。在Qt-4.6中,他們引入了QMatrix4x4,QVector3和Shader類。但我找不到任何教程。Qt 4.6 OpenGL GLSL
我發現的所有這些,都使用蹩腳的SDL和/或GLUT(這些只是普通的無用)。
我想找到所有在GLSL中的NeHe的Qt教程。因爲讓我們面對它,過去的OpenGL已經死了,着色器是現在唯一的方法。在Qt-4.6中,他們引入了QMatrix4x4,QVector3和Shader類。但我找不到任何教程。Qt 4.6 OpenGL GLSL
我發現的所有這些,都使用蹩腳的SDL和/或GLUT(這些只是普通的無用)。
在語言和GUI框架之間移植OpenGL代碼不應該更改代碼。例如,當從GLUT移動到Qt時,將GLUT的整形代碼移動到QGLWidget的resizeGL函數中,並將GLUT的顯示函數移動到QGLWidget的paintGL函數中。除了安裝的東西外,這是從GLUT到Qt的最大變化。
除此之外,所有事情都在很少的獎金公用事業和班級上。當你需要時,你基本上必須找一個班。像「我要使用着色器,所以讓我們看看Qt是否有任何助手類」。你可以找到一個名爲QGLShader的類,它似乎很有幫助,但是它沒有任何文檔,所以你應該嘗試另一個可能有像QGLShaderProgram這樣的文檔的類。
http://doc.trolltech.com/4.6/qglshaderprogram.html#details
跳下的細節它給你如何使用它的一個示例/教程和QGLShader類。
對於像矢量和矩陣這樣的小類,你只需要閱讀它們的函數文檔,這很簡單。例如,向量有一個QVector3類。我可以看看它是類的頁面,並看到它具有正常的功能,我期望在向量類中正常化,添加等。關於這個簡單的東西的教程不會真的幫助我。
以我的經驗,這是在OpenGL中使用包裝的標準方法。例如,在JOGL中,有一個很大的Texture類,這對紋理io很有幫助。當我需要添加紋理時,我發現它只是通過在javadoc中搜索「紋理」。
SDL和GLUT不是沒用的。海事組織他們只是不同目的的不同圖書館。 Qt是一樣的。 – 2010-05-03 03:42:38
對我來說,他們是因爲我不會使用它們 – Zeke 2010-05-03 04:40:00