我已经编写了一个具有大量代码库(大约30k行)的应用程序,有时,当它占用大量cpu时,shell输出会填充以下内容:QPainter::setCompositionMode: Painter not activeQPainter::setRenderHint:Painter must be active to set rendering hints
QPainter</
我看到了很多关于如何在QOpenGLWidget上并行使用OpenGL和着色器以及QPainter的问题。例如、和。
我发现在使用QPainter、原生OpenGL代码和着色器时,会有很多问题。有时只渲染QPainter内容,有时只渲染存储在VertexArrayObjects中的内容,或者渲染使用glVertex()设置顶点的“旧方法”。我设法构建了一个非常小的解决方案,它只修改了QPainter的用法,以并行使用每3个绘制方法。结果是,您可以在paintGL()-pipeline of QOpenGLWidget中的任