diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2018-03-12 08:32:35 +0100 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2020-02-05 11:33:49 +0100 |
commit | 0e115ff000fb294de8519bf5b39beee0d6bfa605 (patch) | |
tree | c66c1f19ad5e4b7fc4f3be7951fa74d1d4df64bb /tests | |
parent | f1f387c22dac8748a7edb1f4aa1ea6dac7dfbdfd (diff) |
Make the OpenGL renderer a plugin
By default the QRenderAspect will try to load this plugin
Change-Id: Ie55e207fb8e6d0b64f717bbb99699eb669eaa3f2
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Diffstat (limited to 'tests')
47 files changed, 309 insertions, 158 deletions
diff --git a/tests/auto/render/computecommand/tst_computecommand.cpp b/tests/auto/render/computecommand/tst_computecommand.cpp index 4dc6b4436..d6fa1d579 100644 --- a/tests/auto/render/computecommand/tst_computecommand.cpp +++ b/tests/auto/render/computecommand/tst_computecommand.cpp @@ -31,7 +31,6 @@ #include <Qt3DRender/qcomputecommand.h> #include <Qt3DRender/private/qcomputecommand_p.h> #include <Qt3DRender/private/computecommand_p.h> -#include <Qt3DRender/private/renderer_p.h> #include <Qt3DRender/private/nodemanagers_p.h> #include <Qt3DRender/private/managers_p.h> #include <Qt3DCore/private/qbackendnode_p.h> @@ -43,20 +42,6 @@ #include "testpostmanarbiter.h" -// tst_Renderer is a friend class of Renderer -class tst_Renderer : public Qt3DRender::Render::Renderer -{ -public: - tst_Renderer() - : Qt3DRender::Render::Renderer(Qt3DRender::QRenderAspect::Synchronous) - {} - - ~tst_Renderer() { - shutdown(); - } -}; - - class tst_ComputeCommand : public Qt3DCore::QBackendNodeTester { Q_OBJECT @@ -271,80 +256,6 @@ private Q_SLOTS: QCOMPARE(backendComputeCommand.hasReachedFrameCount(), false); QCOMPARE(backendComputeCommand.frameCount(), 1); } - - void checkDisablesFrontend() - { - // GIVEN - Qt3DRender::Render::NodeManagers nodeManager; - tst_Renderer renderer; - TestArbiter arbiter; - - Qt3DCore::QAspectManager manager; - Qt3DCore::QScene scene; - - Qt3DCore::QEntity rootEntity; - Qt3DCore::QNodePrivate::get(&rootEntity)->setScene(&scene); - - Qt3DRender::QComputeCommand computeCommand; - Qt3DRender::Render::ComputeCommand *backendComputeCommand = nullptr; - - renderer.setNodeManagers(&nodeManager); - - // WHEN - computeCommand.setParent(&rootEntity); - // RootEntity is the entry point to retrieve the scene instance for lookups - manager.setRootEntity(&rootEntity, {}); - - // THEN - QVERIFY(scene.lookupNode(computeCommand.id()) != nullptr); - - // WHEN - auto handle = nodeManager.computeJobManager()->getOrAcquireHandle(computeCommand.id()); - backendComputeCommand = nodeManager.computeJobManager()->data(handle); - - // WHEN - computeCommand.setWorkGroupX(256); - computeCommand.setWorkGroupY(512); - computeCommand.setWorkGroupZ(128); - computeCommand.setRunType(Qt3DRender::QComputeCommand::Manual); - computeCommand.trigger(1); - - Qt3DCore::QBackendNodePrivate::get(backendComputeCommand)->setArbiter(&arbiter); - backendComputeCommand->setRenderer(&renderer); - simulateInitializationSync(&computeCommand, backendComputeCommand); - - // THEN - QCOMPARE(backendComputeCommand->frameCount(),1); - QCOMPARE(backendComputeCommand->isEnabled(), true); - QCOMPARE(computeCommand.isEnabled(), true); - QCOMPARE(backendComputeCommand->hasReachedFrameCount(), false); - - // WHEN - backendComputeCommand->updateFrameCount(); - - // THEN - QCOMPARE(backendComputeCommand->frameCount(), 0); - QCOMPARE(backendComputeCommand->hasReachedFrameCount(), true); - - - // Still enabled as we have yet to notify the fronted - QCOMPARE(backendComputeCommand->isEnabled(), true); - QCOMPARE(computeCommand.isEnabled(), true); - - // WHEN - renderer.jobsDone(&manager); // so Renderer::sendDisablesToFrontend gets called - - // THEN - QCOMPARE(computeCommand.isEnabled(), false); - QCOMPARE(backendComputeCommand->hasReachedFrameCount(), false); - - // WHEN - backendComputeCommand->syncFromFrontEnd(&computeCommand, false); - - // THEN - QCOMPARE(backendComputeCommand->frameCount(), 0); - QCOMPARE(backendComputeCommand->isEnabled(), false); - } }; QTEST_MAIN(tst_ComputeCommand) diff --git a/tests/auto/render/effect/tst_effect.cpp b/tests/auto/render/effect/tst_effect.cpp index 369cdf793..2b145669e 100644 --- a/tests/auto/render/effect/tst_effect.cpp +++ b/tests/auto/render/effect/tst_effect.cpp @@ -33,7 +33,6 @@ #include <Qt3DRender/qparameter.h> #include <Qt3DRender/private/qeffect_p.h> #include <Qt3DRender/private/effect_p.h> -#include <Qt3DRender/private/shaderparameterpack_p.h> #include "qbackendnodetester.h" #include "testrenderer.h" diff --git a/tests/auto/render/layerfiltering/tst_layerfiltering.cpp b/tests/auto/render/layerfiltering/tst_layerfiltering.cpp index 255ff5ea8..1ffec30ae 100644 --- a/tests/auto/render/layerfiltering/tst_layerfiltering.cpp +++ b/tests/auto/render/layerfiltering/tst_layerfiltering.cpp @@ -32,6 +32,7 @@ #include <Qt3DRender/private/managers_p.h> #include <Qt3DRender/private/entity_p.h> #include <Qt3DRender/private/filterlayerentityjob_p.h> +#include <Qt3DRender/private/updateentitylayersjob_p.h> #include <Qt3DRender/private/updatetreeenabledjob_p.h> #include <Qt3DRender/qlayer.h> #include <Qt3DRender/qlayerfilter.h> diff --git a/tests/auto/render/opengl/computecommand/computecommand.pro b/tests/auto/render/opengl/computecommand/computecommand.pro new file mode 100644 index 000000000..38515059a --- /dev/null +++ b/tests/auto/render/opengl/computecommand/computecommand.pro @@ -0,0 +1,15 @@ +TEMPLATE = app + +TARGET = tst_computecommand + +QT += 3dcore 3dcore-private 3drender 3drender-private testlib + +CONFIG += testcase + +SOURCES += tst_computecommand.cpp + +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/opengl/computecommand/tst_computecommand.cpp b/tests/auto/render/opengl/computecommand/tst_computecommand.cpp new file mode 100644 index 000000000..80cbfb090 --- /dev/null +++ b/tests/auto/render/opengl/computecommand/tst_computecommand.cpp @@ -0,0 +1,143 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include <QtTest/QTest> +#include <Qt3DRender/qcomputecommand.h> +#include <Qt3DRender/private/qcomputecommand_p.h> +#include <Qt3DRender/private/computecommand_p.h> +#include <Qt3DRender/private/nodemanagers_p.h> +#include <Qt3DRender/private/managers_p.h> +#include <Qt3DCore/private/qbackendnode_p.h> +#include <Qt3DCore/private/qaspectmanager_p.h> +#include <Qt3DCore/private/qscene_p.h> +#include <Qt3DCore/qpropertyupdatedchange.h> +#include <renderer_p.h> +#include "qbackendnodetester.h" +#include "testrenderer.h" +#include "testpostmanarbiter.h" + + +// tst_Renderer is a friend class of Renderer +class tst_Renderer : public Qt3DRender::Render::Renderer +{ +public: + tst_Renderer() + : Qt3DRender::Render::Renderer(Qt3DRender::QRenderAspect::Synchronous) + {} + + ~tst_Renderer() { + shutdown(); + } +}; + + +class tst_ComputeCommand : public Qt3DCore::QBackendNodeTester +{ + Q_OBJECT + +private Q_SLOTS: + + void checkDisablesFrontend() + { + // GIVEN + Qt3DRender::Render::NodeManagers nodeManager; + tst_Renderer renderer; + TestArbiter arbiter; + + Qt3DCore::QAspectManager manager; + Qt3DCore::QScene scene; + + Qt3DCore::QEntity rootEntity; + Qt3DCore::QNodePrivate::get(&rootEntity)->setScene(&scene); + + Qt3DRender::QComputeCommand computeCommand; + Qt3DRender::Render::ComputeCommand *backendComputeCommand = nullptr; + + renderer.setNodeManagers(&nodeManager); + + // WHEN + computeCommand.setParent(&rootEntity); + // RootEntity is the entry point to retrieve the scene instance for lookups + manager.setRootEntity(&rootEntity, {}); + + // THEN + QVERIFY(scene.lookupNode(computeCommand.id()) != nullptr); + + // WHEN + auto handle = nodeManager.computeJobManager()->getOrAcquireHandle(computeCommand.id()); + backendComputeCommand = nodeManager.computeJobManager()->data(handle); + + // WHEN + computeCommand.setWorkGroupX(256); + computeCommand.setWorkGroupY(512); + computeCommand.setWorkGroupZ(128); + computeCommand.setRunType(Qt3DRender::QComputeCommand::Manual); + computeCommand.trigger(1); + + Qt3DCore::QBackendNodePrivate::get(backendComputeCommand)->setArbiter(&arbiter); + backendComputeCommand->setRenderer(&renderer); + simulateInitializationSync(&computeCommand, backendComputeCommand); + + // THEN + QCOMPARE(backendComputeCommand->frameCount(),1); + QCOMPARE(backendComputeCommand->isEnabled(), true); + QCOMPARE(computeCommand.isEnabled(), true); + QCOMPARE(backendComputeCommand->hasReachedFrameCount(), false); + + // WHEN + backendComputeCommand->updateFrameCount(); + + // THEN + QCOMPARE(backendComputeCommand->frameCount(), 0); + QCOMPARE(backendComputeCommand->hasReachedFrameCount(), true); + + + // Still enabled as we have yet to notify the fronted + QCOMPARE(backendComputeCommand->isEnabled(), true); + QCOMPARE(computeCommand.isEnabled(), true); + + // WHEN + renderer.jobsDone(&manager); // so Renderer::sendDisablesToFrontend gets called + + // THEN + QCOMPARE(computeCommand.isEnabled(), false); + QCOMPARE(backendComputeCommand->hasReachedFrameCount(), false); + + // WHEN + backendComputeCommand->syncFromFrontEnd(&computeCommand, false); + + // THEN + QCOMPARE(backendComputeCommand->frameCount(), 0); + QCOMPARE(backendComputeCommand->isEnabled(), false); + } +}; + +QTEST_MAIN(tst_ComputeCommand) + +#include "tst_computecommand.moc" diff --git a/tests/auto/render/filtercompatibletechniquejob/BLACKLIST b/tests/auto/render/opengl/filtercompatibletechniquejob/BLACKLIST index 7cbc7c4c0..7cbc7c4c0 100644 --- a/tests/auto/render/filtercompatibletechniquejob/BLACKLIST +++ b/tests/auto/render/opengl/filtercompatibletechniquejob/BLACKLIST diff --git a/tests/auto/render/filtercompatibletechniquejob/filtercompatibletechniquejob.pro b/tests/auto/render/opengl/filtercompatibletechniquejob/filtercompatibletechniquejob.pro index 4f63e514b..5d533839c 100644 --- a/tests/auto/render/filtercompatibletechniquejob/filtercompatibletechniquejob.pro +++ b/tests/auto/render/opengl/filtercompatibletechniquejob/filtercompatibletechniquejob.pro @@ -8,5 +8,8 @@ CONFIG += testcase SOURCES += tst_filtercompatibletechniquejob.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/filtercompatibletechniquejob/tst_filtercompatibletechniquejob.cpp b/tests/auto/render/opengl/filtercompatibletechniquejob/tst_filtercompatibletechniquejob.cpp index 618709269..8b9390340 100644 --- a/tests/auto/render/filtercompatibletechniquejob/tst_filtercompatibletechniquejob.cpp +++ b/tests/auto/render/opengl/filtercompatibletechniquejob/tst_filtercompatibletechniquejob.cpp @@ -35,12 +35,12 @@ #include <Qt3DRender/qtechnique.h> #include <Qt3DRender/qviewport.h> #include <Qt3DRender/private/technique_p.h> -#include <Qt3DRender/private/filtercompatibletechniquejob_p.h> #include <Qt3DRender/private/nodemanagers_p.h> -#include <Qt3DRender/private/renderer_p.h> -#include <Qt3DRender/private/submissioncontext_p.h> #include <Qt3DRender/private/qrenderaspect_p.h> #include <Qt3DRender/private/techniquemanager_p.h> +#include <renderer_p.h> +#include <submissioncontext_p.h> +#include <filtercompatibletechniquejob_p.h> QT_BEGIN_NAMESPACE diff --git a/tests/auto/render/glshadermanager/glshadermanager.pro b/tests/auto/render/opengl/glshadermanager/glshadermanager.pro index 27aadf84f..dc96ab3bb 100644 --- a/tests/auto/render/glshadermanager/glshadermanager.pro +++ b/tests/auto/render/opengl/glshadermanager/glshadermanager.pro @@ -8,5 +8,8 @@ CONFIG += testcase SOURCES += tst_glshadermanager.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/glshadermanager/tst_glshadermanager.cpp b/tests/auto/render/opengl/glshadermanager/tst_glshadermanager.cpp index c18fb4793..83420af3b 100644 --- a/tests/auto/render/glshadermanager/tst_glshadermanager.cpp +++ b/tests/auto/render/opengl/glshadermanager/tst_glshadermanager.cpp @@ -27,7 +27,7 @@ ****************************************************************************/ #include <QtTest/QTest> -#include <Qt3DRender/private/glresourcemanagers_p.h> +#include <glresourcemanagers_p.h> #include <Qt3DCore/qnodeid.h> #include "qbackendnodetester.h" #include "testrenderer.h" diff --git a/tests/auto/render/graphicshelpergl2/graphicshelpergl2.pro b/tests/auto/render/opengl/graphicshelpergl2/graphicshelpergl2.pro index b27060635..eb8ba7f04 100644 --- a/tests/auto/render/graphicshelpergl2/graphicshelpergl2.pro +++ b/tests/auto/render/opengl/graphicshelpergl2/graphicshelpergl2.pro @@ -9,5 +9,8 @@ CONFIG += testcase SOURCES += \ tst_graphicshelpergl2.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/graphicshelpergl2/tst_graphicshelpergl2.cpp b/tests/auto/render/opengl/graphicshelpergl2/tst_graphicshelpergl2.cpp index ffafc2312..0a43a3040 100644 --- a/tests/auto/render/graphicshelpergl2/tst_graphicshelpergl2.cpp +++ b/tests/auto/render/opengl/graphicshelpergl2/tst_graphicshelpergl2.cpp @@ -29,7 +29,7 @@ #include <QtTest/QTest> #include <Qt3DRender/qrendertargetoutput.h> #include <Qt3DRender/private/uniform_p.h> -#include <Qt3DRender/private/graphicshelpergl2_p.h> +#include <graphicshelpergl2_p.h> #include <Qt3DRender/private/attachmentpack_p.h> #include <QtOpenGLExtensions/QOpenGLExtensions> #include <QOpenGLContext> diff --git a/tests/auto/render/graphicshelpergl3_2/graphicshelpergl3_2.pro b/tests/auto/render/opengl/graphicshelpergl3_2/graphicshelpergl3_2.pro index 5d8bf60fd..a613f1279 100644 --- a/tests/auto/render/graphicshelpergl3_2/graphicshelpergl3_2.pro +++ b/tests/auto/render/opengl/graphicshelpergl3_2/graphicshelpergl3_2.pro @@ -9,5 +9,8 @@ CONFIG += testcase SOURCES += \ tst_graphicshelpergl3_2.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/graphicshelpergl3_2/tst_graphicshelpergl3_2.cpp b/tests/auto/render/opengl/graphicshelpergl3_2/tst_graphicshelpergl3_2.cpp index 840a7f6da..a4a59d7c4 100644 --- a/tests/auto/render/graphicshelpergl3_2/tst_graphicshelpergl3_2.cpp +++ b/tests/auto/render/opengl/graphicshelpergl3_2/tst_graphicshelpergl3_2.cpp @@ -29,7 +29,7 @@ #include <QtTest/QTest> #include <Qt3DRender/qrendertargetoutput.h> #include <Qt3DRender/private/uniform_p.h> -#include <Qt3DRender/private/graphicshelpergl3_2_p.h> +#include <graphicshelpergl3_2_p.h> #include <Qt3DRender/private/attachmentpack_p.h> #include <QOpenGLBuffer> #include <QOpenGLFunctions_3_2_Core> diff --git a/tests/auto/render/graphicshelpergl3_3/graphicshelpergl3_3.pro b/tests/auto/render/opengl/graphicshelpergl3_3/graphicshelpergl3_3.pro index 36bda15b2..5ef0b6806 100644 --- a/tests/auto/render/graphicshelpergl3_3/graphicshelpergl3_3.pro +++ b/tests/auto/render/opengl/graphicshelpergl3_3/graphicshelpergl3_3.pro @@ -9,5 +9,8 @@ CONFIG += testcase SOURCES += \ tst_graphicshelpergl3_3.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/graphicshelpergl3_3/tst_graphicshelpergl3_3.cpp b/tests/auto/render/opengl/graphicshelpergl3_3/tst_graphicshelpergl3_3.cpp index 874c83f0b..3e4a052ba 100644 --- a/tests/auto/render/graphicshelpergl3_3/tst_graphicshelpergl3_3.cpp +++ b/tests/auto/render/opengl/graphicshelpergl3_3/tst_graphicshelpergl3_3.cpp @@ -29,8 +29,8 @@ #include <QtTest/QTest> #include <Qt3DRender/qrendertargetoutput.h> #include <Qt3DRender/private/uniform_p.h> -#include <Qt3DRender/private/graphicshelpergl3_3_p.h> #include <Qt3DRender/private/attachmentpack_p.h> +#include <graphicshelpergl3_3_p.h> #include <QOpenGLBuffer> #include <QOpenGLFunctions_3_3_Core> #include <QOpenGLShaderProgram> diff --git a/tests/auto/render/graphicshelpergl4/graphicshelpergl4.pro b/tests/auto/render/opengl/graphicshelpergl4/graphicshelpergl4.pro index b20d1afec..5ea881208 100644 --- a/tests/auto/render/graphicshelpergl4/graphicshelpergl4.pro +++ b/tests/auto/render/opengl/graphicshelpergl4/graphicshelpergl4.pro @@ -9,5 +9,8 @@ CONFIG += testcase SOURCES += \ tst_graphicshelpergl4.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/graphicshelpergl4/tst_graphicshelpergl4.cpp b/tests/auto/render/opengl/graphicshelpergl4/tst_graphicshelpergl4.cpp index 6e5c54303..31024e1db 100644 --- a/tests/auto/render/graphicshelpergl4/tst_graphicshelpergl4.cpp +++ b/tests/auto/render/opengl/graphicshelpergl4/tst_graphicshelpergl4.cpp @@ -29,8 +29,8 @@ #include <QtTest/QTest> #include <Qt3DRender/qrendertargetoutput.h> #include <Qt3DRender/private/uniform_p.h> -#include <Qt3DRender/private/graphicshelpergl4_p.h> #include <Qt3DRender/private/attachmentpack_p.h> +#include <graphicshelpergl4_p.h> #include <QOpenGLBuffer> #include <QOpenGLFunctions_4_3_Core> #include <QOpenGLShaderProgram> diff --git a/tests/auto/render/materialparametergathererjob/materialparametergathererjob.pro b/tests/auto/render/opengl/materialparametergathererjob/materialparametergathererjob.pro index ac68b8248..106e7a263 100644 --- a/tests/auto/render/materialparametergathererjob/materialparametergathererjob.pro +++ b/tests/auto/render/opengl/materialparametergathererjob/materialparametergathererjob.pro @@ -8,4 +8,7 @@ CONFIG += testcase SOURCES += tst_materialparametergathererjob.cpp -include(../commons/commons.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/materialparametergathererjob/tst_materialparametergathererjob.cpp b/tests/auto/render/opengl/materialparametergathererjob/tst_materialparametergathererjob.cpp index 236faa8f0..e6b78c47b 100644 --- a/tests/auto/render/materialparametergathererjob/tst_materialparametergathererjob.cpp +++ b/tests/auto/render/opengl/materialparametergathererjob/tst_materialparametergathererjob.cpp @@ -36,16 +36,18 @@ #include <Qt3DRender/private/nodemanagers_p.h> #include <Qt3DRender/private/managers_p.h> #include <Qt3DRender/private/entity_p.h> -#include <Qt3DRender/private/materialparametergathererjob_p.h> +#include <materialparametergathererjob_p.h> #include <Qt3DRender/private/techniquefilternode_p.h> #include <Qt3DRender/private/technique_p.h> #include <Qt3DRender/private/techniquemanager_p.h> #include <Qt3DRender/private/renderpassfilternode_p.h> +#include <Qt3DRender/qrendersettings.h> #include <Qt3DRender/qrenderaspect.h> #include <Qt3DRender/qeffect.h> #include <Qt3DRender/qmaterial.h> #include <Qt3DRender/qparameter.h> #include <Qt3DRender/qtechniquefilter.h> +#include <Qt3DRender/qtechnique.h> #include <Qt3DRender/qrenderpassfilter.h> #include <Qt3DRender/qrenderpass.h> #include <Qt3DRender/qshaderprogram.h> diff --git a/tests/auto/render/opengl/opengl.pro b/tests/auto/render/opengl/opengl.pro new file mode 100644 index 000000000..5299ebd36 --- /dev/null +++ b/tests/auto/render/opengl/opengl.pro @@ -0,0 +1,19 @@ +TEMPLATE = subdirs + +SUBDIRS += \ + filtercompatibletechniquejob \ + graphicshelpergl3_3 \ + graphicshelpergl3_2 \ + graphicshelpergl2 \ + glshadermanager \ + materialparametergathererjob \ + textures \ + renderer \ + renderviewutils \ + renderviews \ + renderqueue \ + renderviewbuilder \ + qgraphicsutils \ + computecommand + +!macos: SUBDIRS += graphicshelpergl4 diff --git a/tests/auto/render/opengl/opengl_render_plugin.pri b/tests/auto/render/opengl/opengl_render_plugin.pri new file mode 100644 index 000000000..50fade878 --- /dev/null +++ b/tests/auto/render/opengl/opengl_render_plugin.pri @@ -0,0 +1,18 @@ +# Found no way of having the test runner include the correct +# library path as runtime + +#PLUGIN_SRC_PATH = $$PWD/../../../../src/plugins/renderers/opengl + +#INCLUDEPATH += \ +# $$PLUGIN_SRC_PATH/graphicshelpers \ +# $$PLUGIN_SRC_PATH/io \ +# $$PLUGIN_SRC_PATH/jobs \ +# $$PLUGIN_SRC_PATH/managers \ +# $$PLUGIN_SRC_PATH/renderer \ +# $$PLUGIN_SRC_PATH/renderstates \ +# $$PLUGIN_SRC_PATH/textures + +#LIBS += -L$$[QT_INSTALL_PLUGINS]/renderers/ -lopenglrenderer + +# Instead we link against the sources directly +include(../../../../src/plugins/renderers/opengl/opengl.pri) diff --git a/tests/auto/render/qgraphicsutils/qgraphicsutils.pro b/tests/auto/render/opengl/qgraphicsutils/qgraphicsutils.pro index 031a26246..8c936c527 100644 --- a/tests/auto/render/qgraphicsutils/qgraphicsutils.pro +++ b/tests/auto/render/opengl/qgraphicsutils/qgraphicsutils.pro @@ -7,3 +7,6 @@ QT += 3dcore 3dcore-private 3drender 3drender-private testlib CONFIG += testcase SOURCES += tst_qgraphicsutils.cpp + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/qgraphicsutils/tst_qgraphicsutils.cpp b/tests/auto/render/opengl/qgraphicsutils/tst_qgraphicsutils.cpp index e3676ad3b..2e0dd0f96 100644 --- a/tests/auto/render/qgraphicsutils/tst_qgraphicsutils.cpp +++ b/tests/auto/render/opengl/qgraphicsutils/tst_qgraphicsutils.cpp @@ -27,7 +27,7 @@ ****************************************************************************/ #include <QtTest/QtTest> -#include <private/qgraphicsutils_p.h> +#include <qgraphicsutils_p.h> class tst_QGraphicsUtils : public QObject { diff --git a/tests/auto/render/renderer/renderer.pro b/tests/auto/render/opengl/renderer/renderer.pro index cbafc156b..d481c7b9e 100644 --- a/tests/auto/render/renderer/renderer.pro +++ b/tests/auto/render/opengl/renderer/renderer.pro @@ -7,3 +7,6 @@ QT += 3dcore 3dcore-private 3drender 3drender-private testlib CONFIG += testcase SOURCES += tst_renderer.cpp + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/renderer/tst_renderer.cpp b/tests/auto/render/opengl/renderer/tst_renderer.cpp index 0cbc1aefc..6aed6ed5f 100644 --- a/tests/auto/render/renderer/tst_renderer.cpp +++ b/tests/auto/render/opengl/renderer/tst_renderer.cpp @@ -30,13 +30,12 @@ #include <QMutex> #include <QWaitCondition> #include <QThread> -#include <Qt3DRender/private/renderer_p.h> #include <Qt3DRender/private/viewportnode_p.h> -#include <Qt3DRender/private/renderview_p.h> -#include <Qt3DRender/private/renderviewbuilder_p.h> +#include <renderer_p.h> +#include <renderview_p.h> +#include <renderviewbuilder_p.h> #include <Qt3DRender/private/offscreensurfacehelper_p.h> -#include <Qt3DRender/private/renderqueue_p.h> -#include <Qt3DRender/private/job_common_p.h> +#include <renderqueue_p.h> class tst_Renderer : public QObject { diff --git a/tests/auto/render/renderqueue/renderqueue.pro b/tests/auto/render/opengl/renderqueue/renderqueue.pro index 945fe4cf4..19106ba92 100644 --- a/tests/auto/render/renderqueue/renderqueue.pro +++ b/tests/auto/render/opengl/renderqueue/renderqueue.pro @@ -8,4 +8,7 @@ CONFIG += testcase SOURCES += tst_renderqueue.cpp -include(../../core/common/common.pri) +include(../../../core/common/common.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/renderqueue/tst_renderqueue.cpp b/tests/auto/render/opengl/renderqueue/tst_renderqueue.cpp index 071f9b3a5..2be089495 100644 --- a/tests/auto/render/renderqueue/tst_renderqueue.cpp +++ b/tests/auto/render/opengl/renderqueue/tst_renderqueue.cpp @@ -30,8 +30,8 @@ #include <QMutex> #include <QWaitCondition> #include <QThread> -#include <Qt3DRender/private/renderqueue_p.h> -#include <Qt3DRender/private/renderview_p.h> +#include <renderqueue_p.h> +#include <renderview_p.h> class tst_RenderQueue : public QObject { diff --git a/tests/auto/render/renderviewbuilder/renderviewbuilder.pro b/tests/auto/render/opengl/renderviewbuilder/renderviewbuilder.pro index 00fdd49cf..b7b8f5b81 100644 --- a/tests/auto/render/renderviewbuilder/renderviewbuilder.pro +++ b/tests/auto/render/opengl/renderviewbuilder/renderviewbuilder.pro @@ -8,5 +8,8 @@ CONFIG += testcase SOURCES += tst_renderviewbuilder.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/renderviewbuilder/tst_renderviewbuilder.cpp b/tests/auto/render/opengl/renderviewbuilder/tst_renderviewbuilder.cpp index 6024084bd..6dc463589 100644 --- a/tests/auto/render/renderviewbuilder/tst_renderviewbuilder.cpp +++ b/tests/auto/render/opengl/renderviewbuilder/tst_renderviewbuilder.cpp @@ -31,7 +31,7 @@ #include <Qt3DCore/private/qnodevisitor_p.h> #include <Qt3DCore/private/qnode_p.h> -#include <Qt3DRender/private/renderviewbuilder_p.h> +#include <renderviewbuilder_p.h> #include <Qt3DRender/private/qrenderaspect_p.h> #include <Qt3DRender/qviewport.h> #include <Qt3DRender/qclearbuffers.h> diff --git a/tests/auto/render/renderviews/renderviews.pro b/tests/auto/render/opengl/renderviews/renderviews.pro index 046c00696..7efbaec14 100644 --- a/tests/auto/render/renderviews/renderviews.pro +++ b/tests/auto/render/opengl/renderviews/renderviews.pro @@ -8,5 +8,8 @@ CONFIG += testcase SOURCES += tst_renderviews.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/renderviews/tst_renderviews.cpp b/tests/auto/render/opengl/renderviews/tst_renderviews.cpp index b434fe83a..d30b8ddca 100644 --- a/tests/auto/render/renderviews/tst_renderviews.cpp +++ b/tests/auto/render/opengl/renderviews/tst_renderviews.cpp @@ -28,17 +28,19 @@ #include <QtTest/QTest> #include <qbackendnodetester.h> -#include <private/renderview_p.h> #include <private/qframeallocator_p.h> #include <private/qframeallocator_p_p.h> #include <private/memorybarrier_p.h> -#include <private/renderviewjobutils_p.h> -#include <private/rendercommand_p.h> #include <testpostmanarbiter.h> #include <testrenderer.h> #include <private/shader_p.h> -#include <private/glresourcemanagers_p.h> #include <Qt3DRender/qshaderprogram.h> +#include <renderview_p.h> +#include <renderviewjobutils_p.h> +#include <rendercommand_p.h> +#include <renderer_p.h> +#include <glresourcemanagers_p.h> +#include <private/shader_p.h> QT_BEGIN_NAMESPACE diff --git a/tests/auto/render/renderviewutils/renderviewutils.pro b/tests/auto/render/opengl/renderviewutils/renderviewutils.pro index 90d8a2562..e9c9f8d51 100644 --- a/tests/auto/render/renderviewutils/renderviewutils.pro +++ b/tests/auto/render/opengl/renderviewutils/renderviewutils.pro @@ -8,5 +8,8 @@ CONFIG += testcase SOURCES += tst_renderviewutils.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/renderviewutils/tst_renderviewutils.cpp b/tests/auto/render/opengl/renderviewutils/tst_renderviewutils.cpp index 6d349f994..8a345d840 100644 --- a/tests/auto/render/renderviewutils/tst_renderviewutils.cpp +++ b/tests/auto/render/opengl/renderviewutils/tst_renderviewutils.cpp @@ -29,7 +29,8 @@ #include <QtTest/QTest> #include <qbackendnodetester.h> #include <Qt3DCore/qdynamicpropertyupdatedchange.h> -#include <Qt3DRender/private/renderviewjobutils_p.h> +#include <renderviewjobutils_p.h> +#include <shadervariables_p.h> #include <Qt3DRender/private/shaderdata_p.h> #include <Qt3DRender/private/managers_p.h> #include <Qt3DRender/private/stringtoint_p.h> diff --git a/tests/auto/render/textures/textures.pro b/tests/auto/render/opengl/textures/textures.pro index 8a7553a54..a116756af 100644 --- a/tests/auto/render/textures/textures.pro +++ b/tests/auto/render/opengl/textures/textures.pro @@ -8,5 +8,8 @@ CONFIG += testcase SOURCES += tst_textures.cpp -include(../../core/common/common.pri) -include(../commons/commons.pri) +include(../../../core/common/common.pri) +include(../../commons/commons.pri) + +# Link Against OpenGL Renderer Plugin +include(../opengl_render_plugin.pri) diff --git a/tests/auto/render/textures/tst_textures.cpp b/tests/auto/render/opengl/textures/tst_textures.cpp index 12d538772..984d49a3e 100644 --- a/tests/auto/render/textures/tst_textures.cpp +++ b/tests/auto/render/opengl/textures/tst_textures.cpp @@ -37,13 +37,13 @@ QT_WARNING_DISABLE_DEPRECATED #include <Qt3DRender/qtextureimage.h> #include <Qt3DRender/qtexturedata.h> -#include <Qt3DRender/private/renderer_p.h> -#include <Qt3DRender/private/glresourcemanagers_p.h> +#include <renderer_p.h> +#include <glresourcemanagers_p.h> +#include <gltexture_p.h> #include <Qt3DRender/private/texture_p.h> #include <Qt3DRender/private/textureimage_p.h> #include <Qt3DRender/private/nodemanagers_p.h> #include <Qt3DRender/private/managers_p.h> -#include <Qt3DRender/private/gltexture_p.h> #include <Qt3DRender/private/qtexture_p.h> #include <testrenderer.h> diff --git a/tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp b/tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp index 5191b1a36..f1587c27c 100644 --- a/tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp +++ b/tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp @@ -45,10 +45,12 @@ #include <Qt3DRender/QNoPicking> #include <Qt3DRender/QPickEvent> #include <Qt3DRender/QPickTriangleEvent> +#include <Qt3DRender/QPickingSettings> #include <Qt3DRender/private/nodemanagers_p.h> #include <Qt3DRender/private/managers_p.h> #include <Qt3DRender/private/entity_p.h> #include <Qt3DRender/qrenderaspect.h> +#include <Qt3DRender/private/rendersettings_p.h> #include <Qt3DRender/private/qrenderaspect_p.h> #include <Qt3DRender/private/pickboundingvolumejob_p.h> #include <Qt3DRender/private/pickboundingvolumeutils_p.h> diff --git a/tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp b/tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp index 1b65388af..51b59bffc 100644 --- a/tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp +++ b/tests/auto/render/proximityfiltering/tst_proximityfiltering.cpp @@ -38,6 +38,10 @@ #include <Qt3DRender/private/entity_p.h> #include <Qt3DRender/private/filterproximitydistancejob_p.h> #include <Qt3DRender/private/updatetreeenabledjob_p.h> +#include <Qt3DRender/private/updateworldtransformjob_p.h> +#include <Qt3DRender/private/updateworldboundingvolumejob_p.h> +#include <Qt3DRender/private/calcboundingvolumejob_p.h> +#include <Qt3DRender/private/expandboundingvolumejob_p.h> #include <Qt3DRender/qproximityfilter.h> #include "testaspect.h" diff --git a/tests/auto/render/qcamera/tst_qcamera.cpp b/tests/auto/render/qcamera/tst_qcamera.cpp index 0dcbce63f..fae8aa14e 100644 --- a/tests/auto/render/qcamera/tst_qcamera.cpp +++ b/tests/auto/render/qcamera/tst_qcamera.cpp @@ -49,6 +49,7 @@ #include <Qt3DRender/private/nodemanagers_p.h> #include <Qt3DRender/private/transform_p.h> #include <Qt3DRender/private/qrenderaspect_p.h> +#include <Qt3DRender/private/updateworldtransformjob_p.h> QT_BEGIN_NAMESPACE diff --git a/tests/auto/render/raycastingjob/tst_raycastingjob.cpp b/tests/auto/render/raycastingjob/tst_raycastingjob.cpp index 1ff899936..daec0b86c 100644 --- a/tests/auto/render/raycastingjob/tst_raycastingjob.cpp +++ b/tests/auto/render/raycastingjob/tst_raycastingjob.cpp @@ -38,6 +38,7 @@ #include <Qt3DCore/private/qaspectmanager_p.h> #include <Qt3DCore/private/qscene_p.h> #include <Qt3DCore/private/qaspectengine_p.h> +#include <Qt3DCore/private/qaspectjob_p.h> #include <QtQuick/qquickwindow.h> #include <Qt3DRender/QCamera> diff --git a/tests/auto/render/render.pro b/tests/auto/render/render.pro index 2b73ec8b7..14fc74883 100644 --- a/tests/auto/render/render.pro +++ b/tests/auto/render/render.pro @@ -4,7 +4,6 @@ qtConfig(private_tests) { SUBDIRS += \ entity \ renderpass \ - qgraphicsutils \ shader \ shaderbuilder \ texture \ @@ -125,19 +124,8 @@ QT_FOR_CONFIG += 3drender-private qtConfig(qt3d-opengl-renderer):qtConfig(private_tests) { SUBDIRS += \ - filtercompatibletechniquejob \ - graphicshelpergl3_3 \ - graphicshelpergl3_2 \ - graphicshelpergl2 \ - glshadermanager \ - materialparametergathererjob \ - textures \ - renderer \ - renderviewutils \ - renderviews \ - renderqueue \ - renderviewbuilder \ - gltexture + opengl \ + scene2d qtConfig(qt3d-extras) { SUBDIRS += \ @@ -158,8 +146,6 @@ qtConfig(qt3d-opengl-renderer):qtConfig(private_tests) { scene2d } - !macos: SUBDIRS += graphicshelpergl4 - qtConfig(qt3d-simd-avx2): SUBDIRS += alignedresourcesmanagers-avx qtConfig(qt3d-simd-sse2):!qtConfig(qt3d-simd-avx2): SUBDIRS += alignedresourcesmanagers-sse } diff --git a/tests/auto/render/technique/tst_technique.cpp b/tests/auto/render/technique/tst_technique.cpp index 5b6fdb4a4..b36d00fee 100644 --- a/tests/auto/render/technique/tst_technique.cpp +++ b/tests/auto/render/technique/tst_technique.cpp @@ -34,7 +34,6 @@ #include <Qt3DRender/qrenderpass.h> #include <Qt3DRender/private/qtechnique_p.h> #include <Qt3DRender/private/technique_p.h> -#include <Qt3DRender/private/shaderparameterpack_p.h> #include <Qt3DRender/private/nodemanagers_p.h> #include <Qt3DRender/private/managers_p.h> #include <Qt3DRender/private/filterkey_p.h> diff --git a/tests/auto/render/trianglesextractor/tst_trianglesextractor.cpp b/tests/auto/render/trianglesextractor/tst_trianglesextractor.cpp index 287a17b84..24d7ff643 100644 --- a/tests/auto/render/trianglesextractor/tst_trianglesextractor.cpp +++ b/tests/auto/render/trianglesextractor/tst_trianglesextractor.cpp @@ -30,7 +30,6 @@ #include <Qt3DRender/private/shader_p.h> #include <Qt3DRender/qshaderprogram.h> #include <Qt3DRender/private/nodemanagers_p.h> -#include <Qt3DRender/private/renderer_p.h> #include <Qt3DRender/private/qrenderaspect_p.h> #include <Qt3DRender/qrenderaspect.h> #include <Qt3DRender/private/geometryrenderermanager_p.h> diff --git a/tests/benchmarks/render/jobs/jobs.pro b/tests/benchmarks/render/jobs/jobs.pro index bfd0f1317..71b0ef409 100644 --- a/tests/benchmarks/render/jobs/jobs.pro +++ b/tests/benchmarks/render/jobs/jobs.pro @@ -7,3 +7,7 @@ QT += testlib core core-private 3dcore 3dcore-private 3drender 3drender-private SOURCES += tst_bench_jobs.cpp DEFINES += QT3D_RENDER_UNIT_TESTS +DEFINES += QT_BUILD_INTERNAL + +# Link Against OpenGL Renderer Plugin +include(../../../auto/render/opengl/opengl_render_plugin.pri) diff --git a/tests/benchmarks/render/jobs/tst_bench_jobs.cpp b/tests/benchmarks/render/jobs/tst_bench_jobs.cpp index b611f3cdc..87689e46c 100644 --- a/tests/benchmarks/render/jobs/tst_bench_jobs.cpp +++ b/tests/benchmarks/render/jobs/tst_bench_jobs.cpp @@ -41,7 +41,6 @@ #include <Qt3DRender/qcamera.h> #include <Qt3DRender/qrenderaspect.h> #include <Qt3DRender/private/qrenderaspect_p.h> -#include <Qt3DRender/private/renderer_p.h> #include <Qt3DRender/private/nodemanagers_p.h> #include <Qt3DRender/private/updateworldtransformjob_p.h> #include <Qt3DQuick/QQmlAspectEngine> @@ -50,6 +49,7 @@ #include <Qt3DCore/private/qaspectmanager_p.h> #include <Qt3DCore/private/qnodevisitor_p.h> #include <Qt3DCore/private/qnode_p.h> +#include <renderer_p.h> #include <QQmlComponent> #include <QScopedPointer> diff --git a/tests/benchmarks/render/materialparametergathering/materialparametergathering.pro b/tests/benchmarks/render/materialparametergathering/materialparametergathering.pro index e227a08a0..a20372163 100644 --- a/tests/benchmarks/render/materialparametergathering/materialparametergathering.pro +++ b/tests/benchmarks/render/materialparametergathering/materialparametergathering.pro @@ -12,3 +12,6 @@ include(../../../auto/render/commons/commons.pri) # Needed to use the TestAspect DEFINES += QT_BUILD_INTERNAL + +# Link Against OpenGL Renderer Plugin +include(../../../auto/render/opengl/opengl_render_plugin.pri) diff --git a/tests/benchmarks/render/materialparametergathering/tst_bench_materialparametergathering.cpp b/tests/benchmarks/render/materialparametergathering/tst_bench_materialparametergathering.cpp index 210d82dcf..644c4d74c 100644 --- a/tests/benchmarks/render/materialparametergathering/tst_bench_materialparametergathering.cpp +++ b/tests/benchmarks/render/materialparametergathering/tst_bench_materialparametergathering.cpp @@ -37,7 +37,7 @@ #include <Qt3DRender/private/entity_p.h> #include <Qt3DRender/qrenderaspect.h> #include <Qt3DRender/private/qrenderaspect_p.h> -#include <Qt3DRender/private/materialparametergathererjob_p.h> +#include <materialparametergathererjob_p.h> #include <Qt3DRender/private/technique_p.h> #include <Qt3DRender/private/techniquemanager_p.h> #include <Qt3DExtras/qphongmaterial.h> |