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

Overlapping transparent sibbling with Text item destroys batching

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P3: Somewhat important
    • None
    • 5.12.12, 5.15.8, 6.4.3
    • Quick: SceneGraph
    • None
    • set QSG_VISUALIZE=batches
    • Windows

    Description

      We detected a performance degradation in our application since we moved from Qt 5.12.12 to Qt 5.15.8

      I could narrow it down to a simple example that seems to break batching in the scenegraph thus leading to more drawcalls. It seems to happen as soon as a Text item overlaps with something that has transparency (e.g. an Image)

      See the attached example for reproduction. The white (or half transparent) rectangle grows and as soon as it touches the sibling Text element none of them are any longer batched together (as seen with QSG_VISUALIZE=batches). When the rectangle is drawn over the text element (the last two rows) the batching seems to fail for the rectangles.

      In Qt 5.12.12 the batching works like you would expect. But Qt 5.15.8 (and also Qt 6.4.3) shows the broken batching.

       

      Attachments

        1. batchingtest.qml
          2 kB
          Anton Scheungrab
        2. original.gif
          23 kB
          Anton Scheungrab
        3. Qt5.12.gif
          13 kB
          Anton Scheungrab
        4. Qt5.15.gif
          12 kB
          Anton Scheungrab
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            qt.team.graphics.and.multimedia Qt Graphics Team
            scheungrab@cipsoft.com Anton Scheungrab
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes