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

QQuickWidget unusable on systems with 16-bit pbuffer surfaces

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • P2: Important
    • Resolution: Done
    • 5.3.0
    • 5.3.1
    • 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

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        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