40 QVector<QSSGRenderGraphObject *> materials;
41 QVector<QSSGRenderGraphObject *> morphTargets;
42 QSSGRenderGeometry *geometry =
nullptr;
43 QSSGRenderPath meshPath;
44 QSSGRenderSkeleton *skeleton =
nullptr;
45 QSSGRenderSkin *skin =
nullptr;
46 QVector<QMatrix4x4> inverseBindPoses;
47 float m_depthBiasSq = 0.0f;
48 bool castsShadows =
true;
49 bool receivesShadows =
true;
50 float instancingLodMin = -1;
51 float instancingLodMax = -1;
53 QSSGRenderInstanceTable *instanceTable =
nullptr;
54 int instanceCount()
const {
return instanceTable ? instanceTable->count() : 0; }
55 bool instancing()
const {
return instanceTable;}
57 QSSGParticleBuffer *particleBuffer =
nullptr;
58 QMatrix4x4 particleMatrix;
59 bool hasTransparency =
false;
61 QVector<
float> morphWeights;
62 QVector<quint32> morphAttributes;
64 bool receivesReflections =
false;
65 bool castsReflections =
true;
66 bool usedInBakedLighting =
false;
68 float texelsPerUnit = 0.0f;
69 bool motionVectorEnabled =
true;
70 float motionVectorScale = 1.0f;
71 bool hasLightmap()
const {
return !lightmapKey.isEmpty(); }
72 bool usesBoneTexture()
const {
return ((skin !=
nullptr) || (skeleton !=
nullptr)); }
74 float levelOfDetailBias = 1.0f;
76 QSSGRenderModelHandle mh;
friend class QSSGLayerRenderData