Closed rsglobal closed 4 years ago
First step is to investigate does the dirty region forced to be full-screen on validation stage, or just framebuffer is drawn in such manner, Here is the link to validation code: https://cs.android.com/android/platform/superproject/+/master:frameworks/base/libs/hwui/renderthread/CanvasContext.cpp;l=447;drc=master
Issue has been investigated. Dirty regions are displayed due to fade-in/fade-out full-screen effects. Closing as not a bug.
Recently I've found that Launcher3 and Status Bar (in expanded state) marks whole framebuffer as damaged. Even if very small amount of framebuffer is updated.
This can be observed by setting
debug.hwui.show_dirty_regions=true
property.Android hwui has support for EGL_KHR_partial_update, which should be used to reduce load on GPU.