【发布时间】:2016-07-19 18:56:08
【问题描述】:
在 QML 应用程序中 there are 3 rendering types:
- 原生 OpenGL:“桌面”
- 角度 Direct3D:“角度”
- 软件渲染器:“软件”
我们使用支持类型的自动加载机制。
如何以编程方式确定在运行时使用哪种渲染类型?
我知道QT_LOGGING_RULES=qt.qpa.gl=true,但这会产生很多噪音和调试消息,这些消息没有记录在我们的发布版本中。还有其他简单的方法来获取渲染类型吗?
【问题讨论】:
-
“软件”是指通过像 Mesa 的 llvmpipe 这样的软件 OpenGL 渲染器,还是 Qt Quick 的 2D 渲染器?
-
@peppe Mesa 的 llvmpipe 通过随附的 opengl32sw.dll
-
那你能检查一下
GL_VENDOR、GL_VERSION等吗?您将获得 ANGLE、Mesa 等。 -
@peppe 我该怎么做?
glGetString(GL_VENDOR)给了我null(在 Linux 上)。
标签: windows qt opengl qtquick2 qt5.6