implementing backup of cluster matrices

This commit is contained in:
amantley 2018-11-12 11:12:56 -08:00
parent 5bb2378cd9
commit 92befbc5bf
2 changed files with 9 additions and 0 deletions

View file

@ -349,6 +349,7 @@ public:
Extents meshExtents;
QVector<HFMAnimationFrame> animationFrames;
std::vector<std::vector<glm::mat4>> clusterBindMatrixOriginalValues;
int getJointIndex(const QString& name) const { return jointIndices.value(name) - 1; }
QStringList getJointNames() const;

View file

@ -2034,6 +2034,14 @@ HFMModel* FBXReader::extractHFMModel(const QVariantHash& mapping, const QString&
//hfmModel.jointRotationOffsets.insert(13, glm::quat(0.5f, 0.5f, 0.5f, -0.5f));
//hfmModel.jointRotationOffsets.insert(62, glm::quat(0.7071f, 0.0f, -0.7071f, 0.0f));
for (int i = 0; i < (int)hfmModel.meshes.size(); i++) {
const HFMMesh& mesh = hfmModel.meshes.at(i);
for (int j = 0; j < mesh.clusters.size(); j++) {
const HFMCluster& cluster = mesh.clusters.at(j);
hfmModel.clusterBindMatrixOriginalValues[i][cluster.jointIndex] = cluster.inverseBindMatrix;
}
}
return hfmModelPtr;
}