14

我正在尝试在 Windows 上使用 Qt 库。在他们的下载页面上,我注意到使用 VS2012 构建的二进制文件有两种形式,有和没有 OpenGL。两者之间究竟有什么区别?在 OpenGL 版本中,他们是否有一些使用 OpenGL 实现的特殊 API 或者所有 Qt 渲染都依赖于 OpenGL?另外,是否有使用 DirectX 的 Qt 版本?

4

3 回答 3

9

@Raman:opengl 变体使用桌面opengl 版本,就像Qt4 一样。

非 opengl 变体使用角度,您需要将其与 DirectX SDK 一起安装才能使其工作。Angle 是 directx 和 opengles API 之间的适配器。Qt 直接支持后者,但不幸的是,directx 驱动程序在 Windows 上的工作往往比 opengl(es) 更好。没有计划在 Qt 中支持 directx 后端,所以我们离开了 Google 在这方面的 Angle 工作。

至于提供一些额外的位,最近在邮件列表上有一个讨论,这个决定不应该是构建时间,而更像是运行时间。然而,还没有人站出来完成这项工作。希望这会很快改变。它给最终用户带来了困惑,所以不要感到孤单。;-)

希望这个解释有所帮助。

于 2013-08-14T19:54:04.633 回答
2

DirectX 通过基于ANGLE的库得到支持。

于 2013-08-07T21:05:26.347 回答
1

请注意,这已更改,从 Qt 5.5 开始,您可以从 Qt 网站下载的预构建二进制文件配置了 -opengl 动态选项。这就是上面@lpapp 所说的。Qt 现在默认在运行时选择原生 OpenGL 驱动程序或 ANGLE。

除非您现在另外指定,否则 Qt 在内部使用 OpenGL 进行渲染。您还可以使用 Qt 的 QOpenGLxxx 函数和类来渲染自定义 OpenGL 内容。

有关涵盖此内容和更多内容的 Qt 和 OpenGL 的简单介绍,请单击此处。

于 2015-11-24T22:14:17.463 回答