Skip to content

Conversation

@jonahwilliams
Copy link
Contributor

The existing technique of offsetting a smaller texture is very vunerable to bugs in the renderer. Rather than this approach, we can allocate a new offscreen that is full sized and then blit a smaller region. To reduce the allocation costs, we can also set up a transients cache which will reuse this texture. In total, this should be more performant than the existing partial repaint (due to lack of continual re-allocation) at the cost of higher peak memory usage.

Fixes #140877 Fixes #160588 Fixes #156113

…r#161626)

The existing technique of offsetting a smaller texture is very vunerable
to bugs in the renderer. Rather than this approach, we can allocate a
new offscreen that is full sized and then blit a smaller region. To
reduce the allocation costs, we can also set up a transients cache which
will reuse this texture. In total, this should be more performant than
the existing partial repaint (due to lack of continual re-allocation) at
the cost of higher peak memory usage.

Fixes flutter#140877
Fixes flutter#160588
Fixes flutter#156113
@github-actions github-actions bot added engine flutter/engine related. See also e: labels. e: impeller Impeller rendering backend issues and features requests labels Jan 24, 2025
@reidbaker reidbaker added the cp: beta cherry pick this pull request to beta release candidate branch label Jan 28, 2025
@reidbaker reidbaker added the autosubmit Merge PR when tree becomes green via auto submit App label Jan 29, 2025
@auto-submit auto-submit bot merged commit d1e425d into flutter:flutter-3.29-candidate.0 Jan 29, 2025
161 checks passed
@reidbaker reidbaker mentioned this pull request Jan 30, 2025
9 tasks
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 12, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 13, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 13, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 6, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 7, 2025
@reidbaker reidbaker mentioned this pull request Apr 4, 2025
9 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmit Merge PR when tree becomes green via auto submit App cp: beta cherry pick this pull request to beta release candidate branch e: impeller Impeller rendering backend issues and features requests engine flutter/engine related. See also e: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants