diff options
Diffstat (limited to 'tests/auto/render/updateshaderdatatransformjob/tst_updateshaderdatatransformjob.cpp')
-rw-r--r-- | tests/auto/render/updateshaderdatatransformjob/tst_updateshaderdatatransformjob.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/tests/auto/render/updateshaderdatatransformjob/tst_updateshaderdatatransformjob.cpp b/tests/auto/render/updateshaderdatatransformjob/tst_updateshaderdatatransformjob.cpp index 4fe1794dc..0d900a202 100644 --- a/tests/auto/render/updateshaderdatatransformjob/tst_updateshaderdatatransformjob.cpp +++ b/tests/auto/render/updateshaderdatatransformjob/tst_updateshaderdatatransformjob.cpp @@ -70,6 +70,23 @@ QVector<Qt3DCore::QNode *> getNodesForCreation(Qt3DCore::QNode *root) return nodes; } +QVector<Qt3DCore::NodeTreeChange> nodeTreeChangesForNodes(const QVector<Qt3DCore::QNode *> nodes) +{ + QVector<Qt3DCore::NodeTreeChange> nodeTreeChanges; + nodeTreeChanges.reserve(nodes.size()); + + for (Qt3DCore::QNode *n : nodes) { + nodeTreeChanges.push_back({ + n->id(), + Qt3DCore::QNodePrivate::get(n)->m_typeInfo, + Qt3DCore::NodeTreeChange::Added, + n + }); + } + + return nodeTreeChanges; +} + class TestAspect : public Qt3DRender::QRenderAspect { public: @@ -80,7 +97,7 @@ public: Qt3DRender::QRenderAspect::onRegistered(); const QVector<Qt3DCore::QNode *> nodes = getNodesForCreation(root); - d_func()->setRootAndCreateNodes(qobject_cast<Qt3DCore::QEntity *>(root), nodes); + d_func()->setRootAndCreateNodes(qobject_cast<Qt3DCore::QEntity *>(root), nodeTreeChangesForNodes(nodes)); Qt3DRender::Render::Entity *rootEntity = nodeManagers()->lookupResource<Qt3DRender::Render::Entity, Render::EntityManager>(rootEntityId()); Q_ASSERT(rootEntity); |