0

glGenFramebuffer、glBindFramebuffer、およびその他の関連関数を使用して Framebuffer オブジェクト (FBO) を作成し、FBO を使用してオフスクリーン データを描画します。ここで私の質問は、QGLWidget 内で前述の手順を完了し、FBO のデータを QGLWidget に戻すにはどうすればよいですか? どうもありがとうございました!

4

1 に答える 1

0

を使用してフレームバッファにカラーバッファをアタッチしたと仮定します

glFramebufferTexture2D( myfboID, GL_FRAMEBUFFER, GL_TEXTURE_2D, mytexID, 0);

フレームバッファをウィジェットに変更します

glBindFrameBuffer(GL_FRAMEBUFFER, 0);
glClear(GL_COLOR_BUFFER_BIT);

前のテクスチャでテクスチャリングされた QUAD をレンダリングするだけです。[-1,-1] から [1,1] までのクワッドを単純にレンダリングし、上記のテクスチャ バインドを使用すると、テクスチャ座標は [0.0,0.0] - [1.0,1.0] になります。

于 2016-08-26T07:00:05.647 に答える