Strengths of Qt vs other solutions
-
Hi all, I'm evaluating Qt to create UI tools for 3D applications in openGl and/or DirectX. What kind of features does Qt offer over other alternatives such as Fltk, Gtk+, etc? Looking at the documentation and websites doesn't give me a clear picture. Building UI in the creator does seem a bit easier, but I wonder if you end up paying for it later in the code side of things, or perhaps performance.
-
I never worked with Fltk or Gtk, but from what I've read, Qt is much more complete. You can even go for mobile plataform, wich AFAIK you can't with the other two. Regarding OpenGL, Qt integration is very good, there are many Qt OpenGL wrappers that ease developer life. Regarding performance, there are no problems Qt is C++ you can use many c++ compilers, so it's native performance. As for the designer I use it all the time, is a real time saver, but that really depends on your personal preference.
-
Maybe you should not ask such a question in a Qt forum, where all people like Qt ;)
I use Qt (instead of GTK+) because of a better documentation. Also, like john_god mentioned, you are more flexible in porting to other systems or mobile plattforms.
We cannot give you a clear answer of the question without having any requirements or expectations of your project.
Maybe to notice one disadvantage is rapid prototyping. I think, many users here will say "That's not true", because of Qt Quick, but you need the knowledge and be more or less an advanced Qt programmer.
-
Thanks to those who replied. In case anyone is interested. I'm done evaluating many systems for creating UI. Qt won for me. I actually abandoned it twice in the process but each time came back to it due to its advantages. I evaluated Java, Fltk, Gtk+, c#, Juce, wxwidgets, and some minor ones I gave less consideration to. At the end Qt has the most features and flexibility. The unwanted complexities of Qt ended up being a good trade for what you get. The compatibility with many platforms was a big win for my projects. The flexibility in ways to interface with OpenGl was huge. The size of the Qt community vs some of the others is vastly superior (much more support, resources, sample code and people/books/websites answering questions than most). Lastly, being able to build a statically linked c++ executable provides ease of distribution and high performance.