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

RHI Render capture produces QImage is inverted vertically

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 6.3.1
    • Qt RHI, Qt3D
    • None

    Description

      With the Qt3D RHI renderer (default in Qt 6.3.1), the QImage received from QRenderCapture has different format than OpenGL renderer.

      The QImage from RHI renderer with OpenGL backend is inverted vertically.

      I captured by manual test tests/manual/rendercapture-cpp
      with/without environment variable QT3D_RENDERER=opengl and QSG_RHI_BACKEND=opengl

      (This patch is required for it to work. https://codereview.qt-project.org/c/qt/qt3d/+/418393)

      • OpenGL Renderer, RHI Renderer with DirectX backend
      • RHI Renderer with OpenGL backend (inverted vertically)

      And These formats are

      • OpenGL Renderer: QImage::Format_ARGB32_Premultiplied
      • RHI Renderer: QImage::Format_RGBA8888_Premultiplied

      I expect to get an image with the correct orientation.
      (Also, it is preferable that it can be obtained in the same format.)

      Attachments

        Activity

          People

            seanharmer Sean Harmer
            ayamamoto Atsushi Yamamoto
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated: