Details
-
Sub-task
-
Resolution: Done
-
P2: Important
-
None
-
f5f3e53e4 (dev), b5a05e4e7 (dev), 098ef8089 (dev), 7295ece36 (dev)
Description
Think through how qtquick3dxr would work with multiview when it comes to the low-level plumbing.
- the XR swapchain needs to be requested with arraySize == 2, which then gives a 2D texture array object (with 2 layers), not a single 2D texture
- this is what Qt Quick needs to adopt via QQuickRenderTarget
- depth-stencil needs to be a texture array as well
- the renderer will need to bake the view count in to the graphics pipelines so the render target will need to be examined to determine the view count so it is easily available during rendering. This allows outputting the exact same content to multiple views. (but no gl_ViewIndex in the shaders so no differentiation between the views - that is a separate story)
- Enablers for passing in multiple projection matrices to the QSGRenderer.
- Note that this all will ever be used in the RenderMode3D mode, i.e. when there is a 2D item subtree within a 3D scene. There are no plans for "multiview support for plain Qt Quick".
- Materials and their shaders. QSGMaterialShader implementations should be able to know the view count and also access the multiple projection (and combined) matrices. Prove this with e.g. the vertexcolor material so simple Rectangle works.
Attachments
Issue Links
- is required for
-
QTBUG-114886 Make Qt Quick materials multiview capable
- Closed
For Gerrit Dashboard: QTBUG-114871 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
488332,17 | WIP: Add basic multiview rendertarget plumbing | dev | qt/qtquick3d | Status: NEW | -2 | 0 |