diff options
44 files changed, 572 insertions, 165 deletions
diff --git a/src/core/aspects/qaspectmanager.cpp b/src/core/aspects/qaspectmanager.cpp index 3ddd232d7..058dfc0d7 100644 --- a/src/core/aspects/qaspectmanager.cpp +++ b/src/core/aspects/qaspectmanager.cpp @@ -48,26 +48,13 @@ #include "qjobmanagerinterface.h" #include "qscheduler.h" #include "qtickclock.h" - -#include <node.h> -#include <entity.h> -#include <quick3dentity.h> -#include <camera.h> -#include <cameralens.h> -#include <matrixtransform.h> -#include <rotatetransform.h> -#include <translatetransform.h> -#include <lookattransform.h> -#include <scaletransform.h> -#include <quick3dtransform.h> -#include <quick3dnode.h> +#include "node.h" #include <QDebug> #include <QEventLoop> #include <QThread> #include <QWaitCondition> #include <QWindow> -#include <QtQml> QT_BEGIN_NAMESPACE @@ -108,18 +95,7 @@ void QAspectManager::shutdown() void QAspectManager::registerCoreQmlComponents() { qDebug() << Q_FUNC_INFO; - qmlRegisterUncreatableType<Qt3D::Node>("Qt3D", 2, 0, "Node_priv", ""); - qmlRegisterType<Qt3D::Component>("Qt3D", 2, 0, "Component"); - qmlRegisterType<Qt3D::Camera>("Qt3D", 2, 0, "Camera"); - qmlRegisterType<Qt3D::CameraLens>("Qt3D", 2, 0, "CameraLens"); - qmlRegisterType<Qt3D::MatrixTransform>("Qt3D", 2, 0, "MatrixTransform"); - qmlRegisterType<Qt3D::TranslateTransform>("Qt3D", 2, 0, "Translate"); - qmlRegisterType<Qt3D::RotateTransform>("Qt3D", 2, 0, "Rotate"); - qmlRegisterType<Qt3D::LookAtTransform>("Qt3D", 2, 0, "LookAt"); - qmlRegisterType<Qt3D::ScaleTransform>("Qt3D", 2, 0, "Scale"); - qmlRegisterType<Qt3D::Quick::Quick3DEntity>("Qt3D", 2, 0, "Entity"); - qmlRegisterType<Qt3D::Quick::Quick3DTransform>("Qt3D", 2, 0, "Transform"); - qmlRegisterType<Qt3D::Quick::Quick3DNode>("Qt3D", 2, 0, "Node"); + } diff --git a/src/core/core.pro b/src/core/core.pro index b74e23d1d..edc09fd5b 100644 --- a/src/core/core.pro +++ b/src/core/core.pro @@ -1,6 +1,6 @@ TARGET = Qt3DCore MODULE = 3dcore -QT = core-private gui-private qml qml-private quick +QT = core-private gui-private load(qt_module) diff --git a/src/core/nodes/nodes.pri b/src/core/nodes/nodes.pri index 720471b94..9d950271e 100644 --- a/src/core/nodes/nodes.pri +++ b/src/core/nodes/nodes.pri @@ -5,8 +5,6 @@ HEADERS += \ $$PWD/nodevisitor.h \ $$PWD/component.h \ $$PWD/entity.h \ - $$PWD/quick3dentity.h \ - $$PWD/quick3dnode.h \ $$PWD/entitynode.h SOURCES += \ @@ -14,6 +12,4 @@ SOURCES += \ $$PWD/nodevisitor.cpp \ $$PWD/component.cpp \ $$PWD/entity.cpp \ - $$PWD/quick3dentity.cpp \ - $$PWD/quick3dnode.cpp \ $$PWD/entitynode.cpp diff --git a/src/core/transforms/transforms.pri b/src/core/transforms/transforms.pri index 026a7d953..9c0baea89 100644 --- a/src/core/transforms/transforms.pri +++ b/src/core/transforms/transforms.pri @@ -6,8 +6,7 @@ SOURCES += \ $$PWD/rotatetransform.cpp \ $$PWD/translatetransform.cpp \ $$PWD/scaletransform.cpp \ - $$PWD/transform.cpp \ - $$PWD/quick3dtransform.cpp + $$PWD/transform.cpp HEADERS += \ $$PWD/abstracttransform.h \ @@ -16,7 +15,6 @@ HEADERS += \ $$PWD/rotatetransform.h \ $$PWD/translatetransform.h \ $$PWD/scaletransform.h \ - $$PWD/transform.h \ - $$PWD/quick3dtransform.h + $$PWD/transform.h INCLUDEPATH += $$PWD diff --git a/src/quick3d/imports/core/core.pro b/src/quick3d/imports/core/core.pro new file mode 100644 index 000000000..8d866c902 --- /dev/null +++ b/src/quick3d/imports/core/core.pro @@ -0,0 +1,15 @@ +CXX_MODULE = qml +TARGET = quick3dcoreplugin +TARGETPATH = Qt3D + +QT += qml 3dcore 3dquick + +HEADERS += \ + qt3dquick3dcoreplugin.h + +SOURCES += \ + qt3dquick3dcoreplugin.cpp + +OTHER_FILES += qmldir + +load(qml_plugin) diff --git a/src/quick3d/imports/core/qmldir b/src/quick3d/imports/core/qmldir new file mode 100644 index 000000000..0e3b76f75 --- /dev/null +++ b/src/quick3d/imports/core/qmldir @@ -0,0 +1,3 @@ +module Qt3D +plugin quick3dcoreplugin +classname Qt3DQuick3DCorePlugin diff --git a/src/quick3d/imports/core/qt3dquick3dcoreplugin.cpp b/src/quick3d/imports/core/qt3dquick3dcoreplugin.cpp new file mode 100644 index 000000000..640e06182 --- /dev/null +++ b/src/quick3d/imports/core/qt3dquick3dcoreplugin.cpp @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <QtQml> +#include "qt3dquick3dcoreplugin.h" +#include <Qt3DQuick/quick3dentity.h> +#include <Qt3DQuick/quick3dtransform.h> +#include <Qt3DCore/cameralens.h> +#include <Qt3DCore/camera.h> +#include <Qt3DCore/scaletransform.h> +#include <Qt3DCore/lookattransform.h> +#include <Qt3DCore/matrixtransform.h> +#include <Qt3DCore/translatetransform.h> +#include <Qt3DCore/rotatetransform.h> + +QT_BEGIN_NAMESPACE + +void Qt3DQuick3DCorePlugin::registerTypes(const char *uri) +{ + qmlRegisterUncreatableType<Qt3D::Node>(uri, 2, 0, "Node_priv", ""); + qmlRegisterType<Qt3D::Component>(uri, 2, 0, "Component"); + qmlRegisterType<Qt3D::Camera>(uri, 2, 0, "Camera"); + qmlRegisterType<Qt3D::CameraLens>(uri, 2, 0, "CameraLens"); + qmlRegisterType<Qt3D::MatrixTransform>(uri, 2, 0, "MatrixTransform"); + qmlRegisterType<Qt3D::TranslateTransform>(uri, 2, 0, "Translate"); + qmlRegisterType<Qt3D::RotateTransform>(uri, 2, 0, "Rotate"); + qmlRegisterType<Qt3D::LookAtTransform>(uri, 2, 0, "LookAt"); + qmlRegisterType<Qt3D::ScaleTransform>(uri, 2, 0, "Scale"); + qmlRegisterType<Qt3D::Quick::Quick3DEntity>(uri, 2, 0, "Entity"); + qmlRegisterType<Qt3D::Quick::Quick3DTransform>(uri, 2, 0, "Transform"); + qmlRegisterType<Qt3D::Quick::Quick3DNode>(uri, 2, 0, "Node"); +} + +QT_END_NAMESPACE diff --git a/src/quick3d/imports/core/qt3dquick3dcoreplugin.h b/src/quick3d/imports/core/qt3dquick3dcoreplugin.h new file mode 100644 index 000000000..f76fa5ac1 --- /dev/null +++ b/src/quick3d/imports/core/qt3dquick3dcoreplugin.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICK3DCOREPLUGIN_H +#define QT3DQUICK3DCOREPLUGIN_H + +#include <QtQml/QQmlExtensionPlugin> + +QT_BEGIN_NAMESPACE + +class Qt3DQuick3DCorePlugin : public QQmlExtensionPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface/1.0") +public: + void registerTypes(const char *uri) Q_DECL_OVERRIDE; +}; + +QT_END_NAMESPACE + +#endif // QT3DQUICK3DCOREPLUGIN_H diff --git a/src/quick3d/imports/imports.pro b/src/quick3d/imports/imports.pro new file mode 100644 index 000000000..415f533d9 --- /dev/null +++ b/src/quick3d/imports/imports.pro @@ -0,0 +1,8 @@ +TEMPLATE=subdirs +CONFIG += ordered + +qtHaveModule(3dcore) { +SUBDIRS+= \ + core \ + render +} diff --git a/src/quick3d/imports/render/qmldir b/src/quick3d/imports/render/qmldir new file mode 100644 index 000000000..6654a6a50 --- /dev/null +++ b/src/quick3d/imports/render/qmldir @@ -0,0 +1,3 @@ +module Qt3D.Render +plugin quick3drenderplugin +classname Qt3DQuick3DRenderPlugin diff --git a/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp b/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp new file mode 100644 index 000000000..b5c6112e1 --- /dev/null +++ b/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <QtQml> +#include "qt3dquick3drenderplugin.h" +#include <Qt3DRenderer/scene.h> +#include <Qt3DRenderer/effect.h> +#include <Qt3DRenderer/technique.h> +#include <Qt3DRenderer/tag.h> +#include <Qt3DRenderer/mesh.h> +#include <Qt3DRenderer/material.h> +#include <Qt3DRenderer/renderpass.h> +#include <Qt3DRenderer/shaderprogram.h> +#include <Qt3DRenderer/viewport.h> +#include <Qt3DRenderer/renderpassfilter.h> +#include <Qt3DRenderer/techniquefilter.h> +#include <Qt3DRenderer/rendertargetselector.h> +#include <Qt3DRenderer/shape.h> +#include <Qt3DRenderer/texture.h> +#include <Qt3DRenderer/framegraph.h> +#include <Qt3DQuickRenderer/quick3dcameraselector.h> +#include <Qt3DQuickRenderer/quick3dtechniquefilter.h> +#include <Qt3DQuickRenderer/quick3dviewport.h> +#include <Qt3DQuickRenderer/quick3drenderpassfilter.h> +#include <Qt3DQuickRenderer/quick3drendertargetselector.h> + +QT_BEGIN_NAMESPACE + +void Qt3DQuick3DRenderPlugin::registerTypes(const char *uri) +{ + qmlRegisterType<Qt3D::Scene>(uri, 2, 0, "Scene"); + qmlRegisterType<Qt3D::Effect>(uri, 2, 0, "Effect"); + qmlRegisterType<Qt3D::Technique>(uri, 2, 0, "Technique"); + qmlRegisterType<Qt3D::Tag>(uri, 2, 0, "Tag"); + qmlRegisterType<Qt3D::Mesh>(uri, 2, 0, "Mesh"); + qmlRegisterType<Qt3D::Material>(uri, 2, 0, "Material"); + qmlRegisterType<Qt3D::RenderPass>(uri, 2, 0, "RenderPass"); + qmlRegisterType<Qt3D::ShaderProgram>(uri, 2, 0, "ShaderProgram"); + qmlRegisterType<Qt3D::Shape>(uri, 2, 0, "Shape"); + qmlRegisterType<Qt3D::QmlTexture>(uri, 2, 0, "Texture"); + // Framegraph components - TODO RenderTarget, RenderTargetSelector + qmlRegisterType<Qt3D::Render::Quick::Quick3DCameraSelector>(uri, 2, 0, "CameraSelector"); + qmlRegisterType<Qt3D::Render::Quick::Quick3DRenderPassFilter>(uri, 2, 0, "RenderPassFilter"); + qmlRegisterType<Qt3D::Render::Quick::Quick3DTechniqueFilter>(uri, 2, 0, "TechniqueFilter"); + qmlRegisterType<Qt3D::Render::Quick::Quick3DViewport>(uri, 2, 0, "Viewport"); +// qmlRegisterType<Qt3D::FrameGraphItem>("Qt3D.Render", 2, 0, "FrameGraphNode"); + qmlRegisterType<Qt3D::Render::Quick::Quick3DRenderTargetSelector>(uri, 2, 0, "RenderTargetSelector"); + qmlRegisterType<Qt3D::FrameGraph>(uri, 2, 0, "FrameGraph"); +} + +QT_END_NAMESPACE + + diff --git a/src/quick3d/imports/render/qt3dquick3drenderplugin.h b/src/quick3d/imports/render/qt3dquick3drenderplugin.h new file mode 100644 index 000000000..a28916b51 --- /dev/null +++ b/src/quick3d/imports/render/qt3dquick3drenderplugin.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICK3DRENDERPLUGIN_H +#define QT3DQUICK3DRENDERPLUGIN_H + +#include <QtQml/QQmlExtensionPlugin> + +QT_BEGIN_NAMESPACE + +class Qt3DQuick3DRenderPlugin : public QQmlExtensionPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface/1.0") +public: + void registerTypes(const char *uri) Q_DECL_OVERRIDE; +}; + +QT_END_NAMESPACE + +#endif // QT3DQUICK3DRENDERPLUGIN_H diff --git a/src/quick3d/imports/render/render.pro b/src/quick3d/imports/render/render.pro new file mode 100644 index 000000000..f0df6916f --- /dev/null +++ b/src/quick3d/imports/render/render.pro @@ -0,0 +1,15 @@ +CXX_MODULE = qml +TARGET = quick3drenderplugin +TARGETPATH = Qt3D/Render + +QT += qml 3dcore 3drenderer 3dquick 3dquickrenderer + +HEADERS += \ + qt3dquick3drenderplugin.h + +SOURCES += \ + qt3dquick3drenderplugin.cpp + +OTHER_FILES += qmldir + +load(qml_plugin) diff --git a/src/quick3d/quick3d.pro b/src/quick3d/quick3d.pro index b05fabd14..90204568d 100644 --- a/src/quick3d/quick3d.pro +++ b/src/quick3d/quick3d.pro @@ -1,30 +1,6 @@ -TARGET = Qt3DQuick - -QT += core-private gui-private qml qml-private quick 3dcore - -DEFINES += QT3DQUICK_LIBRARY - -MODULE = 3dquick - -load(qt_module) - -gcov { - CONFIG += static - QMAKE_CXXFLAGS += -fprofile-arcs -ftest-coverage - QMAKE_LFLAGS += -fprofile-arcs -ftest-coverage -} else { - CONFIG += dll -} - -HEADERS += $$PRIVATE_HEADERS \ - qt3dquick_global.h \ - quickwindow.h - -!contains(QT_CONFIG, egl):DEFINES += QT_NO_EGL - -# otherwise mingw headers do not declare common functions like ::strcasecmp -win32-g++*:QMAKE_CXXFLAGS_CXX11 = -std=gnu++0x - -SOURCES += \ - quickwindow.cpp - +TEMPLATE = subdirs +CONFIG += ordered +SUBDIRS += \ + quick3d \ + quick3drenderer \ + imports diff --git a/src/quick3d/quick3d/items/items.pri b/src/quick3d/quick3d/items/items.pri new file mode 100644 index 000000000..19db4cb55 --- /dev/null +++ b/src/quick3d/quick3d/items/items.pri @@ -0,0 +1,11 @@ +HEADERS += \ + $$PWD/quick3dnode.h \ + $$PWD/quick3dentity.h \ + $$PWD/quick3dtransform.h \ + +SOURCES += \ + $$PWD/quick3dnode.cpp \ + $$PWD/quick3dentity.cpp \ + $$PWD/quick3dtransform.cpp \ + +INCLUDEPATH += $$PWD diff --git a/src/core/nodes/quick3dentity.cpp b/src/quick3d/quick3d/items/quick3dentity.cpp index ab49f14ec..227e8b542 100644 --- a/src/core/nodes/quick3dentity.cpp +++ b/src/quick3d/quick3d/items/quick3dentity.cpp @@ -40,7 +40,7 @@ ****************************************************************************/ #include "quick3dentity.h" -#include "component.h" +#include <Qt3DCore/component.h> QT_BEGIN_NAMESPACE diff --git a/src/core/nodes/quick3dentity.h b/src/quick3d/quick3d/items/quick3dentity.h index 069692588..31c9387f9 100644 --- a/src/core/nodes/quick3dentity.h +++ b/src/quick3d/quick3d/items/quick3dentity.h @@ -43,8 +43,9 @@ #define QT3D_QUICK_QUICK3DENTITY_H #include <Qt3DCore/entity.h> -#include <Qt3DCore/quick3dnode.h> #include <QQmlListProperty> +#include <Qt3DQuick/quick3dnode.h> +#include <Qt3DQuick/qt3dquick_global.h> QT_BEGIN_NAMESPACE @@ -54,7 +55,7 @@ class Component; namespace Quick { -class Quick3DEntity : public Quick3DNode, public Entity +class QT3DQUICKSHARED_EXPORT Quick3DEntity : public Quick3DNode, public Entity { Q_OBJECT Q_INTERFACES(Qt3D::Entity) diff --git a/src/core/nodes/quick3dnode.cpp b/src/quick3d/quick3d/items/quick3dnode.cpp index 9c1d9560f..9c1d9560f 100644 --- a/src/core/nodes/quick3dnode.cpp +++ b/src/quick3d/quick3d/items/quick3dnode.cpp diff --git a/src/core/nodes/quick3dnode.h b/src/quick3d/quick3d/items/quick3dnode.h index a3d8badd8..9ab75668e 100644 --- a/src/core/nodes/quick3dnode.h +++ b/src/quick3d/quick3d/items/quick3dnode.h @@ -42,9 +42,9 @@ #ifndef QT3D_QUICK_QUICK3DNODE_H #define QT3D_QUICK_QUICK3DNODE_H -#include <Qt3DCore/node.h> #include <QQmlListProperty> -#include <Qt3DCore/qt3dcore_global.h> +#include <Qt3DCore/node.h> +#include <Qt3DQuick/qt3dquick_global.h> QT_BEGIN_NAMESPACE @@ -52,7 +52,7 @@ namespace Qt3D { namespace Quick { -class QT3DCORESHARED_EXPORT Quick3DNode : public Qt3D::Node +class QT3DQUICKSHARED_EXPORT Quick3DNode : public Qt3D::Node { Q_OBJECT Q_PROPERTY(QQmlListProperty<QObject> data READ data) diff --git a/src/core/transforms/quick3dtransform.cpp b/src/quick3d/quick3d/items/quick3dtransform.cpp index cc6ff3ee2..cc6ff3ee2 100644 --- a/src/core/transforms/quick3dtransform.cpp +++ b/src/quick3d/quick3d/items/quick3dtransform.cpp diff --git a/src/core/transforms/quick3dtransform.h b/src/quick3d/quick3d/items/quick3dtransform.h index d6ef323ba..7df06cd89 100644 --- a/src/core/transforms/quick3dtransform.h +++ b/src/quick3d/quick3d/items/quick3dtransform.h @@ -45,6 +45,7 @@ #include <QtCore/QtGlobal> #include <Qt3DCore/transform.h> #include <QQmlListProperty> +#include <Qt3DQuick/qt3dquick_global.h> QT_BEGIN_NAMESPACE @@ -52,7 +53,7 @@ namespace Qt3D { namespace Quick { -class Quick3DTransform : public Transform +class QT3DQUICKSHARED_EXPORT Quick3DTransform : public Transform { Q_OBJECT Q_PROPERTY(QQmlListProperty<Qt3D::AbstractTransform> transforms READ transformList) diff --git a/src/quick3d/qt3dquick_global.h b/src/quick3d/quick3d/qt3dquick_global.h index a3c45d7f0..a3c45d7f0 100644 --- a/src/quick3d/qt3dquick_global.h +++ b/src/quick3d/quick3d/qt3dquick_global.h diff --git a/src/quick3d/quick3d/quick3d.pro b/src/quick3d/quick3d/quick3d.pro new file mode 100644 index 000000000..506725004 --- /dev/null +++ b/src/quick3d/quick3d/quick3d.pro @@ -0,0 +1,31 @@ +TARGET = Qt3DQuick + +QT += core-private gui-private qml qml-private quick 3dcore + +DEFINES += QT3DQUICK_LIBRARY + +MODULE = 3dquick + +load(qt_module) + +gcov { + CONFIG += static + QMAKE_CXXFLAGS += -fprofile-arcs -ftest-coverage + QMAKE_LFLAGS += -fprofile-arcs -ftest-coverage +} else { + CONFIG += dll +} + +HEADERS += $$PRIVATE_HEADERS \ + qt3dquick_global.h \ + quickwindow.h + +SOURCES += quickwindow.cpp + +!contains(QT_CONFIG, egl):DEFINES += QT_NO_EGL + +# otherwise mingw headers do not declare common functions like ::strcasecmp +win32-g++*:QMAKE_CXXFLAGS_CXX11 = -std=gnu++0x + +include(./items/items.pri) + diff --git a/src/quick3d/quickwindow.cpp b/src/quick3d/quick3d/quickwindow.cpp index 339084acf..339084acf 100644 --- a/src/quick3d/quickwindow.cpp +++ b/src/quick3d/quick3d/quickwindow.cpp diff --git a/src/quick3d/quickwindow.h b/src/quick3d/quick3d/quickwindow.h index f104fe7c0..f104fe7c0 100644 --- a/src/quick3d/quickwindow.h +++ b/src/quick3d/quick3d/quickwindow.h diff --git a/src/quick3d/quick3drenderer/items/items.pri b/src/quick3d/quick3drenderer/items/items.pri new file mode 100644 index 000000000..019b566f3 --- /dev/null +++ b/src/quick3d/quick3drenderer/items/items.pri @@ -0,0 +1,17 @@ +HEADERS += \ + $$PWD/quick3dcameraselector.h \ + $$PWD/quick3dframegraphitem.h \ + $$PWD/quick3drenderpassfilter.h \ + $$PWD/quick3drendertargetselector.h \ + $$PWD/quick3dtechniquefilter.h \ + $$PWD/quick3dviewport.h + +SOURCES += \ + $$PWD/quick3dcameraselector.cpp \ + $$PWD/quick3dframegraphitem.cpp \ + $$PWD/quick3drenderpassfilter.cpp \ + $$PWD/quick3drendertargetselector.cpp \ + $$PWD/quick3dtechniquefilter.cpp \ + $$PWD/quick3dviewport.cpp + +INCLUDEPATH += $$PWD diff --git a/src/render/frontend/quick3dcameraselector.cpp b/src/quick3d/quick3drenderer/items/quick3dcameraselector.cpp index 8fa8f2804..92015e268 100644 --- a/src/render/frontend/quick3dcameraselector.cpp +++ b/src/quick3d/quick3drenderer/items/quick3dcameraselector.cpp @@ -45,6 +45,8 @@ QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { Quick3DCameraSelector::Quick3DCameraSelector(Node *parent) @@ -55,6 +57,8 @@ Quick3DCameraSelector::Quick3DCameraSelector(Node *parent) } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE diff --git a/src/render/frontend/quick3dcameraselector.h b/src/quick3d/quick3drenderer/items/quick3dcameraselector.h index 3c80bdb9c..015831d83 100644 --- a/src/render/frontend/quick3dcameraselector.h +++ b/src/quick3d/quick3drenderer/items/quick3dcameraselector.h @@ -39,19 +39,21 @@ ** ****************************************************************************/ -#ifndef QT3D_QUICK_QUICK3DCAMERASELECTOR_H -#define QT3D_QUICK_QUICK3DCAMERASELECTOR_H +#ifndef QT3D_RENDER_QUICK_QUICK3DCAMERASELECTOR_H +#define QT3D_RENDER_QUICK_QUICK3DCAMERASELECTOR_H -#include <Qt3DRenderer/quick3dframegraphitem.h> +#include <Qt3DQuickRenderer/quick3dframegraphitem.h> #include <Qt3DRenderer/cameraselector.h> QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { -class Quick3DCameraSelector : public Quick3DFrameGraphItem, public virtual CameraSelector +class QT3DQUICKRENDERERSHARED_EXPORT Quick3DCameraSelector : public Quick3DFrameGraphItem, public virtual CameraSelector { Q_OBJECT Q_INTERFACES(Qt3D::CameraSelector) @@ -65,8 +67,10 @@ Q_SIGNALS: } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE -#endif // QUICK3DCAMERASELECTOR_H +#endif // QT3D_RENDER_QUICK_QUICK3DCAMERASELECTOR_H diff --git a/src/render/frontend/quick3dframegraphitem.cpp b/src/quick3d/quick3drenderer/items/quick3dframegraphitem.cpp index 42003274d..72c1110b8 100644 --- a/src/render/frontend/quick3dframegraphitem.cpp +++ b/src/quick3d/quick3drenderer/items/quick3dframegraphitem.cpp @@ -40,16 +40,17 @@ ****************************************************************************/ #include "quick3dframegraphitem.h" -#include "framegraphitem_p.h" QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { Quick3DFrameGraphItem::Quick3DFrameGraphItem(Node *parent) - : Quick3DNode(parent) + : Qt3D::Quick::Quick3DNode(parent) , FrameGraphItem() { } @@ -60,6 +61,8 @@ Quick3DFrameGraphItem::~Quick3DFrameGraphItem() } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE diff --git a/src/render/frontend/quick3dframegraphitem.h b/src/quick3d/quick3drenderer/items/quick3dframegraphitem.h index 220a74a26..fb8210d8b 100644 --- a/src/render/frontend/quick3dframegraphitem.h +++ b/src/quick3d/quick3drenderer/items/quick3dframegraphitem.h @@ -39,21 +39,22 @@ ** ****************************************************************************/ -#ifndef QT3D_QUICK_QUICK3DFRAMEGRAPHITEM_H -#define QT3D_QUICK_QUICK3DFRAMEGRAPHITEM_H +#ifndef QT3D_RENDER_QUICK_QUICK3DFRAMEGRAPHITEM_H +#define QT3D_RENDER_QUICK_QUICK3DFRAMEGRAPHITEM_H -#include <Qt3DCore/quick3dnode.h> +#include <Qt3DQuickRenderer/qt3dquickrenderer_global.h> +#include <Qt3DQuick/quick3dnode.h> #include <Qt3DRenderer/framegraphitem.h> QT_BEGIN_NAMESPACE namespace Qt3D { -class FrameGraphItemPrivate; +namespace Render { namespace Quick { -class Quick3DFrameGraphItem : public Quick3DNode, public FrameGraphItem +class QT3DQUICKRENDERERSHARED_EXPORT Quick3DFrameGraphItem : public Qt3D::Quick::Quick3DNode, public FrameGraphItem { Q_OBJECT Q_INTERFACES(Qt3D::FrameGraphItem) @@ -70,8 +71,10 @@ Q_SIGNALS: } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE -#endif // QT3D_QUICK_QUICK3DFRAMEGRAPHITEM_H +#endif // QT3D_RENDER_QUICK_QUICK3DFRAMEGRAPHITEM_H diff --git a/src/render/frontend/quick3drenderpassfilter.cpp b/src/quick3d/quick3drenderer/items/quick3drenderpassfilter.cpp index 23dcf4784..fc935983d 100644 --- a/src/render/frontend/quick3drenderpassfilter.cpp +++ b/src/quick3d/quick3drenderer/items/quick3drenderpassfilter.cpp @@ -45,6 +45,8 @@ QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { Quick3DRenderPassFilter::Quick3DRenderPassFilter(Node *parent) @@ -55,6 +57,8 @@ Quick3DRenderPassFilter::Quick3DRenderPassFilter(Node *parent) } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE diff --git a/src/render/frontend/quick3drenderpassfilter.h b/src/quick3d/quick3drenderer/items/quick3drenderpassfilter.h index b925582fb..dead1314a 100644 --- a/src/render/frontend/quick3drenderpassfilter.h +++ b/src/quick3d/quick3drenderer/items/quick3drenderpassfilter.h @@ -39,19 +39,21 @@ ** ****************************************************************************/ -#ifndef QT3D_QUICK_QUICK3DRENDERPASSFILTER_H -#define QT3D_QUICK_QUICK3DRENDERPASSFILTER_H +#ifndef QT3D_RENDER_QUICK_QUICK3DRENDERPASSFILTER_H +#define QT3D_RENDER_QUICK_QUICK3DRENDERPASSFILTER_H -#include <Qt3DRenderer/quick3dframegraphitem.h> +#include <Qt3DQuickRenderer/quick3dframegraphitem.h> #include <Qt3DRenderer/renderpassfilter.h> QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { -class Quick3DRenderPassFilter : public Quick3DFrameGraphItem, public virtual RenderPassFilter +class QT3DQUICKRENDERERSHARED_EXPORT Quick3DRenderPassFilter : public Quick3DFrameGraphItem, public virtual RenderPassFilter { Q_OBJECT Q_INTERFACES(Qt3D::RenderPassFilter) @@ -67,8 +69,10 @@ Q_SIGNALS: } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE -#endif // QT3D_QUICK_QUICK3DRENDERPASSFILTER_H +#endif // QT3D_RENDER_QUICK_QUICK3DRENDERPASSFILTER_H diff --git a/src/render/frontend/quick3drendertargetselector.cpp b/src/quick3d/quick3drenderer/items/quick3drendertargetselector.cpp index f0aa1df95..bac614668 100644 --- a/src/render/frontend/quick3drendertargetselector.cpp +++ b/src/quick3d/quick3drenderer/items/quick3drendertargetselector.cpp @@ -45,6 +45,8 @@ QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { Quick3DRenderTargetSelector::Quick3DRenderTargetSelector(Node * parent) @@ -55,6 +57,8 @@ Quick3DRenderTargetSelector::Quick3DRenderTargetSelector(Node * parent) } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE diff --git a/src/render/frontend/quick3drendertargetselector.h b/src/quick3d/quick3drenderer/items/quick3drendertargetselector.h index ca24e7736..a3afbd852 100644 --- a/src/render/frontend/quick3drendertargetselector.h +++ b/src/quick3d/quick3drenderer/items/quick3drendertargetselector.h @@ -39,19 +39,21 @@ ** ****************************************************************************/ -#ifndef QT3D_QUICK_QUICK3DRENDERTARGETSELECTOR_H -#define QT3D_QUICK_QUICK3DRENDERTARGETSELECTOR_H +#ifndef QT3D_RENDER_QUICK_QUICK3DRENDERTARGETSELECTOR_H +#define QT3D_RENDER_QUICK_QUICK3DRENDERTARGETSELECTOR_H -#include <Qt3DRenderer/quick3dframegraphitem.h> +#include <Qt3DQuickRenderer/quick3dframegraphitem.h> #include <Qt3DRenderer/rendertargetselector.h> QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { -class Quick3DRenderTargetSelector : public Quick3DFrameGraphItem, public virtual RenderTargetSelector +class QT3DQUICKRENDERERSHARED_EXPORT Quick3DRenderTargetSelector : public Quick3DFrameGraphItem, public virtual RenderTargetSelector { Q_OBJECT Q_INTERFACES(Qt3D::RenderTargetSelector) @@ -64,8 +66,10 @@ Q_SIGNALS: } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE -#endif // QT3D_QUICK_QUICK3DRENDERTARGETSELECTOR_H +#endif // QT3D_RENDER_QUICK_QUICK3DRENDERTARGETSELECTOR_H diff --git a/src/render/frontend/quick3dtechniquefilter.cpp b/src/quick3d/quick3drenderer/items/quick3dtechniquefilter.cpp index a05ed33a0..bbe50dcb6 100644 --- a/src/render/frontend/quick3dtechniquefilter.cpp +++ b/src/quick3d/quick3drenderer/items/quick3dtechniquefilter.cpp @@ -45,6 +45,8 @@ QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { Quick3DTechniqueFilter::Quick3DTechniqueFilter(Node *parent) @@ -98,6 +100,8 @@ void Quick3DTechniqueFilter::clearTags(QQmlListProperty<Tag> *list) } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE diff --git a/src/render/frontend/quick3dtechniquefilter.h b/src/quick3d/quick3drenderer/items/quick3dtechniquefilter.h index 8e943a291..1ca6ce9b2 100644 --- a/src/render/frontend/quick3dtechniquefilter.h +++ b/src/quick3d/quick3drenderer/items/quick3dtechniquefilter.h @@ -39,10 +39,10 @@ ** ****************************************************************************/ -#ifndef QT3D_QUICK_QUICK3DTECHNIQUEFILTER_H -#define QT3D_QUICK_QUICK3DTECHNIQUEFILTER_H +#ifndef QT3D_RENDER_QUICK_QUICK3DTECHNIQUEFILTER_H +#define QT3D_RENDER_QUICK_QUICK3DTECHNIQUEFILTER_H -#include <Qt3DRenderer/quick3dframegraphitem.h> +#include <Qt3DQuickRenderer/quick3dframegraphitem.h> #include <Qt3DRenderer/techniquefilter.h> #include <QQmlListProperty> @@ -50,11 +50,11 @@ QT_BEGIN_NAMESPACE namespace Qt3D { -class TechniqueFilterPrivate; +namespace Render { namespace Quick { -class Quick3DTechniqueFilter : public Quick3DFrameGraphItem, public virtual TechniqueFilter +class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTechniqueFilter : public Quick3DFrameGraphItem, public virtual TechniqueFilter { Q_OBJECT Q_INTERFACES(Qt3D::TechniqueFilter) @@ -78,8 +78,10 @@ private: } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE -#endif // QT3D_QUICK_QUICK3DTECHNIQUEFILTER_H +#endif // QT3D_RENDER_QUICK_QUICK3DTECHNIQUEFILTER_H diff --git a/src/render/frontend/quick3dviewport.cpp b/src/quick3d/quick3drenderer/items/quick3dviewport.cpp index afdb9abea..bf32b92d6 100644 --- a/src/render/frontend/quick3dviewport.cpp +++ b/src/quick3d/quick3drenderer/items/quick3dviewport.cpp @@ -45,6 +45,8 @@ QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { Quick3DViewport::Quick3DViewport(Node *parent) @@ -55,6 +57,8 @@ Quick3DViewport::Quick3DViewport(Node *parent) } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE diff --git a/src/render/frontend/quick3dviewport.h b/src/quick3d/quick3drenderer/items/quick3dviewport.h index 2833c0d25..0e488afa8 100644 --- a/src/render/frontend/quick3dviewport.h +++ b/src/quick3d/quick3drenderer/items/quick3dviewport.h @@ -39,19 +39,21 @@ ** ****************************************************************************/ -#ifndef QT3D_QUICK_QUICK3DVIEWPORT_H -#define QT3D_QUICK_QUICK3DVIEWPORT_H +#ifndef QT3D_RENDER_QUICK_QUICK3DVIEWPORT_H +#define QT3D_RENDER_QUICK_QUICK3DVIEWPORT_H -#include <Qt3DRenderer/quick3dframegraphitem.h> +#include <Qt3DQuickRenderer/quick3dframegraphitem.h> #include <Qt3DRenderer/viewport.h> QT_BEGIN_NAMESPACE namespace Qt3D { +namespace Render { + namespace Quick { -class Quick3DViewport : public Quick3DFrameGraphItem, public virtual Viewport +class QT3DQUICKRENDERERSHARED_EXPORT Quick3DViewport : public Quick3DFrameGraphItem, public virtual Viewport { Q_OBJECT Q_INTERFACES(Qt3D::Viewport) @@ -66,9 +68,11 @@ Q_SIGNALS: } // Quick +} // Render + } // Qt3D QT_END_NAMESPACE -#endif // QUICK3DVIEWPORT_H +#endif // QT3D_RENDER_QUICK_QUICK3DVIEWPORT_H diff --git a/src/quick3d/quick3drenderer/qt3dquickrenderer_global.h b/src/quick3d/quick3drenderer/qt3dquickrenderer_global.h new file mode 100644 index 000000000..5b27ee82c --- /dev/null +++ b/src/quick3d/quick3drenderer/qt3dquickrenderer_global.h @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKRENDERER_GLOBAL_H +#define QT3DQUICKRENDERER_GLOBAL_H + +#include <QtCore/qglobal.h> + +QT_BEGIN_NAMESPACE + +#if defined(QT3DQUICKRENDERER_LIBRARY) +# define QT3DQUICKRENDERERSHARED_EXPORT Q_DECL_EXPORT +#else +# define QT3DQUICKRENDERERSHARED_EXPORT Q_DECL_IMPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DQUICKRENDERER_GLOBAL_H diff --git a/src/quick3d/quick3drenderer/quick3drenderer.pro b/src/quick3d/quick3drenderer/quick3drenderer.pro new file mode 100644 index 000000000..a96a8e363 --- /dev/null +++ b/src/quick3d/quick3drenderer/quick3drenderer.pro @@ -0,0 +1,28 @@ +TARGET = Qt3DQuickRenderer + +QT += core qml quick 3dcore 3drenderer 3dquick + +DEFINES += QT3DQUICKRENDERER_LIBRARY + +MODULE = 3dquickrenderer + +load(qt_module) + +gcov { + CONFIG += static + QMAKE_CXXFLAGS += -fprofile-arcs -ftest-coverage + QMAKE_LFLAGS += -fprofile-arcs -ftest-coverage +} else { + CONFIG += dll +} + +HEADERS += $$PRIVATE_HEADERS \ + qt3dquickrenderer_global.h + +!contains(QT_CONFIG, egl):DEFINES += QT_NO_EGL + +# otherwise mingw headers do not declare common functions like ::strcasecmp +win32-g++*:QMAKE_CXXFLAGS_CXX11 = -std=gnu++0x + +include(./items/items.pri) + diff --git a/src/render/backend/rendereraspect.cpp b/src/render/backend/rendereraspect.cpp index 68079742c..9d63c9f68 100644 --- a/src/render/backend/rendereraspect.cpp +++ b/src/render/backend/rendereraspect.cpp @@ -55,29 +55,6 @@ #include <QThread> #include <QWindow> -#include <QtQml> - -#include "scene.h" -#include "effect.h" -#include "technique.h" -#include "tag.h" -#include "mesh.h" -#include "material.h" -#include "renderpass.h" -#include "shaderprogram.h" -#include "viewport.h" -#include "quick3dcameraselector.h" -#include "quick3dtechniquefilter.h" -#include "quick3dviewport.h" -#include "quick3drenderpassfilter.h" -#include "quick3drendertargetselector.h" -#include "renderpassfilter.h" -#include "techniquefilter.h" -#include "rendertargetselector.h" -#include "shape.h" -#include "texture.h" -#include "framegraph.h" - QT_BEGIN_NAMESPACE namespace Qt3D { @@ -175,26 +152,6 @@ void RendererAspect::cleanupHelper() */ void RendererAspect::registerQmlComponents() { - qmlRegisterType<Qt3D::Scene>("Qt3D.Render", 2, 0, "Scene"); - qmlRegisterType<Qt3D::Effect>("Qt3D.Render", 2, 0, "Effect"); - qmlRegisterType<Qt3D::Technique>("Qt3D.Render", 2, 0, "Technique"); - qmlRegisterType<Qt3D::Tag>("Qt3D.Render", 2, 0, "Tag"); - qmlRegisterType<Qt3D::Mesh>("Qt3D.Render", 2, 0, "Mesh"); - qmlRegisterType<Qt3D::Material>("Qt3D.Render", 2, 0, "Material"); - qmlRegisterType<Qt3D::RenderPass>("Qt3D.Render", 2, 0, "RenderPass"); - qmlRegisterType<Qt3D::ShaderProgram>("Qt3D.Render", 2, 0, "ShaderProgram"); - - qmlRegisterType<Qt3D::Shape>("Qt3D.Render", 2, 0, "Shape"); - qmlRegisterType<Qt3D::QmlTexture>("Qt3D.Render", 2, 0, "Texture"); - - // Framegraph components - TODO RenderTarget, RenderTargetSelector - qmlRegisterType<Qt3D::Quick::Quick3DCameraSelector>("Qt3D.Render", 2, 0, "CameraSelector"); - qmlRegisterType<Qt3D::Quick::Quick3DRenderPassFilter>("Qt3D.Render", 2, 0, "RenderPassFilter"); - qmlRegisterType<Qt3D::Quick::Quick3DTechniqueFilter>("Qt3D.Render", 2, 0, "TechniqueFilter"); - qmlRegisterType<Qt3D::Quick::Quick3DViewport>("Qt3D.Render", 2, 0, "Viewport"); -// qmlRegisterType<Qt3D::FrameGraphItem>("Qt3D.Render", 2, 0, "FrameGraphNode"); - qmlRegisterType<Qt3D::Quick::Quick3DRenderTargetSelector>("Qt3D.Render", 2, 0, "RenderTargetSelector"); - qmlRegisterType<Qt3D::FrameGraph>("Qt3D.Render", 2, 0, "FrameGraph"); } } diff --git a/src/render/frontend/render-frontend.pri b/src/render/frontend/render-frontend.pri index 8c4658908..4c8d44515 100644 --- a/src/render/frontend/render-frontend.pri +++ b/src/render/frontend/render-frontend.pri @@ -25,13 +25,7 @@ HEADERS += \ $$PWD/cameraselectoritem.h \ $$PWD/renderpassfilteritem.h \ $$PWD/techniquefilteritem.h \ - $$PWD/rendertargetselectoritem.h \ - $$PWD/quick3dtechniquefilter.h \ - $$PWD/quick3dframegraphitem.h \ - $$PWD/quick3dviewport.h \ - $$PWD/quick3dcameraselector.h \ - $$PWD/quick3drenderpassfilter.h \ - $$PWD/quick3drendertargetselector.h + $$PWD/rendertargetselectoritem.h SOURCES += \ $$PWD/effect.cpp \ @@ -51,10 +45,4 @@ SOURCES += \ $$PWD/cameraselectoritem.cpp \ $$PWD/techniquefilteritem.cpp \ $$PWD/renderpassfilteritem.cpp \ - $$PWD/rendertargetselectoritem.cpp \ - $$PWD/quick3dtechniquefilter.cpp \ - $$PWD/quick3dframegraphitem.cpp \ - $$PWD/quick3dviewport.cpp \ - $$PWD/quick3dcameraselector.cpp \ - $$PWD/quick3drenderpassfilter.cpp \ - $$PWD/quick3drendertargetselector.cpp + $$PWD/rendertargetselectoritem.cpp diff --git a/src/render/render.pro b/src/render/render.pro index ff1d30266..65e239696 100644 --- a/src/render/render.pro +++ b/src/render/render.pro @@ -1,6 +1,6 @@ TARGET = Qt3DRenderer -QT += core-private gui-private qml qml-private quick 3dcore +QT += core-private gui-private qml 3dcore DEFINES += QT3DRENDERER_LIBRARY diff --git a/sync.profile b/sync.profile index 97e0ab4ad..9515e877e 100644 --- a/sync.profile +++ b/sync.profile @@ -1,7 +1,8 @@ %modules = ( # path to module name map "Qt3DCore" => "$basedir/src/core", "Qt3DRenderer" => "$basedir/src/render", - "Qt3DQuick" => "$basedir/src/quick3d", + "Qt3DQuick" => "$basedir/src/quick3d/quick3d", + "Qt3DQuickRenderer" => "$basedir/src/quick3d/quick3drenderer", ); %moduleheaders = ( # restrict the module headers to those found in relative path ); |