diff options
author | Tomi Korpipää <tomi.korpipaa@digia.com> | 2014-09-15 12:45:03 +0300 |
---|---|---|
committer | Tomi Korpipää <tomi.korpipaa@digia.com> | 2014-09-15 12:49:58 +0300 |
commit | 9cc5a9f312dfb982044f5756bb5b857657378b02 (patch) | |
tree | 29c1660af1089ffdb2e636ffcdf10ae6e63489cb /src | |
parent | 637fd9964133c4e60d9ffad32cf5307836397aad (diff) |
Fixed renderToImage for ES2
Task-number: QTRD-3305
Change-Id: I656cc878e6e83fe09d627b418f9cf624672a18b3
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/datavisualization/engine/qabstract3dgraph.cpp | 6 | ||||
-rw-r--r-- | src/datavisualization/utils/qutils.h | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/datavisualization/engine/qabstract3dgraph.cpp b/src/datavisualization/engine/qabstract3dgraph.cpp index 03eeedf6..a1cd7c56 100644 --- a/src/datavisualization/engine/qabstract3dgraph.cpp +++ b/src/datavisualization/engine/qabstract3dgraph.cpp @@ -545,6 +545,8 @@ QAbstract3DGraph::ElementType QAbstract3DGraph::selectedElement() const * \since QtDataVisualization 1.1 * * \return rendered image. + * + * \note OpenGL ES2 does not support anitialiasing, so \a msaaSamples is always forced to \c{0}. */ QImage QAbstract3DGraph::renderToImage(int msaaSamples, const QSize &imageSize) { @@ -975,8 +977,12 @@ QImage QAbstract3DGraphPrivate::renderToImage(int msaaSamples, const QSize &imag // Render the wanted frame offscreen m_context->makeCurrent(m_offscreenSurface); fboFormat.setAttachment(QOpenGLFramebufferObject::CombinedDepthStencil); +#ifdef QT_OPENGL_ES_2 + Q_UNUSED(msaaSamples); +#else fboFormat.setInternalTextureFormat(GL_RGB); fboFormat.setSamples(msaaSamples); +#endif fbo = new QOpenGLFramebufferObject(imageSize, fboFormat); if (fbo->isValid()) { QRect originalViewport = m_visualController->m_scene->viewport(); diff --git a/src/datavisualization/utils/qutils.h b/src/datavisualization/utils/qutils.h index b4ac17b4..92bd632c 100644 --- a/src/datavisualization/utils/qutils.h +++ b/src/datavisualization/utils/qutils.h @@ -36,10 +36,16 @@ inline static QSurfaceFormat qDefaultSurfaceFormat(bool antialias = true) // Antialias not supported for ES antialias = false; surfaceFormat.setRenderableType(QSurfaceFormat::OpenGLES); + surfaceFormat.setAlphaBufferSize(8); + surfaceFormat.setRedBufferSize(8); + surfaceFormat.setBlueBufferSize(8); + surfaceFormat.setGreenBufferSize(8); #endif if (antialias) surfaceFormat.setSamples(8); + else + surfaceFormat.setSamples(0); return surfaceFormat; } |