diff options
Diffstat (limited to 'src/datavisualization/engine/abstract3drenderer.cpp')
-rw-r--r-- | src/datavisualization/engine/abstract3drenderer.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/datavisualization/engine/abstract3drenderer.cpp b/src/datavisualization/engine/abstract3drenderer.cpp index c44eee7f..1f459930 100644 --- a/src/datavisualization/engine/abstract3drenderer.cpp +++ b/src/datavisualization/engine/abstract3drenderer.cpp @@ -464,8 +464,8 @@ void Abstract3DRenderer::reInitShaders() QStringLiteral(":/shaders/fragmentES2"), QStringLiteral(":/shaders/vertex"), QStringLiteral(":/shaders/fragmentColorOnYES2")); - initBackgroundShaders(QStringLiteral(":/shaders/vertexNoMatrices"), - QStringLiteral(":/shaders/fragmentES2")); + initShaders(QStringLiteral(":/shaders/vertexNoMatrices"), + QStringLiteral(":/shaders/fragmentES2")); } else { initGradientShaders(QStringLiteral(":/shaders/vertex"), QStringLiteral(":/shaders/fragmentColorOnYES2")); @@ -1768,6 +1768,11 @@ void Abstract3DRenderer::queriedGraphPosition(const QMatrix4x4 &projectionViewMa // Restore state glEnable(GL_DITHER); glCullFace(GL_BACK); + + // Note: Zeroing the frame buffer before resetting it is a workaround for flickering that occurs + // during zoom in some environments. + glBindFramebuffer(GL_FRAMEBUFFER, 0); + glBindFramebuffer(GL_FRAMEBUFFER, defaultFboHandle); glViewport(m_primarySubViewport.x(), m_primarySubViewport.y(), |