diff options
-rw-r--r-- | src/render/backend/rendersettings.cpp | 13 | ||||
-rw-r--r-- | src/render/backend/rendersettings_p.h | 2 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src/render/backend/rendersettings.cpp b/src/render/backend/rendersettings.cpp index 836666c4d..87ab1f58c 100644 --- a/src/render/backend/rendersettings.cpp +++ b/src/render/backend/rendersettings.cpp @@ -39,9 +39,10 @@ #include "rendersettings_p.h" -#include <Qt3DCore/qscenepropertychange.h> #include <Qt3DRender/QFrameGraphNode> #include <Qt3DRender/private/abstractrenderer_p.h> +#include <Qt3DRender/private/qrendersettings_p.h> +#include <Qt3DCore/qscenepropertychange.h> QT_BEGIN_NAMESPACE @@ -65,6 +66,16 @@ void RenderSettings::updateFromPeer(Qt3DCore::QNode *peer) m_renderPolicy = settings->renderPolicy(); } +void RenderSettings::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) +{ + const auto typedChange = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<QRenderSettingsData>>(change); + const auto &data = typedChange->data; + m_activeFrameGraph = data.activeFrameGraphId; + m_renderPolicy = data.renderPolicy; + m_pickMethod = data.pickMethod; + m_pickResultMode = data.pickResultMode; +} + void RenderSettings::cleanup() { m_pickMethod = QPickingSettings::BoundingVolumePicking; diff --git a/src/render/backend/rendersettings_p.h b/src/render/backend/rendersettings_p.h index 4ca179064..8da81b184 100644 --- a/src/render/backend/rendersettings_p.h +++ b/src/render/backend/rendersettings_p.h @@ -77,6 +77,8 @@ public: QPickingSettings::PickResultMode pickResultMode() const { return m_pickResultMode; } private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) Q_DECL_FINAL; + QRenderSettings::RenderPolicy m_renderPolicy; QPickingSettings::PickMethod m_pickMethod; QPickingSettings::PickResultMode m_pickResultMode; |