diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2015-01-28 13:08:07 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2015-02-08 11:16:22 +0000 |
commit | ba7f13b912dbbe208358e7ae925924ccba413ee1 (patch) | |
tree | a33188e471be121f118ac624e6c940a4d0e48bc2 /src | |
parent | 8b70fbf3376687d86472ca4e4f61e27484ff94b4 (diff) |
QTextureProviders added
the Quick3D textures were removed to use the providers directly instead.
Change-Id: Ifa5f28aa1ce8b6e5cc921ac76e6fbd80c5ea3112
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/quick3d/imports/render/qt3dquick3drenderplugin.cpp | 18 | ||||
-rw-r--r-- | src/quick3d/quick3drenderer/items/quick3dtexture.cpp | 65 | ||||
-rw-r--r-- | src/quick3d/quick3drenderer/items/quick3dtexture.h | 81 | ||||
-rw-r--r-- | src/render/frontend/qabstracttextureprovider.cpp | 22 | ||||
-rw-r--r-- | src/render/frontend/qabstracttextureprovider.h | 6 | ||||
-rw-r--r-- | src/render/frontend/qtexture.h | 2 | ||||
-rw-r--r-- | src/render/frontend/qtextureproviders.cpp | 251 | ||||
-rw-r--r-- | src/render/frontend/qtextureproviders.h | 143 | ||||
-rw-r--r-- | src/render/frontend/render-frontend.pri | 6 |
9 files changed, 415 insertions, 179 deletions
diff --git a/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp b/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp index 0e6624c31..b3abe5e42 100644 --- a/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp +++ b/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp @@ -181,15 +181,15 @@ void Qt3DQuick3DRenderPlugin::registerTypes(const char *uri) // Textures qmlRegisterType<Qt3D::QTextureWrapMode>(uri, 2, 0, "WrapMode");//, QStringLiteral("QTextureWrapMode cannot be created from QML")); qmlRegisterUncreatableType<Qt3D::QAbstractTextureProvider>(uri, 2, 0, "Texture", QStringLiteral("Texture should be created from one of the subclasses")); - qmlRegisterType<Qt3D::Render::Quick::Quick3DTexture1D>(uri, 2, 0, "Texture1D"); - qmlRegisterType<Qt3D::Render::Quick::Quick3DTexture1DArray>(uri, 2, 0, "Texture1DArray"); - qmlRegisterExtendedType<Qt3D::Render::Quick::Quick3DTexture2D, Qt3D::Render::Quick::Quick3DTexture2DExtension>(uri, 2, 0, "Texture2D"); - qmlRegisterType<Qt3D::Render::Quick::Quick3DTexture2DArray>(uri, 2, 0, "Texture2DArray"); - qmlRegisterType<Qt3D::Render::Quick::Quick3DTexture3D>(uri, 2, 0, "Texture3D"); - qmlRegisterExtendedType<Qt3D::Render::Quick::Quick3DTextureCubeMap, Qt3D::Render::Quick::Quick3DTextureCubeMapExtension>(uri, 2, 0, "TextureCubeMap"); - qmlRegisterType<Qt3D::Render::Quick::Quick3DTextureCubeMapArray>(uri, 2, 0, "TextureCubeMapArray"); - qmlRegisterType<Qt3D::Render::Quick::Quick3DTexture2DMultisample>(uri, 2, 0, "Texture2DMultisample"); - qmlRegisterType<Qt3D::Render::Quick::Quick3DTexture2DMultisampleArray>(uri, 2, 0, "Texture2DMultisampleArray"); + qmlRegisterType<Qt3D::QTexture1D>(uri, 2, 0, "Texture1D"); + qmlRegisterType<Qt3D::QTexture1DArray>(uri, 2, 0, "Texture1DArray"); + qmlRegisterExtendedType<Qt3D::QTexture2D, Qt3D::Render::Quick::Quick3DTexture2DExtension>(uri, 2, 0, "Texture2D"); + qmlRegisterType<Qt3D::QTexture2DArray>(uri, 2, 0, "Texture2DArray"); + qmlRegisterType<Qt3D::QTexture3D>(uri, 2, 0, "Texture3D"); + qmlRegisterExtendedType<Qt3D::QTextureCubeMap, Qt3D::Render::Quick::Quick3DTextureCubeMapExtension>(uri, 2, 0, "TextureCubeMap"); + qmlRegisterType<Qt3D::QTextureCubeMapArray>(uri, 2, 0, "TextureCubeMapArray"); + qmlRegisterType<Qt3D::QTexture2DMultisample>(uri, 2, 0, "Texture2DMultisample"); + qmlRegisterType<Qt3D::QTexture2DMultisampleArray>(uri, 2, 0, "Texture2DMultisampleArray"); // Meshes qmlRegisterUncreatableType<Qt3D::QAbstractMesh>(uri, 2, 0, "QAbstractMesh", QStringLiteral("QAbstractMesh is abstract")); diff --git a/src/quick3d/quick3drenderer/items/quick3dtexture.cpp b/src/quick3d/quick3drenderer/items/quick3dtexture.cpp index a93bde00c..afe84ddfb 100644 --- a/src/quick3d/quick3drenderer/items/quick3dtexture.cpp +++ b/src/quick3d/quick3drenderer/items/quick3dtexture.cpp @@ -50,61 +50,6 @@ namespace Render { namespace Quick { -Quick3DTexture1D::Quick3DTexture1D(QNode *parent) - : QAbstractTextureProvider(Target1D, parent) -{ -} - -Quick3DTexture1DArray::Quick3DTexture1DArray(QNode *parent) - : QAbstractTextureProvider(Target1DArray, parent) -{ -} - -Quick3DTexture2D::Quick3DTexture2D(QNode *parent) - : QAbstractTextureProvider(Target2D, parent) -{ -} - -Quick3DTexture2DArray::Quick3DTexture2DArray(QNode *parent) - : QAbstractTextureProvider(Target2DArray, parent) -{ -} - -Quick3DTexture3D::Quick3DTexture3D(QNode *parent) - : QAbstractTextureProvider(Target3D, parent) -{ -} - -Quick3DTextureCubeMap::Quick3DTextureCubeMap(QNode *parent) - : QAbstractTextureProvider(TargetCubeMap, parent) -{ -} - -Quick3DTextureCubeMapArray::Quick3DTextureCubeMapArray(QNode *parent) - : QAbstractTextureProvider(TargetCubeMapArray, parent) -{ -} - -Quick3DTexture2DMultisample::Quick3DTexture2DMultisample(QNode *parent) - : QAbstractTextureProvider(Target2DMultisample, parent) -{ -} - -Quick3DTexture2DMultisampleArray::Quick3DTexture2DMultisampleArray(QNode *parent) - : QAbstractTextureProvider(Target2DMultisampleArray, parent) -{ -} - -Quick3DTextureRectangle::Quick3DTextureRectangle(QNode *parent) - : QAbstractTextureProvider(TargetRectangle, parent) -{ -} - -Quick3DTextureBuffer::Quick3DTextureBuffer(QNode *parent) - : QAbstractTextureProvider(TargetBuffer, parent) -{ -} - // TO DO: This needs to be reworked to handle more than just 2D images Quick3DTexture2DExtension::Quick3DTexture2DExtension(QObject *parent) : QObject(parent) @@ -262,7 +207,9 @@ void Quick3DTextureCubeMapExtension::loadFace(const QUrl &faceUrl, QAbstractText if (faceUrl.isLocalFile() || faceUrl.scheme() == QStringLiteral("qrc")) { QString source = faceUrl.toString().replace(QStringLiteral("qrc"), QStringLiteral("")); QImage img; - parentTexture()->setStatus(QAbstractTextureProvider::Loading); + // Status will be set by backend + +// parentTexture()->setStatus(QAbstractTextureProvider::Loading); if (img.load(source)) { TexImageDataPtr dataPtr(new TexImageData(0, 0)); @@ -278,14 +225,14 @@ void Quick3DTextureCubeMapExtension::loadFace(const QUrl &faceUrl, QAbstractText parentTexture()->setFormat(format); dataPtr->setImage(img); parentTexture()->addImageData(dataPtr); - parentTexture()->setStatus(QAbstractTextureProvider::Loaded); +// parentTexture()->setStatus(QAbstractTextureProvider::Loaded); } else { qWarning() << "Failed to load image : " << source; - parentTexture()->setStatus(QAbstractTextureProvider::Error); +// parentTexture()->setStatus(QAbstractTextureProvider::Error); } } else { - parentTexture()->setStatus(QAbstractTextureProvider::Error); +// parentTexture()->setStatus(QAbstractTextureProvider::Error); qWarning() << "implement loading from remote URLs"; } } diff --git a/src/quick3d/quick3drenderer/items/quick3dtexture.h b/src/quick3d/quick3drenderer/items/quick3dtexture.h index ef055692b..8aa1c3cf1 100644 --- a/src/quick3d/quick3drenderer/items/quick3dtexture.h +++ b/src/quick3d/quick3drenderer/items/quick3dtexture.h @@ -56,85 +56,6 @@ namespace Render { namespace Quick { -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTexture1D : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTexture1D(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTexture1DArray : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTexture1DArray(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTexture2D : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTexture2D(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTexture2DArray : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTexture2DArray(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTexture3D : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTexture3D(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTextureCubeMap : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTextureCubeMap(QNode *parent = 0); - - friend class Quick3DTextureCubeMapExtension; -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTextureCubeMapArray : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTextureCubeMapArray(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTexture2DMultisample : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTexture2DMultisample(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTexture2DMultisampleArray : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTexture2DMultisampleArray(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTextureRectangle : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTextureRectangle(QNode *parent = 0); -}; - -class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTextureBuffer : public QAbstractTextureProvider -{ - Q_OBJECT -public: - explicit Quick3DTextureBuffer(QNode *parent = 0); -}; - class QT3DQUICKRENDERERSHARED_EXPORT Quick3DTexture2DExtension : public QObject { Q_OBJECT @@ -201,7 +122,7 @@ private: QUrl m_negativeZ; QUrl m_source; - inline Quick3DTextureCubeMap *parentTexture() { return qobject_cast<Quick3DTextureCubeMap *>(parent()); } + inline QTextureCubeMap *parentTexture() { return qobject_cast<QTextureCubeMap *>(parent()); } void loadFace(const QUrl &faceUrl, QAbstractTextureProvider::CubeMapFace face); }; diff --git a/src/render/frontend/qabstracttextureprovider.cpp b/src/render/frontend/qabstracttextureprovider.cpp index c1616ad19..6d720906a 100644 --- a/src/render/frontend/qabstracttextureprovider.cpp +++ b/src/render/frontend/qabstracttextureprovider.cpp @@ -111,28 +111,6 @@ QAbstractTextureProvider::QAbstractTextureProvider(Target target, QNode *parent) d_func()->m_target = target; } -QAbstractTextureProvider::QAbstractTextureProvider(QAbstractTextureProvider::Target target, QAbstractTextureProvider::TextureFormat format, - int width, int height, int depth, bool mipMaps, - QAbstractTextureProvider::Filter magnificationFilter, QAbstractTextureProvider::Filter minificationFilter, - float maximumAnisotropy, - QAbstractTextureProvider::ComparisonFunction comparisonFunction, - QAbstractTextureProvider::ComparisonMode comparisonMode, - QNode *parent) - : QNode(*new QAbstractTextureProviderPrivate(this), parent) -{ - d_func()->m_target = target; - d_func()->m_format = format; - d_func()->m_width = width; - d_func()->m_height = height; - d_func()->m_depth = depth; - d_func()->m_autoMipMap = mipMaps; - d_func()->m_magFilter = magnificationFilter; - d_func()->m_minFilter = minificationFilter; - d_func()->m_maximumAnisotropy = maximumAnisotropy; - d_func()->m_comparisonFunction = comparisonFunction; - d_func()->m_comparisonMode = comparisonMode; -} - QAbstractTextureProvider::QAbstractTextureProvider(QAbstractTextureProviderPrivate &dd, QNode *parent) : QNode(dd, parent) { diff --git a/src/render/frontend/qabstracttextureprovider.h b/src/render/frontend/qabstracttextureprovider.h index 5d2bb4a92..85a38d6ab 100644 --- a/src/render/frontend/qabstracttextureprovider.h +++ b/src/render/frontend/qabstracttextureprovider.h @@ -251,12 +251,6 @@ public: // Those will be made protected to only allow creation of a QAbstractTextureProvider through subclasses explicit QAbstractTextureProvider(Target target, QNode *parent = 0); - explicit QAbstractTextureProvider(Target target, TextureFormat format, int width, int height = 1, int depth = 1, - bool mipMaps = false, Filter magnificationFilter = Nearest, Filter minificationFilter = Nearest, - float maximumAnisotropy = 1.0f, - ComparisonFunction comparisonFunction = CompareLessEqual, - ComparisonMode comparisonMode = CompareNone, - QNode *parent = 0); ~QAbstractTextureProvider(); diff --git a/src/render/frontend/qtexture.h b/src/render/frontend/qtexture.h index 73a7005f6..6da0e53d3 100644 --- a/src/render/frontend/qtexture.h +++ b/src/render/frontend/qtexture.h @@ -45,7 +45,7 @@ #include <QOpenGLTexture> #include <Qt3DRenderer/texturedata.h> #include <Qt3DRenderer/qwrapmode.h> -#include <Qt3DRenderer/qabstracttextureprovider.h> +#include <Qt3DRenderer/qtextureproviders.h> #include <Qt3DRenderer/qtextureimage.h> #endif // QT3D_QTEXTURE_H diff --git a/src/render/frontend/qtextureproviders.cpp b/src/render/frontend/qtextureproviders.cpp new file mode 100644 index 000000000..ba8d61c47 --- /dev/null +++ b/src/render/frontend/qtextureproviders.cpp @@ -0,0 +1,251 @@ +/**************************************************************************** +** +** Copyright (C) 2015 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 "qtextureproviders.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3D { + +/*! + \class QT3D::QTexture1D + \since 5.5 + \brief A QAbstractTextureProvider with a Target1D target format. + */ + +/*! + Constructs a new Qt3D::QTexture1D instance with \a parent as parent. + */ +QTexture1D::QTexture1D(QNode *parent) + : QAbstractTextureProvider(Target1D, parent) +{ +} + +QTexture1D::~QTexture1D() +{ +} + +/*! + \class QT3D::QTexture1DArray + \since 5.5 + \brief A QAbstractTextureProvider with a Target1DArray target format. + */ + +/*! + Constructs a new Qt3D::QTexture1DArray instance with \a parent as parent. + */ +QTexture1DArray::QTexture1DArray(QNode *parent) + : QAbstractTextureProvider(Target1DArray, parent) +{ +} + +QTexture1DArray::~QTexture1DArray() +{ +} + +/*! + \class QT3D::QTexture2D + \since 5.5 + \brief A QAbstractTextureProvider with a Target2D target format. + */ + +/*! + Constructs a new Qt3D::QTexture2D instance with \a parent as parent. + */ +QTexture2D::QTexture2D(QNode *parent) + : QAbstractTextureProvider(Target2D, parent) +{ +} + +QTexture2D::~QTexture2D() +{ +} + +/*! + \class QT3D::QTexture2DArray + \since 5.5 + \brief A QAbstractTextureProvider with a Target2DArray target format. + */ + +/*! + Constructs a new Qt3D::QTexture2DArray instance with \a parent as parent. + */ +QTexture2DArray::QTexture2DArray(QNode *parent) + : QAbstractTextureProvider(Target2DArray, parent) +{ +} + +QTexture2DArray::~QTexture2DArray() +{ +} + + +/*! + \class QT3D::QTexture3D + \since 5.5 + \brief A QAbstractTextureProvider with a Target3D target format. + */ + +/*! + Constructs a new Qt3D::QTexture3D instance with \a parent as parent. + */ +QTexture3D::QTexture3D(QNode *parent) + : QAbstractTextureProvider(Target2D, parent) +{ +} + +QTexture3D::~QTexture3D() +{ +} + +/*! + \class QT3D::QTextureCubeMap + \since 5.5 + \brief A QAbstractTextureProvider with a TargetCubeMap target format. + */ + +/*! + Constructs a new Qt3D::QTextureCubeMap instance with \a parent as parent. + */ +QTextureCubeMap::QTextureCubeMap(QNode *parent) + : QAbstractTextureProvider(TargetCubeMap, parent) +{ +} + +QTextureCubeMap::~QTextureCubeMap() +{ +} + +/*! + \class QT3D::QTextureCubeMapArray + \since 5.5 + \brief A QAbstractTextureProvider with a TargetCubeMapArray target format. + */ + +/*! + Constructs a new Qt3D::QTextureCubeMapArray instance with \a parent as parent. + */ +QTextureCubeMapArray::QTextureCubeMapArray(QNode *parent) + : QAbstractTextureProvider(TargetCubeMapArray, parent) +{ +} + +QTextureCubeMapArray::~QTextureCubeMapArray() +{ +} + +/*! + \class QT3D::QTexture2DMultisample + \since 5.5 + \brief A QAbstractTextureProvider with a Target2DMultisample target format. + */ + +/*! + Constructs a new Qt3D::QTexture2DMultisample instance with \a parent as parent. + */ +QTexture2DMultisample::QTexture2DMultisample(QNode *parent) + : QAbstractTextureProvider(Target2DMultisample, parent) +{ +} + +QTexture2DMultisample::~QTexture2DMultisample() +{ +} + +/*! + \class QT3D::QTexture2DMultisampleArray + \since 5.5 + \brief A QAbstractTextureProvider with a Target2DMultisampleArray target format. + */ + +/*! + Constructs a new Qt3D::QTexture2DMultisampleArray instance with \a parent as parent. + */ +QTexture2DMultisampleArray::QTexture2DMultisampleArray(QNode *parent) + : QAbstractTextureProvider(Target2DMultisampleArray, parent) +{ +} + +QTexture2DMultisampleArray::~QTexture2DMultisampleArray() +{ +} + +/*! + \class QT3D::QTextureRectangle + \since 5.5 + \brief A QAbstractTextureProvider with a TargetRectangle target format. + */ + +/*! + Constructs a new Qt3D::QTextureRectangle instance with \a parent as parent. + */ +QTextureRectangle::QTextureRectangle(QNode *parent) + : QAbstractTextureProvider(TargetRectangle, parent) +{ +} + +QTextureRectangle::~QTextureRectangle() +{ +} + +/*! + \class QT3D::QTextureBuffer + \since 5.5 + \brief A QAbstractTextureProvider with a TargetBuffer target format. + */ + +/*! + Constructs a new Qt3D::QTextureBuffer instance with \a parent as parent. + */ +QTextureBuffer::QTextureBuffer(QNode *parent) + : QAbstractTextureProvider(TargetBuffer, parent) +{ +} + +QTextureBuffer::~QTextureBuffer() +{ +} + +} // Qt3D + +QT_END_NAMESPACE + + diff --git a/src/render/frontend/qtextureproviders.h b/src/render/frontend/qtextureproviders.h new file mode 100644 index 000000000..7b9541b58 --- /dev/null +++ b/src/render/frontend/qtextureproviders.h @@ -0,0 +1,143 @@ +/**************************************************************************** +** +** Copyright (C) 2015 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 QT3D_QTEXTUREPROVIDERS_H +#define QT3D_QTEXTUREPROVIDERS_H + +#include <Qt3DRenderer/qabstracttextureprovider.h> + +QT_BEGIN_NAMESPACE + +namespace Qt3D { + +class QT3DRENDERERSHARED_EXPORT QTexture1D : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTexture1D(Qt3D::QNode *parent = 0); + ~QTexture1D(); +}; + +class QT3DRENDERERSHARED_EXPORT QTexture1DArray : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTexture1DArray(Qt3D::QNode *parent = 0); + ~QTexture1DArray(); +}; + +class QT3DRENDERERSHARED_EXPORT QTexture2D : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTexture2D(Qt3D::QNode *parent = 0); + ~QTexture2D(); +}; + +class QT3DRENDERERSHARED_EXPORT QTexture2DArray : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTexture2DArray(Qt3D::QNode *parent = 0); + ~QTexture2DArray(); +}; + +class QT3DRENDERERSHARED_EXPORT QTexture3D : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTexture3D(Qt3D::QNode *parent = 0); + ~QTexture3D(); +}; + +class QT3DRENDERERSHARED_EXPORT QTextureCubeMap : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTextureCubeMap(Qt3D::QNode *parent = 0); + ~QTextureCubeMap(); +}; + +class QT3DRENDERERSHARED_EXPORT QTextureCubeMapArray : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTextureCubeMapArray(Qt3D::QNode *parent = 0); + ~QTextureCubeMapArray(); +}; + +class QT3DRENDERERSHARED_EXPORT QTexture2DMultisample : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTexture2DMultisample(Qt3D::QNode *parent = 0); + ~QTexture2DMultisample(); +}; + +class QT3DRENDERERSHARED_EXPORT QTexture2DMultisampleArray : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTexture2DMultisampleArray(Qt3D::QNode *parent = 0); + ~QTexture2DMultisampleArray(); +}; + +class QT3DRENDERERSHARED_EXPORT QTextureRectangle : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTextureRectangle(Qt3D::QNode *parent = 0); + ~QTextureRectangle(); +}; + +class QT3DRENDERERSHARED_EXPORT QTextureBuffer : public QAbstractTextureProvider +{ + Q_OBJECT +public: + explicit QTextureBuffer(Qt3D::QNode *parent = 0); + ~QTextureBuffer(); +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3D_QTEXTUREPROVIDERS_H diff --git a/src/render/frontend/render-frontend.pri b/src/render/frontend/render-frontend.pri index e9da27adc..34e8249bd 100644 --- a/src/render/frontend/render-frontend.pri +++ b/src/render/frontend/render-frontend.pri @@ -73,7 +73,8 @@ HEADERS += \ $$PWD/qwrapmode.h \ $$PWD/qabstracttextureimage.h \ $$PWD/qabstracttextureimage_p.h \ - $$PWD/qtextureimage.h + $$PWD/qtextureimage.h \ + $$PWD/qtextureproviders.h SOURCES += \ $$PWD/qmaterial.cpp \ @@ -121,4 +122,5 @@ SOURCES += \ $$PWD/qabstracttextureprovider.cpp \ $$PWD/qwrapmode.cpp \ $$PWD/qabstracttextureimage.cpp \ - $$PWD/qtextureimage.cpp + $$PWD/qtextureimage.cpp \ + $$PWD/qtextureproviders.cpp |