-
-
Notifications
You must be signed in to change notification settings - Fork 10.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Practicality of dear ImGUI for game engines #1315
Comments
There's no right or wrong answer and people here (me especially) are definitively biased as well :) Qt is one of the standard (that alone has some value) and is very full-featured. Totally not biased:
Some links:
|
Lumix Engine's editor used to be in Qt, so I can very easily compare. ImGui is the winner. YMMV.
Cons:
|
I am in similar situation as @nem0 but on a completely different field (we do robotic automation). We only redraw the UI when something happens, plus we don't do heavy 3D editors so responsiveness of our ui is always pretty nice between 30 and 60 fps. I am running some private tests during my spare time to improve imgui on animations (and in general on skinning) and I think once we get them right ImGui will be the coolest looking UI framework on earth ! |
I'm not using C++ so Qt is pretty much off the table, it would be a pain and no wrapper currently exists for it so I'd have to write my own. I'd end up losing a lot of things that make Qt enticing though anyways. One thing I like about ImGui is that it's part of the game engine. For Qt you'd have to figure out a way to run the game with Qt on top of it. Which usually means maintaining two separate projects, one for the game engine and one for the editor. But the game engine would need to be somehow integrated with the editor. Which isn't always the greatest to do, Qt takes control of the main loop and can be a pain to try and keep it under your control instead. You are using two different APIs, so if you store an image in DXT1 format, you might have a hard time getting that to render in Qt for use in the interface. You might have to just convert it to PNG or something and then pass it through normally. So you have a lot of duplication to accommodate two different techniques. With ImGui you can use your own rendering so you don't have to worry about the formats so long as you support it in your game engine. |
@123tris Try Godot Engine. It's awesome! |
@123tris Closing this topic as stale, since it was an open-ended discussion topic. Let us know if you ended up using dear imgui ! |
Hello y'all. I'm a university student developing a 3D game engine (http://tristeon.strikingly.com/) and I'm planning to create an editor similar to Unity for it. However there are many editor libraries available and I'm in quite a bind. I looked at the basics of Qt and Dear ImGUI and while very different I quite like both of them. I unfortunately lack the time to gain expertise in both tools to make the right decision that is applicable for making a game engine. I'm aware that the library has been used for a game engine before (lumix engine).
I've done my fair share of research on this but I feel that most people talking about this topic are biased towards one another as they are a lot more experienced in one. I was wondering to ask for unbiased comments about deciding on a GUI library.
The text was updated successfully, but these errors were encountered: