0

我使用 glGenFramebuffer、glBindFramebuffer 和其他相关函数来创建 Framebuffer Object(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 回答