我通过QGraphicsProxyWidget将QOpenGLWidget添加到了QGraphicsView中(不使用setviewport):
QSurfaceFormat format= QSurfaceFormat();
format->setSamples(4); //<== widget show black screen if samples =4, 1 is ok but not antialiasing
m_glWidget->setFormat(format);
MyGraphicsProxyWidget* proxy= new MyGraphicsProxyWidget();
proxy->setWidget(m_glWidget);
//add to scene
scene->addItem(proxy);
我尝试了一些方法,但都没有成功: 如果samples = 4,则glwidget会显示黑屏,但是samples = 1可以正常显示但没有抗锯齿效果。 那么如何在QGraphicsView中启用抗锯齿效果的QOpenGLWidget(由GraphicsproxyWidget添加)?
有帮助吗?谢谢!
view.setRenderHints(QPainter::Antialiasing)
吗? - Pavel Strakhov