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?