is makeing Vulkan guis worth it?

This page summarizes the projects mentioned and recommended in the original post on /r/rust

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. imgui

    Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

    What I'm trying to get across is not a discouragement from experimentation or personal exploratory efforts, but instead firm words of advice to turn to existing solutions. In particular, ImGui and egui are immediate-mode hardware-accelerated GUI libraries that are easy to embed, so they resemble quite closely the GUI paradigm that you would have likely followed, had you chosen the path of rolling your own Vulkan-based toolkit.

  2. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  3. vello

    A GPU compute-centric 2D renderer.

    It's unlikely to look modern if you make it yourself from scratch, you will probably end up with something looking more like a janky game UI. You probably at least want a good drawing library (like https://github.com/linebender/piet-gpu which is built on vuklan), if not an entire UI tool kit/framework.

  4. nuklear

    You might want to try Nuklear https://github.com/vurtun/nuklear or imgui https://github.com/ocornut/imgui , both to my knowledge have a Vulkan backend

  5. swiftshader

    SwiftShader is a high-performance CPU-based implementation of the Vulkan graphics API. Its goal is to provide hardware independence for advanced 3D graphics.

    You also don't get extensive support for various hardware for free – good luck running a Vulkan GUI on a pre-GCN AMD card or a sufficiently old NVIDIA one without a compatibility layer of sorts, which would require bothering with Vulkan Portability (i.e. missing certain Vulkan features due to it being implemented via an older API). The only alternative to that is SwiftShader (which would throw your extremely fast GUI aspirations right outta the window).

  6. relm

    Idiomatic, GTK+-based, GUI library, inspired by Elm, written in Rust

    Relm, Slint (formerly SixtyFPS), Druid and Iced are all very promising idiomatic GUI toolkits with a great deal of community activity around them, and all of those perform substantially better in the accessibility department than ImGui and egui, to my knowledge. areweguiyet.com can give you some more pointers as well.

  7. slint

    Slint is an open-source declarative GUI toolkit to build native user interfaces for Rust, C++, JavaScript, or Python apps.

    Relm, Slint (formerly SixtyFPS), Druid and Iced are all very promising idiomatic GUI toolkits with a great deal of community activity around them, and all of those perform substantially better in the accessibility department than ImGui and egui, to my knowledge. areweguiyet.com can give you some more pointers as well.

  8. druid

    A data-first Rust-native UI design toolkit. (by linebender)

    Relm, Slint (formerly SixtyFPS), Druid and Iced are all very promising idiomatic GUI toolkits with a great deal of community activity around them, and all of those perform substantially better in the accessibility department than ImGui and egui, to my knowledge. areweguiyet.com can give you some more pointers as well.

  9. iced

    A cross-platform GUI library for Rust, inspired by Elm

    Relm, Slint (formerly SixtyFPS), Druid and Iced are all very promising idiomatic GUI toolkits with a great deal of community activity around them, and all of those perform substantially better in the accessibility department than ImGui and egui, to my knowledge. areweguiyet.com can give you some more pointers as well.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

Did you know that Rust is
the 3rd most popular programming language
based on number of references?