16#ifndef QGSTEXTUREMATERIAL_H
17#define QGSTEXTUREMATERIAL_H
21#include <Qt3DRender/QMaterial>
31 class QAbstractTexture;
46class _3D_EXPORT QgsTextureMaterial :
public Qt3DRender::QMaterial
49 Q_PROPERTY( Qt3DRender::QAbstractTexture *texture READ texture WRITE setTexture NOTIFY textureChanged )
56 explicit QgsTextureMaterial( Qt3DCore::QNode *parent =
nullptr );
57 ~QgsTextureMaterial()
override;
59 Qt3DRender::QAbstractTexture *texture()
const;
67 void setTexture( Qt3DRender::QAbstractTexture *texture );
70 void textureChanged( Qt3DRender::QAbstractTexture *texture );
75 void handleTextureChanged(
const QVariant &var );
77 Qt3DRender::QParameter *mTextureParameter =
nullptr;
78 Qt3DRender::QTechnique *mGL3Technique =
nullptr;
79 Qt3DRender::QRenderPass *mGL3RenderPass =
nullptr;
80 Qt3DRender::QShaderProgram *mGL3Shader =
nullptr;
81 Qt3DRender::QFilterKey *mFilterKey =
nullptr;