令人惊讶的是,我将QWidget切换为QGLWidget,现在我的QPainter :: drawImage调用速度提高了5倍。除了小部件类型,我没有改变任何其他内容。这如何使QPainter调用表现更好?我很高兴它有效,但我只是不明白如何。有什么想法吗?
感谢。
答案 0 :(得分:2)
QGLWidget使用您在系统上可用的OpenGL实现,可以是硬件加速。这取决于您的系统。 Qt小部件可以使用不同的QPaintEngine进行渲染。 您甚至可以尝试使用参数-graphicssystem运行应用程序来更改整个图形系统以使用OpenGL。目前在Qt for Linux Embedded中无法做到这一点。例如,您可以尝试运行animatedtiles示例的差异。 请注意,这并不一定意味着性能会比使用光栅画家更好。这取决于系统的OpenGL实现,如果它只是软件,性能甚至可能更差。
答案 1 :(得分:0)
它使用OpenGL呈现其内容。
答案 2 :(得分:0)
如果它使用OpenGL,它可能也使用硬件加速