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

QGLFramebufferObject's QGLPaintDevice is initialized with wrong GL format

    XMLWordPrintable

Details

    • Bug
    • Resolution: Out of scope
    • P3: Somewhat important
    • None
    • 4.8.0
    • GUI: OpenGL
    • None
    • Windows 7, Visual Studio 2005 64bit

    Description

      If the QGLFramebufferObject internal texture format is set as GL_RGB8,
      QGLPaintDevice::alphaRequested() should return false, but it always returns true.

      The QGLFBOGLPaintDevice::setFBO() is called too early in QGLFramebufferObjectPrivate::init,
      it needs to be called last in init, after the FBO format is correctly set.

      The reason this is important is because the GL fontengine will switch to RASTER_A8 font rendering instead of RGBMask ClearType rendering,
      when a QPainter is attached to a QGLFramebufferObject with internal format GL_RGB8, which results in a different font rendering than when using QGLWidget as the paint device.

      I attached a patch that fixes the problem.

      Attachments

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

        Activity

          People

            Unassigned Unassigned
            florianlink Florian Link
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes