5

我最近注意到有一个新版本的 Qt。我没有任何使用它开发游戏或应用程序的个人经验,但我正在寻找一种 API 或框架,可以简化我的应用程序的 GUI 创建,用 C++ 和 OpenGL 编写。在这个阶段我不太担心跨平台,但这是我将来可以从中受益的东西。

我知道 Qt 的真正优势在于它的灵活性和跨平台功能。显然,这是需要权衡的;对主循环的控制较少。

我花了几天时间翻阅文章和博客,并没有真正看到太多关于 Qt 5 的信息,关于 Qt 的其余信息似乎表明它不是 3D 游戏的好选择。我想进行讨论,因为我发现的大多数信息似乎都已经过时了。

所以我想我的问题是:

  • Qt 是否适用于 3D 应用程序/游戏开发?

  • 例如,如果我想制作一个 3D 应用程序,该应用程序具有多个具有相关 GUI 的视口,并且一个视口通过某种程度的 3D 纹理和多个通道/着色器渲染相对大量的多边形(比如 600 万个)。我可以使用 Qt 吗?

根据我的阅读,使用 Qt 的 GUI 元素似乎需要大量的 CPU 时间。我认识到你可以在你的程序中进行优化,但是 Qt 的 GUI 是一个很大的优势,如果我不能利用它,我真的不想使用 Qt。

4

1 回答 1

5

Qt 的 OpenGL 小部件只为您在 SDL、GLFW、GLUT 等中找到的代码提供平台包装器......

除非您使用 QOpenGL API(通过 Qt API 使用 OpenGL 进行绘制),否则您的应用程序的性能不会受到 Qt shell 的阻碍。

如果您只使用 Qt 设置 OpenGL 上下文,并直接在 OpenGL 中编写 3D 应用程序的其余部分,那么 Qt 与任何事情无关。一旦它建立了一个 OpenGL 上下文,剩下的(渲染的)就留给 OpenGL 本身了。

话虽如此,StackOverflow 不是一个讨论论坛。

于 2013-03-18T12:38:17.720 回答