summaryrefslogtreecommitdiffstats
path: root/src/render/frontend/qrenderpass.cpp
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2014-07-30 12:20:55 +0200
committerSean Harmer <sean.harmer@kdab.com>2014-08-14 15:18:01 +0200
commit58593e3788521dadaefb176d0b55d9e0ef3ed1ac (patch)
treee9f40aff678db77145054d921b364634e22c973c /src/render/frontend/qrenderpass.cpp
parent3ae0015989e62230712365f04f4bdd24f13a0e4f (diff)
QAbstractRenderPass / RenderRenderPass shaderProgram notifications
RenderRenderPass references the shader program by its uuid. It also received shader program updates through NodeAdded / NodeRemoved notifications. Change-Id: Ibc80dc24a1a40676997666678da7be3982a25388 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/frontend/qrenderpass.cpp')
-rw-r--r--src/render/frontend/qrenderpass.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/render/frontend/qrenderpass.cpp b/src/render/frontend/qrenderpass.cpp
index 676bc345f..86415af01 100644
--- a/src/render/frontend/qrenderpass.cpp
+++ b/src/render/frontend/qrenderpass.cpp
@@ -73,6 +73,8 @@ QRenderPass *QRenderPass::doClone(QNode *clonedParent) const
Q_FOREACH (QCriterion *crit, d->m_criteriaList)
pass->addCriterion(qobject_cast<QCriterion *>(crit->clone(pass)));
+ pass->d_func()->m_shader = qobject_cast<QShaderProgram *>(d->m_shader->clone(pass));
+
// TO DO : Make QParameterMapper a QNode
// Q_FOREACH (QParameterMapper *mapper, d->m_bindings)
// pass->addBinding(qobject_cast<QParameterMapper *>(mapper->cl));