Details
-
Task
-
Resolution: Done
-
P1: Critical
-
None
-
None
-
None
Description
This is similar to QML subpresentations in Qt 3D Studio. The idea is to make it possible to render 2D Qt Quick content inside of a 3D scene. The first step is to be able to render QML to a layer (an FBO), and then use that texture as the source of a QQuick3DTexture. Then you can use that content anywhere that takes a QQuick3DTexture.
Ideally this will work similarlly to how ShaderEffectSource and QML Layers work today. Basically the Qt Quick Scenegraph knows that this sub-tree is a dependency of the 3D scene, and makes sure that it gets rendered before a 3D scene.
If we can make this work then it is then possible to also rendered additional 3D scenes inside of 3D scene via the use of the the View3D item. It also leads to interesting usecases like Video textures via QtMultimedia or 3D compositors via Qt Wayland.
I also want to make it clear that this is intended as the default fallback. In the future it should be possible to avoid the use of an FBO in some cases.
Attachments
Issue Links
- resulted in
-
QTBUG-92841 Offscreen Surfaces should not receive input events in 3D scenes
-
- Closed
-
For Gerrit Dashboard: QTBUG-76685 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
277450,3 | 3D Wayland compositor manual test | dev | qt/qtquick3d | Status: NEW | 0 | 0 |
276150,5 | Don't create unnecessary layers for texture providers | 5.14 | qt/qtquick3d | Status: MERGED | +2 | 0 |