Qt 4.x/5.x和OpenGL用于桌面GUI应用程序:选择哪个模块?

6
我正在启动一个新的GUI应用程序项目,使用Qt和OpenGL来适用于Linux/Windows桌面。 我目前的假设是:使用Qt GUI(C++ ...不是QML / QtQuick 2),与OpenGL 4.1或更高版本(要求)一起使用。经过一些阅读,我完全迷失了选择哪条路线。 哪种路径将使我的应用程序在支持和库方面保持未来可靠?
Qt 4.x还是Qt 5.x? 标准OpenGL还是QGL或QOpenGL或QtOpenGL包装器? QWidget/QGLWidget(Qt 4.x)还是QWindow(Qt 5.x)?
该应用程序旨在在桌面环境中运行,并将执行大量文件(几何)打开/保存,实例化3D绘画和一些图像处理。有人能指出最好的组合并进行解释吗?
Sean Harmer presentation 关于Qt 5和OpenGL的演示回答了我的一些问题,但当他开始使用QML和QtQuick 2时,我有点迷茫。我觉得QOpenGL是与QtQuick 2一起使用的轻量级版本。如果我错了,请纠正我。
1个回答

2
Qt 5.0仍处于测试版阶段,因此如果你的项目比较严肃,建议使用Qt 4.8,因为它是最新的稳定版本。但是,如果你必须使用一些Qt 5.0特性,那么你别无选择,只能使用5.0。
既然你选择了Qt,就应该坚持下去。这意味着你要使用QtOpenGL。但这并不代表你不能使用标准的OpenGL。QtOpenGL为你提供了API来简化一些OpenGL调用,并使它们更具面向对象性。毕竟,OpenGL是一组C函数,而不是一组C++类。

谢谢BЈовић。我将使用QtOpenGL模块/Qt 4.8开始编写代码,并将其移植到Qt 5.0(未来)中,因为一些与QtOpenGL相关的问题打算在Qt 5.1中修复。 - Maiss
另一方面,如果您是OpenGL的新手并想了解API,则直接使用API。 - Michael IV
@MichaelIV 但是如果要直接使用OpenGL的API,我不会使用Qt。我会使用SDL或glut来创建窗口。 - BЈовић
完全不是。我使用Qt与“纯”OpenGL API,因为它具有在GLUT中不存在的GUI功能。我尝试过Qt GL API,但对我来说它看起来太抽象了... - Michael IV

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接