66 Q_PROPERTY(
QList<
unsigned int> indexes READ indexes WRITE setIndexes NOTIFY indexesChanged FINAL)
84 void setPositions(
const QList<QVector3D> &newPositions);
85 PrimitiveMode primitiveMode()
const;
86 void setPrimitiveMode(PrimitiveMode newPrimitiveMode);
88 QList<unsigned int> indexes()
const;
89 void setIndexes(
const QList<unsigned int> &newIndexes);
91 QList<QVector3D> normals()
const;
92 void setNormals(
const QList<QVector3D> &newNormals);
94 QList<QVector3D> tangents()
const;
95 void setTangents(
const QList<QVector3D> &newTangents);
97 QList<QVector3D> binormals()
const;
98 void setBinormals(
const QList<QVector3D> &newBinormals);
100 QList<QVector2D> uv0s()
const;
101 void setUv0s(
const QList<QVector2D> &newUv0s);
103 QList<QVector2D> uv1s()
const;
104 void setUv1s(
const QList<QVector2D> &newUv1s);
106 QList<QVector4D>
colors()
const;
107 void setColors(
const QList<QVector4D> &newColors);
109 QList<QVector4D> joints()
const;
110 void setJoints(
const QList<QVector4D> &newJoints);
112 QList<QVector4D>
weights()
const;
113 void setWeights(
const QList<QVector4D> &newWeights);
115 QQmlListProperty<ProceduralMeshSubset>
subsets();
131 void requestUpdate();
132 void updateGeometry();
133 void subsetDestroyed(
QObject *subset);
136 bool supportsTriangleFanPrimitive()
const;
138 static void qmlAppendProceduralMeshSubset(QQmlListProperty<ProceduralMeshSubset> *
list,
ProceduralMeshSubset *subset);
140 static qsizetype qmlProceduralMeshSubsetCount(QQmlListProperty<ProceduralMeshSubset> *
list);
141 static void qmlClearProceduralMeshSubset(QQmlListProperty<ProceduralMeshSubset> *
list);
143 bool m_updateRequested =
false;
145 QList<QVector3D> m_positions;
146 QList<unsigned int> m_indexes;
147 QList<QVector3D> m_normals;
148 QList<QVector3D> m_tangents;
149 QList<QVector3D> m_binormals;
150 QList<QVector2D> m_uv0s;
151 QList<QVector2D> m_uv1s;
152 QList<QVector4D> m_colors;
153 QList<QVector4D> m_joints;
154 QList<QVector4D> m_weights;
155 QList<ProceduralMeshSubset *> m_subsets;