Details
-
Suggestion
-
Resolution: Done
-
P2: Important
-
6.0.0
-
None
-
-
ad4b2872aa1c939c2d805311d9dad549373abd3f (qt/qtdeclarative/dev)
Description
On the Qt5, I can use QQuickWindow::setRenderTarget(uint fboId, const QSize &size), but on the Qt6, I can't render a QQuickWindow to a opengl frame buffer.
In QQuickRenderTarget, only fould the "fromOpenGLTexture" function, but it cannot be used in my code:
EGLImageKHR image; // some codes... GLuint rbo; GLuint fbo; glGenRenderbuffers(1, &rbo); glBindRenderbuffer(GL_RENDERBUFFER, rbo); glEGLImageTargetRenderbufferStorageOES(GL_RENDERBUFFER, image); glBindRenderbuffer(GL_RENDERBUFFER, 0); glGenFramebuffers(1, &fbo); glBindFramebuffer(GL_FRAMEBUFFER, fbo); glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, rbo); glBindFramebuffer(GL_FRAMEBUFFER, 0); // In Qt5 QQuickWindow window; window.setRenderTarget(fbo, QSize(...));
This frame buffer object is provided by other development libraries, and only the frame buffer object can be obtained in my program code , what should I do on Qt6?
Attachments
For Gerrit Dashboard: QTBUG-92116 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
340717,6 | rhi: gl: Add support for importing an existing renderbuffer object | dev | qt/qtbase | Status: MERGED | +2 | 0 |
340719,5 | Allow targeting a (GL) renderbuffer object with the QQuickWindow | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |