-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Closed
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work listc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilityc: performanceRelates to speed or footprint issues (see "perf:" labels)Relates to speed or footprint issues (see "perf:" labels)customer: dream (g3)engineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.frameworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.
Description
Currently, Flutter redraws every pixel even if there's a very tiny part of the screen that's animating (e.g., CircularProgressIndicator, caret in TextField).
We should compute the damage rect (which shouldn't be hard due to our repaint mechanism), reuse the buffer from previous frames, and draw the new frame with the clip set to the damage rect.
Hopefully this could have a significant impact on CPU/GPU usages for issues like #31865
brunocerk, glancer000, kafein, jakobaltendorfer, ds84182 and 42 more
Metadata
Metadata
Assignees
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work listc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilityc: performanceRelates to speed or footprint issues (see "perf:" labels)Relates to speed or footprint issues (see "perf:" labels)customer: dream (g3)engineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.frameworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.