使用QQuickFramebufferObject进行屏幕外渲染

时间:2018-01-13 01:39:18

标签: qt opengl

我尝试使用QQuickFramebufferObject尝试使用屏幕外渲染。似乎我不能这样做 - 如果我尝试将FBO绑定到屏幕外渲染,则在我释放FBO并尝试渲染到帧缓冲区后,帧缓冲区最终会永久变为蓝色。

为了简化共享代码,我已将示例上传到https://github.com/sohailshafii/textureinsgnode_offscreen。它基本上是" textureinsgnode" Qt示例已修改为包含可以呈现的FBO。现在在fboinsgrenderer(https://github.com/sohailshafii/textureinsgnode_offscreen/blob/master/fboinsgrenderer.cpp)的渲染功能中,我禁用了屏幕外渲染:

// uncomment this block of code to see an incorrect rendering
    /*m_fbo->bind();
    logo.render();
    update();
    m_fbo->release();
    m_fbo->bindDefault();*/
    logo.render();
    update();

但是一旦我在这里取消注释FBO,我就会得到一个稳定的蓝屏。我在QT中查看了屏幕外渲染示例,但不幸的是,他们没有描述如何使用QQuickFramebufferObject完成它。我正在运行QT 5.7.1。

0 个答案:

没有答案