diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2019-11-08 11:02:03 +0100 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2019-11-13 07:32:37 +0100 |
commit | 8de836c63eb0a0e484ae4c9e02f0a5f23ef49b65 (patch) | |
tree | 93a67e6c63a799f1fe87e641fa9f754fc2fc568d /tests | |
parent | 53a780960aa5245eb3e534e6bd0c268c050c52fa (diff) |
FilterProximityJob: only run it if our RV requires proximity filtering
Which is only very rarely required by user applications.
Avoid useless memory allocations every frame
Change-Id: I69ea73ebfffdbe928f99333b4d1dd90cf4ada430
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp b/tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp index 1bed9fc44..ad12ffad0 100644 --- a/tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp +++ b/tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp @@ -117,14 +117,20 @@ private Q_SLOTS: { Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity(); - Qt3DCore::QEntity *childEntity1 = new Qt3DCore::QEntity(rootEntity); - Qt3DCore::QEntity *childEntity2 = new Qt3DCore::QEntity(rootEntity); - Qt3DCore::QEntity *childEntity3 = new Qt3DCore::QEntity(rootEntity); + Qt3DCore::QEntity *targetEntity = new Qt3DCore::QEntity(rootEntity); + Qt3DCore::QEntity *childEntity1 = buildEntityAtDistance(50.0f, rootEntity); + Qt3DCore::QEntity *childEntity2 = buildEntityAtDistance(25.0f, rootEntity); + Qt3DCore::QEntity *childEntity3 = buildEntityAtDistance(75.0f, rootEntity); + + Qt3DRender::QProximityFilter *proximityFilter = new Qt3DRender::QProximityFilter(rootEntity); + proximityFilter->setDistanceThreshold(200.0f); + proximityFilter->setEntity(targetEntity); QTest::newRow("ShouldSelectAll") << rootEntity - << Qt3DCore::QNodeIdVector() + << (Qt3DCore::QNodeIdVector() << proximityFilter->id()) << (Qt3DCore::QNodeIdVector() << rootEntity->id() + << targetEntity->id() << childEntity1->id() << childEntity2->id() << childEntity3->id() |