Description
Certain lancelot scenes produce different result with OpenGL compared to Metal/Vulkan/D3D, because of Y-Up difference.
- custommaterial/lightmapgen.qml
- textures/view3d_as_texture_in_view3d.qml
textures/view3d_as_texture_in_view3d_change.qml
- effects/aberration.qml
effects/brushstrokes.qml
effects/colors.qml
effects/custom_effect_simple.qml
effects/distortion1.qml
effects/distortion2.qml
effects/edge.qml
effects/sequence.qml
See e.g. http://lancelot.intra.qt.io/BaselineComparison/2021-03-22_4/
For the effects, there seem to be two closely related issues at play. One is the y-up orientation of buffers/textures. Another is that some effects take a parameter that is a coordinate on the rendered image - where the Y axis points to opposite way. For example, see the top right field of effects/distortion2.qml. The rotation center is set to (0.4, 0.8). That ends up in the top half of the image under OpenGL, and the bottom half under Metal/Vulkan/D3D.
Attachments
Issue Links
- is required for
-
QTBUG-83177 RHI Quick3D: Further work on post-processing effects
-
- Closed
-
- resulted from
-
QTBUG-83364 Investigate lancelot discrepancies between RHI and direct OpenGL
-
- Closed
-
Gerrit Reviews
For Gerrit Dashboard: QTBUG-83812 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
297388,2 | WIP: RHI: deal with YUp backend differences in postprocessing effects | dev | qt/qtquick3d | Status: ABANDONED | -2 | 0 |