What's wrong with using platform APIs? I think that by 2023 most UI toolkits provided by the OS are hardware accelerated.
Smooth animations and performance. Draw a big image with Win32 BitBlt it's painful slow, for example. Imagine that you are zooming an image in Photoshop and it is laggy, the user experience would be horrible. Also, the lag is an important issue in the user interface, even something so small like 100ms would be bad.
Leveraging Rust and the GPU to render user interfaces at 120 FPS
61–70 of 212 posts
Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#62Earlier quoted context omitted.
ImGui is at least only used for debug rendering, not something that makes it to end user. At least in the small subset of companies I worked at.
ImGui is amazing to work with though. Like holy fuck is it pleasant compared to basically every other UI-development paradigm ever in the history of user interfaces.
It feels intuitive and that's why it's the de facto standard for building debug tooling. But this intuitiveness comes at a price! No matter how hard you try, this will always be slower and computationally heavy compared to retained mode.
Great for some stuff, terrible choice for some other.
Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#63What's wrong with using platform APIs? I think that by 2023 most UI toolkits provided by the OS are hardware accelerated.
Smooth animations and performance. Draw a big image with Win32 BitBlt it's painful slow, for example. Imagine that you are zooming an image in Photoshop and it is laggy, the user experience would be horrible. Also, the lag is an important issue in the user interface, even something so small like 100ms would be bad.
Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#64The bottleneck of UI is not the rendering. A measly 60 fps is plenty fast for UI that feels immediate. We had this in the 90's with software rendering, you don't need a GPU for that today. What causes user interfaces to hick up is that it's too easy to do stuff in the main UI thread. First it doesn't matter but stuff does accumulate, and eventually the UI begins to freeze briefly for example, after you press a button…
Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#65I suspect a lot of time is likely to be spent on the CPU side updating vertex and other data and pushing it to the GPU so it would be useful to have some more detail on how they are handling that.
Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#66Earlier quoted context omitted.
ImGui is at least only used for debug rendering, not something that makes it to end user. At least in the small subset of companies I worked at.
ImGui is amazing to work with though. Like holy fuck is it pleasant compared to basically every other UI-development paradigm ever in the history of user interfaces.
It is like static linking, it was also there decades ago.
There are reasons why the world has moved on from those approaches.
Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#67And it's not just about electricity cost and heat stress, it will conflict with everything else that requires the gpu to do stuff, including watching 4k videos on the second monitor, which does have a legitimate case for requiring hardware acceleration since they move a lot of data 60 times per second, and your editor doesn't.
And the limited resource is not the gpu itself but the nearby onboard memory is a scarce resource on its own. I'd be real mad at a software that prevents me to multitask.
Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#68Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#69What's wrong with using platform APIs? I think that by 2023 most UI toolkits provided by the OS are hardware accelerated.
Smooth animations and performance. Draw a big image with Win32 BitBlt it's painful slow, for example. Imagine that you are zooming an image in Photoshop and it is laggy, the user experience would be horrible. Also, the lag is an important issue in the user interface, even something so small like 100ms would be bad.
Re: Leveraging Rust and the GPU to render user interfaces at 120 FPS
#70What's wrong with using platform APIs? I think that by 2023 most UI toolkits provided by the OS are hardware accelerated.
Smooth animations and performance. Draw a big image with Win32 BitBlt it's painful slow, for example. Imagine that you are zooming an image in Photoshop and it is laggy, the user experience would be horrible. Also, the lag is an important issue in the user interface, even something so small like 100ms would be bad.