3 ms·
I was playing last week with this framework. One of the best things that Egui does is updating the layout using a reactive rendering strategy by default. So ra
by syrusakbary 5y ago
I was playing last week with this framework.
One of the best things that Egui does is updating the layout using a reactive rendering strategy by default. So rather than doing a paint per frame (each 15ms), it does it lazily only when the state changes.
For example: if you have a plot that updates each 10ms... a UI paint will be triggered each 16ms (up to 60fps I believe). If not, the UI will be updated lazily (when you move the mouse or other event happens).
Note: you can choose a "continuous" rendering mode for the backend as well.
It also has great accessibility with a built-in screen reader.
It's an impressive piece of work.
- andrewmcwatters 5y agoThis is an old UI redraw strategy. It’s been used since the dawn of GUIs and is referred to as invalidation. Here’s an example of a standard GUI invalidation event: https://github.com/Planimeter/grid-sdk/blob/master/engine/client/gui/handlers.lua#L148 https://github.com/Planimeter/grid-sdk/blob/master/engine/cl... As you mentioned, most GUI software invalidates primarily on mouseovers, and individual components handle things like invalidation on focus.