4

OpenGL 関数 glDrawBuffers(GLsizei n, const GLenum *bufs) は Qt で使用できますか? 複数のレンダー ターゲットをフラグメント シェーダーに渡そうとしていますが、QtCreator は関数がこのスコープで宣言されていないと言います。アイデアは、2 つのカラー バッファーを持つフレーム バッファー オブジェクトを用意し、フラグメント シェーダーを使用してそれらの 2 つのバッファーに描画することです。

修正済み: 問題のあるファイルに #define GL_GLEXT_PROTOTYPES 1 を追加するだけでした:(

4

2 に答える 2

1

Qt は、OpenGL 関数への基本的なアクセスのみを提供します。その中には、シェーダーとテクスチャの読み込みがあります。レンダー ターゲットはそうではありません。GLEW のような適切な拡張ローダー ライブラリを使用するだけです。GLEW は Qt の機能とうまく共存します。

QGLWidget から派生し、glInit呼び出しglewInit後にオーバーライドして呼び出すinitializeGL

于 2012-05-13T20:52:00.867 に答える