47 QString convert(
const QSSGGltfDocument &document,
const QJsonObject &optionsObject,
48 const QFileInfo &sourceFile, QSSGSceneDesc::Scene &targetScene);
51 void processNode(
int nodeIndex, QSSGSceneDesc::Node &parent);
52 QSSGSceneDesc::Node *createSceneNode(
const QSSGGltf::Node &node);
53 void setNodeProperties(QSSGSceneDesc::Node &target,
const QSSGGltf::Node &source);
54 void setCameraProperties(QSSGSceneDesc::Camera &target,
const QSSGGltf::Camera &source);
55 void setLightProperties(QSSGSceneDesc::Light &target,
const QSSGGltf::Light &source);
56 void convertAnimations();
58 QSSGSceneDesc::Instancing *convertInstancing(
const QSSGGltf::Node &source, QSSGSceneDesc::Node &owner);
59 void setModelProperties(QSSGSceneDesc::Model &target,
const QSSGGltf::Node &source,
int nodeIndex);
60 void setMaterialProperties(QSSGSceneDesc::Material &target,
const QSSGGltf::Material &source);
61 void setSpecularGlossyProperties(QSSGSceneDesc::Material &target,
const QSSGGltf::Material &source);
62 QSSGSceneDesc::Material *ensureMaterial(
int materialIndex, QSSGSceneDesc::Node &owner);
63 QSSGSceneDesc::Texture *ensureTexture(
const QSSGGltf::TextureInfo &textureInfo, QSSGSceneDesc::Node &owner);
65 static Options parseOptions(
const QJsonObject &optionsObject);
67 const QSSGGltfDocument *m_document =
nullptr;
68 QSSGSceneDesc::Scene *m_scene =
nullptr;
70 QHash<
int, QSSGSceneDesc::Node *> m_nodeMap;
71 QHash<
int, QSSGSceneDesc::Mesh *> m_meshMap;
72 QHash<
int, QList<
int>> m_meshUsedPrimitives;
73 QHash<
int, GltfMorphTargetInfo> m_meshMorphInfo;
76 QList<
int> usedPrimitives;
79 QHash<
int, BuiltMesh> m_builtMeshes;
80 QHash<
int, QList<QSSGSceneDesc::MorphTarget *>> m_morphTargetMap;
81 QHash<
int, QSSGSceneDesc::Material *> m_materialMap;
82 QHash<QByteArray, QSSGSceneDesc::Texture *> m_textureMap;
83 QHash<
int, QSSGSceneDesc::TextureData *> m_textureDataMap;
84 QHash<
int, QSSGSceneDesc::Skin *> m_skinMap;