News for hackers. Stuff that matters.
Re:Egui – An immediate mode GUI written in Rust by nottorp on Thursday December 26, 2024 @06:20AM (#42514559)
> It redraws everything on every frame, so it's most useful for 2D overlays on 3D game-type programs.

So it's not a GUI. In my book a GUI only redraws when something changes, to save the user's power.

Re:Egui – An immediate mode GUI written in Rust by unclad5968 on Thursday December 26, 2024 @07:19AM (#42514772)
Well I guess your book needs a new edition. The type of gui you're referencing is typically referred to as a retained mode gui.
Re:Egui – An immediate mode GUI written in Rust by nottorp on Thursday December 26, 2024 @07:45AM (#42514865)
The point is, I don't want people to see "GUI library" and think it's okay to use this for your random phase-of-the moon application that has no good reason to redraw at 2400 fps or whatever the enthusiasts want these days.
Re:Egui – An immediate mode GUI written in Rust by do_not_redeem on Thursday December 26, 2024 @08:48AM (#42515127)
Just click on the link and you can easily see it only redraws when something on the screen changes. It's amazing how quickly people will dismiss something these days based on their own made up reasons.
Re:Egui – An immediate mode GUI written in Rust by nottorp on Thursday December 26, 2024 @08:56AM (#42515162)
The poster above me explained to me that it's not like that?
Re:Egui – An immediate mode GUI written in Rust by do_not_redeem on Thursday December 26, 2024 @09:11AM (#42515243)
Click the link, open the backend tab, and look where it says "Only running UI code when there are animations or input."

Then you won't have to waste cycles deciding which random internet comment from a stranger to believe

Re:Egui – An immediate mode GUI written in Rust by Animats on Thursday December 26, 2024 @04:18PM (#42517899)
If you set up "winit" so it only redraws on events, then you don't trigger an EGUI redraw very often. But if updates that affect the EGUI items are coming in from another source, like the network, you have to explicitly trigger a winit redraw cycle.

Don't know about web. Seems overkill if all you have are GUI widgets. Egui is most useful on top of something more graphical.

Scrolling text is a problem. EGUI isn't good at big text boxes with much offscreen text. That can be worked around.

Re:Egui – An immediate mode GUI written in Rust by fsloth on Thursday December 26, 2024 @06:43AM (#42514661)
If it’s used as a game ui, games typically render everything at 60fps - so the energy cost from ui layer would be neglible.

Afaik nobody is forcing to rerender the ui layer if nothing changes, though. Just render it to a texture and compose … no need to put everything to the same render target?

Re:Egui – An immediate mode GUI written in Rust by fulafel on Friday December 27, 2024 @01:24AM (#42520313)
It has this claim:

"egui is not a framework. egui is a library you call into, not an environment you program for."

So I suspect it gives you control on when to redraw and you might eg call it only when user input happens in your app or there's a some other state change that changes what is shown.