【发布时间】:2021-11-27 21:22:34
【问题描述】:
我正面临这种情况,我需要将帧缓冲区对象的内容呈现到屏幕上。屏幕上已经有一些内容,我想将帧缓冲区的内容绘制到这些内容上。
我正在使用 Qt5 和 QNanoPainter 来实现它。
我实现的渲染命令基本上采用QOpenGLFramebufferObject 并将其转换为QNanoImage(使用this),然后调用QNanoPainter::drawImage。
这可以正常工作,但问题是当 fbo 的内容被渲染到屏幕上时,屏幕先前存在的内容变得“像素化”。 例如,在我绘制 FBO 之前,屏幕是这样的
然后当我将 FBO 绘制到默认渲染目标上时,我得到了这个(红色是 FBO 的内容)
我认为这与混合和 OpenGL 有关,但我不确定如何解决这个问题。
【问题讨论】:
标签: c++ qt opengl framebuffer