From e180ab18c1e5dabcbf5965325fb957bd745d4e97 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Mon, 30 Oct 2017 15:21:33 +0100 Subject: Mark layers in the SW rasterizer as opaque if possible If the content of a layer completely covers every pixel of it, mark that layer as opaque so that we can avoid alpha blending where possible. Change-Id: Ia0be4e7a96ecddd31a26f353509de976bcc9e397 Reviewed-by: Eirik Aavitsland Reviewed-by: Volker Krause --- .../scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h') diff --git a/src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h b/src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h index 04a17ea377..c68a933384 100644 --- a/src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h +++ b/src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h @@ -86,6 +86,8 @@ protected: void setBackgroundSize(const QSize &size); QColor backgroundColor(); QSize backgroundSize(); + // only known after calling optimizeRenderList() + bool isOpaque() const { return m_isOpaque; } private: void nodeAdded(QSGNode *node); @@ -102,6 +104,7 @@ private: QRegion m_dirtyRegion; QRegion m_obscuredRegion; + bool m_isOpaque; QSGSoftwareRenderableNodeUpdater *m_nodeUpdater; }; -- cgit v1.2.3