diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2015-03-27 16:50:28 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2015-05-09 20:07:02 +0000 |
commit | 260ac1d2fd155b6df6fbfdc7019a78882a9c0dce (patch) | |
tree | e091d6e01656a2ae1b16274791269daa4f0ea756 /src/render/frontend | |
parent | e0f623685b0eff1c12c959dbca3b9753c86a0c89 (diff) |
Added QBlendStateSeparate render state
Change-Id: Ifd7254c9a60df3043029229a568de72c0dd4e9fb
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/frontend')
-rw-r--r-- | src/render/frontend/qblendstate.cpp | 14 | ||||
-rw-r--r-- | src/render/frontend/qblendstate.h | 8 | ||||
-rw-r--r-- | src/render/frontend/qrenderstate.h | 1 |
3 files changed, 21 insertions, 2 deletions
diff --git a/src/render/frontend/qblendstate.cpp b/src/render/frontend/qblendstate.cpp index 634e730e5..055cd948e 100644 --- a/src/render/frontend/qblendstate.cpp +++ b/src/render/frontend/qblendstate.cpp @@ -47,8 +47,8 @@ namespace Qt3D { class QBlendStatePrivate : public QRenderStatePrivate { public: - QBlendStatePrivate(QBlendState *qq) - : QRenderStatePrivate(qq, QRenderState::BlendState) + QBlendStatePrivate(QBlendState *qq, QRenderState::Type type = QRenderState::BlendState) + : QRenderStatePrivate(qq, type) , m_srcRGB(QBlendState::Zero) , m_srcAlpha(QBlendState::Zero) , m_dstRGB(QBlendState::Zero) @@ -79,6 +79,11 @@ void QBlendState::copy(const QNode *ref) d_func()->m_dstRGB = refState->d_func()->m_dstRGB; } +QBlendState::QBlendState(QRenderState::Type type, QNode *parent) + : QRenderState(*new QBlendStatePrivate(this, type), parent) +{ +} + QBlendState::Blending QBlendState::srcRGB() const { Q_D(const QBlendState); @@ -139,6 +144,11 @@ void QBlendState::setDstAlpha(QBlendState::Blending dstAlpha) } } +QBlendStateSeparate::QBlendStateSeparate(QNode *parent) + : QBlendState(QRenderState::BlendStateSeparate, parent) +{ +} + } // Qt3D QT_END_NAMESPACE diff --git a/src/render/frontend/qblendstate.h b/src/render/frontend/qblendstate.h index 6284e668e..4f5924a3c 100644 --- a/src/render/frontend/qblendstate.h +++ b/src/render/frontend/qblendstate.h @@ -102,12 +102,20 @@ Q_SIGNALS: protected: void copy(const QNode *ref) Q_DECL_OVERRIDE; + QBlendState(QRenderState::Type type, QNode *parent = 0); private: Q_DECLARE_PRIVATE(QBlendState) QT3D_CLONEABLE(QBlendState) }; +class QT3DRENDERERSHARED_EXPORT QBlendStateSeparate : public QBlendState +{ + Q_OBJECT +public: + explicit QBlendStateSeparate(QNode *parent = 0); +}; + } // Qt3D QT_END_NAMESPACE diff --git a/src/render/frontend/qrenderstate.h b/src/render/frontend/qrenderstate.h index 1aef2d643..400507212 100644 --- a/src/render/frontend/qrenderstate.h +++ b/src/render/frontend/qrenderstate.h @@ -57,6 +57,7 @@ public: AlphaTest, BlendEquation, BlendState, + BlendStateSeparate, ColorMask, CullFace, DepthMask, |