Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-83812

OpenGL backend produces flipped rendering in some cases

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • 6.3
    • 6.0
    • Quick: 3D
    • None
    • 2

    Description

      Certain lancelot scenes produce different result with OpenGL compared to Metal/Vulkan/D3D, because of Y-Up difference.

      1. custommaterial/lightmapgen.qml
      1. textures/view3d_as_texture_in_view3d.qml
        textures/view3d_as_texture_in_view3d_change.qml
      1. 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

          For Gerrit Dashboard: QTBUG-83812
          # Subject Branch Project Status CR V

          Activity

            People

              lagocs Laszlo Agocs
              tvete Paul Olav Tvete
              Pasi Keränen Pasi Keränen
              Andy Nichols Andy Nichols
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes