Qt5 Multisampling using QOpenGLFrameBufferObject
I need to perform multisampling in a Qt5 project but I am not sure how to use "QOpenGLFrameBufferObject":http://http://qt-project.org/doc/qt-5.0/qopenglframebufferobject.html to perform it. There is no example on how to do this as far as I searched and the documentation only mentions: "If you want to use a framebuffer object with multisampling enabled as a texture, you first need to copy from it to a regular framebuffer object using QOpenGLContext::blitFramebuffer()." My code currently looks like this:
@//Enable FSAA for better output
if(m_lpFBO == NULL)
//MultiSampling set to 4 now
//Create the FBO m_lpFBO = new QOpenGLFramebufferObject(vp, vp, format); m_lpFBOSurface = new QGLFramebufferObjectSurface(m_lpFBO); } QRect rc(0, 0, vp, vp); QGLSubsurface sub(lpPainter->currentSurface(), rc); m_lpFBO->bind(); sub.setFramebufferObject(m_lpFBO); lpPainter->pushSurface(&sub); //Draw as usual . . . lpPainter->popSurface(); //Now Copy QOpenGLFramebufferObject::blitFramebuffer(lpPainter->currentSurface()->framebufferObject(), rc, m_lpFBO, rc);
I am using Qt5 alpha and my development system is a Macbook pro with AMD 6600 GPU.