Immediate Mode GUI
Dear ImGui uses an immediate mode paradigm, allowing for flexible and intuitive GUI creation where widgets can be created and managed on the fly during each frame's render loop.
Lightweight
Dear ImGui is designed to be lightweight and does not require heavy dependencies or intricate setup, making it easy to integrate into existing projects.
Cross-Platform
It supports multiple platforms including Windows, macOS, Linux, and various game consoles, offering a versatile solution for different development environments.
Customizable and Extendable
Dear ImGui allows developers to customize its appearance and behavior, supporting themes, custom rendering, and integration with various backends.
Active Community and Extensive Documentation
It's backed by an active community and well-documented, offering plenty of examples, tutorials, and third-party tools to help developers get started and solve issues.
Promote Dear ImGui. You can add any of these badges on your website.
The user interface has been entirely developed using immediate mode gui dear-imgui library, with the ImGui.NET wrapper. This allows for a fast and bloat free experience but, at the same time, harder customization for a task of this size, since the library isn't really suited to the development of end-user applications. On the other side, it's what I'm most familiar to work with. - Source: dev.to / 27 days ago
I've recently had a lot of fun/success with Dear ImGui (C++) -- not a game engine, but originally/partly meant for use in them. https://github.com/ocornut/imgui. - Source: Hacker News / 2 months ago
Cool project! Graphics programming is _hard_ and anything to make it easier is welcome. Maybe a dumb question, but why not Imgui (https://github.com/ocornut/imgui). "It's way too big and complex" is a completely reasonable answer, but I found it fantastic for debug menus, and there are a few applications that have used it as their _main_ GUI (Ship of Harkinian as an... - Source: Hacker News / 7 months ago
The most well known immediate mode GUI framework, which egui is also inspired by, is Dear imgui. The egui repository also has a section on the trade offs when it comes to immediate mode GUIs, which I would definitely recommend you check out. - Source: dev.to / 7 months ago
> I switched from C++ to C about 7 years ago and never looked back I'm definitely considering the same, and you're right - it's not C++ itself that appeals to me at all, it's the libraries. I'm not sure what C libraries I'd use for collections (instead of the STL and Abseil [0]), or in lieu of CLI11 [1] or Dear ImGui [2]. [0] https://abseil.io/about/design/swisstables [1] https://github.com/CLIUtils/CLI11. - Source: Hacker News / 8 months ago
I think that world still exists. We're on HN, so there's always going to be a business/startup bias in what we talk about and share here. And doubly so if someone develops a product as open source with a commercial offering to support it from the get go. Off the top of my head, Imgui[0] is an example of an open source project, widely used, developed by a small group with a main contributor. AssetCooker [1] is a... - Source: Hacker News / 9 months ago
The Dear ImGui readme is a good starting point: https://github.com/ocornut/imgui ...now of course Dear ImGui is a specific implementation of an immediate mode UI framework, but it's also the most popular implementation. - Source: Hacker News / about 1 year ago
Bonus: If you want to make desktop app with UI, then this is another great C++ library and it's also simple to learn as well. https://github.com/ocornut/imgui. Source: over 1 year ago
Create your own GUIs and overlays using the popular ImGUI. Source: over 1 year ago
There are also misc bugfixes, editor changes this time. But I'm a bit tired of win32 and plan to port Dear Imgui afterward. Or leave a comment if you have a good idea about the GUI! I'd like to be focus on the runtime rendering more and keep GUI programming as simple as possible. Source: over 1 year ago
> [...] you can build UIs that are snappy and keyboard driven. That's not an advantage that is exclusive to TUIs; after all, you're running your TUI inside a graphical application that emulates a terminal. (Unless you're rocking an actual VT102, in which case I bow down to you.) In fact there's an entire class of applications that are extremely snappy and keyboard driven, by their very nature: games. Some people... - Source: Hacker News / over 1 year ago
React is crazy high in abstraction from what's actually happening. Your data goes through many "translation" steps before actually being rendered to the screen. 1. You have your signals and stuff - the actual data you want rendered. 2. React creates a virtual DOM tree thing out of your markup. 3. That virtual DOM gets turned into real DOM. 4. React gives the real DOM to the browser, who probably has to... - Source: Hacker News / over 1 year ago
It's not that difficult, I recently started learning to use graphics APIs myself. OpenGL is for linux, etc., directx for windows and vulkan for all platforms. I read through a bunch of forums yesterday and decided to go for vulkan (here is a link to the sdk) for my next small projects because it can run on all platforms. I would recommend to watch a basic tutorial series (like this one) for the graphics api itself... Source: over 1 year ago
Even the GUI is not theirs, but it's not credited. It's Dear ImGui. Source: over 1 year ago
I think that Imgui would qualify as declarative. It is pretty much the industry standard for "simple GUI" at this point. It might be simple but it is powerful. People have built entire game engine editors using it. Source: almost 2 years ago
When it comes to writing GUIs, I'm a big fan of Dear Imgui. It's not going to be the best tool for every job, but it's fairly easy to work with and it doesn't go about overcomplicating things. Source: almost 2 years ago
> Take ImGui (https://github.com/ocornut/imgui, an immediate mode GUI library) for example - the examples are much closer to TUI interfaces than a Swift UI app - the only difference between that an a terminal UI would be that the lines are thinner and that text has non-uniform spacing. What I see there is a spatial interface with complex layout, z-axis and graphical... - Source: Hacker News / almost 2 years ago
I would say that the distinction between TUI and GUI - outside "how would I use this tool remotely" - is mainly one for the developer. Take ImGui (https://github.com/ocornut/imgui, an immediate mode GUI library) for example - the examples are much closer to TUI interfaces than a Swift UI app - the only difference between that an a terminal UI would be that the lines... - Source: Hacker News / almost 2 years ago
Thanks, encouraging to hear that. I don't use any external tool (that's part of the concept). Everything is code-generated: engine, behavior and gfx as well. I use OpenGL for the rendering. The game contains / is the tool. It's based on DearImGui by Omar Cornut https://github.com/ocornut/imgui. Source: almost 2 years ago
It's my own flavor of the very well known GUI library for C++ called Dear ImGui: https://github.com/ocornut/imgui The creator single-handedly keeps the game development sector afloat with this tool imo, it is crazy useful. Source: almost 2 years ago
If you want a strict C++ equivalent to SDL the clear answer is SFML. If you just want to visualize 2D/3D data there's matplot++. If you want something slightly higher-level than SDL/SFML (with pre-made UI widgets and such) there's imGUI. If you need an all-in-one GUI solution for desktop or mobile apps there's Qt. Source: almost 2 years ago
Do you know an article comparing Dear ImGui to other products?
Suggest a link to a post with product alternatives.
This is an informative page about Dear ImGui. You can review and discuss the product here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.