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

QQuickWidget unusable on systems with 16-bit pbuffer surfaces

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 5.3.1
    • 5.3.0
    • Quick: Widget
    • None
    • 13be09c97fe235ac8f453cbee9c1f794b6815db5

    Description

      QQuickWidget operates the following way:

      • Create a QQuickView. The underlying platform window is never created.
      • Create an offscreen surface. On systems with support for pbuffer surfaces (EGL) this will be backed by a pbuffer surface.
      • Create a context.

      On systems where the EGL implementation offers both 16 and 24-bit pbuffer surfaces but only 24-bit window surfaces, the context and the pbuffer surface will have incompatible configurations, unless the a 888 format was explicitly requested via QQuickWidget::setFormat().

      With the default settings the 16-bit configs are chosen. Which means that the pbuffer will use a 16-bit EGLConfig while the window/context a 24 (or 32) bit one.

      Generally this is not an issue since a QOffscreenSurface is usually created after having a context, from which the actual format can be queried (via QOpenGLContext::format()).

      For QQuickWidget this is not the case. There is neither a context nor a (platform) window available when creating the QOffscreenSurface. Hence we cannot know what underlying configuration the context and window would use...

      Attachments

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

        Activity

          People

            lagocs Laszlo Agocs
            lagocs Laszlo Agocs
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes