35struct Q_QUICK3DRUNTIMERENDER_EXPORT
QSSGRenderImage :
public QSSGRenderGraphObject
40 TransformDirty = 1 << 1,
42 Q_DECLARE_FLAGS(Flags, Flag)
44 enum class MappingModes : quint8
51 Q_DISABLE_COPY(QSSGRenderImage)
53 QSSGRenderGraphObject *m_parent =
nullptr;
55 QSSGRenderPath m_imagePath;
60 QSGTexture *m_qsgTexture =
nullptr;
61 QSSGRenderTextureData *m_rawTextureData =
nullptr;
62 QSSGRenderExtension *m_extensionsSource =
nullptr;
66 QVector2D m_scale { 1.0f, 1.0f };
67 QVector2D m_pivot { 0.0f, 0.0f };
68 QVector2D m_position { 0.0f, 0.0f };
69 float m_rotation = 0.0f;
73 MappingModes m_mappingMode = MappingModes::Normal;
74 QSSGRenderTextureCoordOp m_horizontalTilingMode = QSSGRenderTextureCoordOp::Repeat;
75 QSSGRenderTextureCoordOp m_verticalTilingMode = QSSGRenderTextureCoordOp::Repeat;
76 QSSGRenderTextureCoordOp m_depthTilingMode = QSSGRenderTextureCoordOp::Repeat;
77 QSSGRenderTextureFilterOp m_magFilterType = QSSGRenderTextureFilterOp::Linear;
78 QSSGRenderTextureFilterOp m_minFilterType = QSSGRenderTextureFilterOp::Linear;
79 QSSGRenderTextureFilterOp m_mipFilterType = QSSGRenderTextureFilterOp::Linear;
80 QSSGRenderTextureFormat m_format = QSSGRenderTextureFormat::Unknown;
81 bool m_generateMipmaps =
false;
85 QMatrix4x4 m_textureTransform;
87 QSSGRenderImage(QSSGRenderGraphObject::Type type = QSSGRenderGraphObject::Type::Image2D);
91 void calculateTextureTransform();
92 bool isImageTransformIdentity()
const;