Bump, I want to know. I spent a few months working with Egui. Maybe immediate mode will grow only with Rust, currently its seems to be the only out of the box working GUI for Rust.
I think immediate mode is good, I found it easier to work with as what is rendering is entirely driven by the data, not some intermediate library issuing commands. Also I think its more performent for high frequency updates.
Having to manually manage what is rendered between frames sucks ass, having many static items rendered constantly seems to hog CPU usage (I think).
>I think immediate mode is good
It's usually a very immature way of doing things, prone to having nasty performance problems and event overloading. For ordinary GUIs, callback-driven approaches produce much better results; some very highly animated UIs are better done using immediate mode, but they're a small minority.
Think about it. An immediate mode GUI library is a lot easier to implement, and everyone's known this since forever, but most GUI toolkits (other than the most basic library layer) don't work that way. Why? Because the higher levels are offering something, and that "something" is event batching and update combining, which make a huge difference to responsiveness when things get busy.
>Current approaches to building GUIs in Rust include interfacing with Electron and building GUIs with HTML (or a framework on top of it)
LMAO
Imagine going through the pain of using Rust for "muh performance and small binaries"
And then implementing the GUI in fricking ELECTRON
they're popular with people who never developed a real GUI application
utterly shit and unusable if you want to make something with more than 10 views, just use OOP like everyone else we know it's the correct paradigm for GUIs
Try doing anything with GUI lists/tables. Also I don't find qtcreator and glade (or whatever GTK uses) intuitive to use. It's just as bad as in code. I miss classic Delphi.
How long does it take? I'm only hating it more and more. I don't write GUI code all the time, it just happens that I have to maintain or add features to small GUIs at work every other months.
A few months for a basic grasp to a year to get really comfortable, but that's by getting deep and writing mostly GUI; at your pace, I would say never.
kindof, it's designed to embed in game loop where 3d objects are similarly inefficiently rendered per loop
for desktop use it really is quite wasteful, the only "retained" thing dear-imgui does is put on a glScissor hoping the driver would eliminate unneeded work
i would assume people are doing everything on the web now. what's the use case for this? does anyone even use it on production?
>what's the use case for this?
Mostly videogames.
ToT
Hybrids are more popular.
Visual Rust when??
We must never repeat this mistake.
Visual Basic was the pinnacle of GUI development.
Bump, I want to know. I spent a few months working with Egui. Maybe immediate mode will grow only with Rust, currently its seems to be the only out of the box working GUI for Rust.
I think immediate mode is good, I found it easier to work with as what is rendering is entirely driven by the data, not some intermediate library issuing commands. Also I think its more performent for high frequency updates.
Having to manually manage what is rendered between frames sucks ass, having many static items rendered constantly seems to hog CPU usage (I think).
>I spent a few months working with Egui
>egui (pronounced "e-gooey")
Dumb tranime poster
>I think immediate mode is good
It's usually a very immature way of doing things, prone to having nasty performance problems and event overloading. For ordinary GUIs, callback-driven approaches produce much better results; some very highly animated UIs are better done using immediate mode, but they're a small minority.
Think about it. An immediate mode GUI library is a lot easier to implement, and everyone's known this since forever, but most GUI toolkits (other than the most basic library layer) don't work that way. Why? Because the higher levels are offering something, and that "something" is event batching and update combining, which make a huge difference to responsiveness when things get busy.
>Mode: Reactive
>Only running UI code when there are animations or input.
Pretty cool.
https://www.egui.rs/#Demo
https://areweguiyet.com/
>Current approaches to building GUIs in Rust include interfacing with Electron and building GUIs with HTML (or a framework on top of it)
LMAO
Imagine going through the pain of using Rust for "muh performance and small binaries"
And then implementing the GUI in fricking ELECTRON
webview != electron. webview is indeed smaller binaries compared to the industry standard electron.
>all below average compare to wpf
... Why no one want to compete with ms?
>compared to wpf
what planet are you on? WPF is aids.
>WPF is aids
if wpf is aids I can't imagine what the alternatives are like
wpf is deprecated
they're popular with people who never developed a real GUI application
utterly shit and unusable if you want to make something with more than 10 views, just use OOP like everyone else we know it's the correct paradigm for GUIs
I hate toolkits like QT or GTK so much. They all have extremely complicated class hierarchies and doing anything is a massive PITA.
How so? They usually have a graphical builder which exports to some sort of XML. Then you just query and add callbacks to it. It's webdev tier easy.
Try doing anything with GUI lists/tables. Also I don't find qtcreator and glade (or whatever GTK uses) intuitive to use. It's just as bad as in code. I miss classic Delphi.
Once you get used to the Qt "ecosystem" it becomes smooth and pleasing to work with.
How long does it take? I'm only hating it more and more. I don't write GUI code all the time, it just happens that I have to maintain or add features to small GUIs at work every other months.
A few months for a basic grasp to a year to get really comfortable, but that's by getting deep and writing mostly GUI; at your pace, I would say never.
>ImGui
>raygui
why?
qt and gtk ought to be enough for everybody.
bloat
why would you do work in your gui thread? non immediate gui designs are for moron gorilla Black folk who like looking at non responsive programs
kindof, it's designed to embed in game loop where 3d objects are similarly inefficiently rendered per loop
for desktop use it really is quite wasteful, the only "retained" thing dear-imgui does is put on a glScissor hoping the driver would eliminate unneeded work