diff options
author | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> | 2021-02-12 07:43:22 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-02-25 09:06:22 +0000 |
commit | 4d77a0727e18fb3391567b55b213e8721c43cea1 (patch) | |
tree | e8e6eb675ab47039ec5b18bc0a1db5f649edf8a8 /src/quick/items/qquickanimatedimage_p.h | |
parent | 4bc08dcb9481b700128f2aa3299e63f3f0d8466a (diff) |
Don't invalidate unaffected render orders
If you have a list of render orders A, B, C, then A and C
changes, we also invalidated B. This was to avoid the situation
where B was ignored by the batching algorithm and A and C
would end up being batched together.
This has a performance impact for some scenes though, where
you might have top level and bottom level items that constantly
change, causing all geometry in the scene to be uploaded every
frame.
Instead of doing this, we skip invalidation of B, but include its
bounding rect when checking for overlaps, so that we still avoid
batching A and C together but without the need to re-upload B.
Fixes: QTBUG-90632
Change-Id: I462cf1938360643ca9fa1425ae8c8e08b534fd76
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Michael Brasser <michael.brasser@live.com>
(cherry picked from commit 9aa3db2e19b2e1622b878cf34b1978f4fdbcac39)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/quick/items/qquickanimatedimage_p.h')
0 files changed, 0 insertions, 0 deletions