New to Qt Seeking advice for C++ Opengl pathway
-
Hello all,
I have a relative done up program I have written in C++ using VS2012 that renders to an OpenGL window (no VBO or FBO stuff yet, but the C++ is heavy). I currently load from a config file and was suggested to make use of a UI and was sent here.
I have searched for some help and tutorials, and have found a couple (though old and so, a bit hard to follow) and also have seen some in the help section. I started following one as I found a video from the Qt forum in Dec and was shown Qt Quick 2.
My questions are:
-
First of all, will anything run/compile on my clean install of Windows 8 with VisualStudio 2012 (11)
-
Can anyone please point me to a relevant guide/tutorial for a beginner to implement a UI for an already extensive C++/OpenGL project on the new Qt?
-
Can anyone also confirm if there are any major changes between the tutorials I may find for 4.7 and 5.0.1?
-
If there is any difference as I am learning between this QtQuick in the QtCreator?
-
Lastly, if I've really never touched Qt, is it a realistic goal to get something going like the AssetViewer Qt app insofar as a UI?
I do apologize if this question is overdone, I've seen some posts elsewhere that give some high-level information, but this QtQuick looks more like what I want, but I've no idea the difference or where to start with it. My main issue is I need a fast turn around on implementing a UI and augmenting my work (a couple weeks) so I've been a little put off from what I've been reading so far. Any constructive help and advice or direction would be welcome. Many thanks.
-
-
If the speed of designing and implementing an UI is a priority, I think QML is your best friend. It's easy to learn and implementing UI is really fast in it. Qt 5.1 will also introduce QML desktop components, which makes the whole thing even more appealing.
[quote]First of all, will anything run/compile on my clean install of Windows 8 with VisualStudio 2012 (11)[/quote]
I'm on Linux, so I'm not sure. I think Qt 5.0.1 compiles with VS 2012, so you should be fine.
[quote]Can anyone also confirm if there are any major changes between the tutorials I may find for 4.7 and 5.0.1?[/quote]
"Porting guide":http://qt-project.org/doc/qt-5.0/qtdoc/portingguide.html. Changes are minimal in most cases (different includes, a new widgets module if you go for QWidget UI).
[quote]If there is any difference as I am learning between this QtQuick in the QtCreator?[/quote]
Yes, it's easier, as QtC will automate some things that can be tricky in the beginning. Documentation and most books are IDE-agnostic.
-
Thanks for the informative reply, still a few concerns if anyone can offer some additional input.
I'm still thoroughly confused with runnin Qt, seems VS2012 and instaling the Qt creator are not enough, I can't compile anything, and everywhere I look sounds like bad news in general.
Also, a major question for me was finding a resource to implement Qt with an already developed OpenGL and (heavy) C++ project. I was a little lost before looking for help, but you've also mentioned QML. I can't find anything worthwhile in terms of how-to's in mixing the three (QML and a ready project). I know I'll have to do some re-factoring of my project either way, but I can't get a foot hold.
So, on a last question, (if I can get Qt Creator compiling) is there a library option I can just include in VS2012 Express and make use of?
Thanks again for the help, I understand Qt does it's own wrappers for OGL things and I wouldn't mind making use of them to create a UI like the example I mentioned, I'm just running out of... everything.
EDIT: So I went ahead and installed VS2010, all 6GB of it... simply restarted Qt, and it compiled the sample 2D Canvas, and a command line hello world I built. So that seems good now.
So I'd ask, back to my above question. My project's already in a C++/OpenGL build from VS2012, what would be the fastest, and noewbie friendly way to give it a Qt UI similar to something like: https://blog.qt.digia.com/blog/2012/04/11/qt-3d-and-qt5-qt4-news-and-releases/ (provided one exists)