Skip to content

gfx,py: rate limit overlays

Phileas requested to merge rate_limit_overlays into main

Managing and rendering overlays is a large penalty to have per-frame, ideally the overlays only re-render when there has been change, this commit cuts the number of overlays re-renders in 8. And does the overlays on top of the framebuffer. Before scanout a slice centered and from the top down is composited over the framebuffer. When only icons are shown less work is done. The maximum extent of the overlay covers the volume control and icons. The debug overlay no longer is visible since it renders outside the supported overlay area.

The result of this MR is much better average framerate in the main menu, there is stalls in performance each time the overlays are updated even when we have a kind of static bar of icons. This MR provides a foundation where the whole "draw overlays" mechanism can possibly bail out early if nothing has changed.

Edited by Phileas

Merge request reports