当Qt使用-no-angle和-no-opengl编译时会发生什么?

7

最近,我尝试使用-no-angle-no-opengl编译我的Qt静态库。起初我认为它不会编译成功。但出乎意料的是,Qt(5.7)编译得非常好。我还可以编译我的应用程序(使用许多QtWidgets)。

令我惊讶的是,我无法看到基于Angle的Qt应用程序有任何区别。没有延迟,没有故障,我的QtCharts一如既往地显示。

我在网上找不到任何确定的答案。但我有两个猜测:

  • 我根本没有使用任何硬件加速。
  • 存在神秘的回退机制。

这里发生了什么?

1个回答

7
在你的情况下会发生什么?什么也不会发生。Qt小部件不会在背后使用OpenGL。您必须通过将QOpenGlWidget作为顶层小部件,在给定的小部件堆栈中显式强制使用它。默认情况下,您正在使用基于CPU的光栅渲染后端 - 正如您所指出的那样,它表现得非常好。
如果您不使用OpenGL,则编译不带角度和OpenGL支持的Qt是使应用程序更小的好方法 :)

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