[Interest] Tearing in Quick2 flickable-based items with clipping enabled

Ola Røer Thorsen ola at silentwings.no
Wed Nov 13 15:29:33 CET 2013


Hi all,

I'm seeing tearing-effects when scrolling in ListView and other items based
on Flickable when clipping is enabled. This is running on both a Linux
desktop as well as an embedded Linux device (eglfs). The Qt version is
5.1.1.

The systems are running with vsync enabled and double-buffering. There is
no tearing in any other items except the ones with clipping enabled.
Tearing is especially noticeable on the embedded device. The GPU is a
PowerVR SGX chip which is tile-based, so the tearing "lines" are actually
vertical. Also the framerate is mostly somewhere between 30-60.

Tearing appears maybe 20% of the time spent scrolling.

I'm wondering if the core issue is this:

I assume clipping is implemented as rendering the item into a temporary
texture, and the clipped area is of this is finally rendered to the screen
buffer. This temporary texture is not double-buffered. This means it would
be possible that the render pipeline starts writing into a texture (next
frame) that is being drawing into the screen buffer (current frame).

Any thoughts? The tearing is really bad sometimes, and I don't really have
the option of disabling clipping either.

Cheers,
Ola
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20131113/ef03851a/attachment.html>


More information about the Interest mailing list