Qt 的图形技术支持是这样的:
1. QtGui 里面提供了 OpenGL ES2 支持,程序员可以认为,只要 Qt 跑起来就能使用 OpenGL ES2 功能。
在 Windows 平台上有三种情况,如果显卡驱动一切正常,那就使用显卡的 opengl 驱动,如果 opengl 驱动不能用,就使用 ANGLE 库,把 OpenGL 命令转换成 DirectX 命令,效率没太大差别,最后,如果这个 Windows上面压根没显卡驱动(比如刚装完系统的时候),会使用一个软的 OpenGL 实现来渲染。
2. QtWidgets 实际并不会使用这个 OpenGL 功能,所以虽然默认提供了,并没有什么卵用。布署的时候不用考虑。编译的时候也不用考虑,反正都是通过 LoadLibary() 来调用的,不需要相关的头文件。
3. QtQuick,也就是楼主说的 QML,不止会使用 OpenGL 来渲染,还支持用 DirectX/Vulkan 来渲染。但总是优先使用 OpenGL,程序员要手动设置一个选项。
4. 很多例外,比如程序员可以强制禁用 opengl 或者强制用 directx,这些都是在 configure 命令行里面设置,属于裁剪 qt 的知识。具体的自己看文档吧。
【 在 z16166 (Netguy) 的大作中提到: 】
: OpenGL驱动兼容性咋样,感觉windows上如果能用directx渲染更好
--
修改:hgoldfish FROM 117.24.206.*
FROM 117.24.206.*