Revert "FBX node IDs aren't alphanumerically ordered per logical structure"

This reverts commit a7ec4501e6.

Because remainingModels is a QSet, the order is not guaranteed.
Therefore the same code iterating over the same items will sometimes have a different ordering.
See docs for QSet, http://doc.qt.io/qt-5/qset.html
This was bug was causing scrambled avatars, because both the transmitter and receiver of the AvatarData packets
make the strong assumption that the joint orders are same.  When they are not the avatar's appear scrambled.

(cherry picked from commit f07b1fa4c5)
This commit is contained in:
Anthony J. Thibault 2018-02-15 11:32:29 -08:00
parent db399a47eb
commit cee0bbf8a5

View file

@ -1481,6 +1481,11 @@ FBXGeometry* FBXReader::extractFBXGeometry(const QVariantHash& mapping, const QS
}
while (!remainingModels.isEmpty()) {
QString first = *remainingModels.constBegin();
foreach (const QString& id, remainingModels) {
if (id < first) {
first = id;
}
}
QString topID = getTopModelID(_connectionParentMap, models, first, url);
appendModelIDs(_connectionParentMap.value(topID), _connectionChildMap, models, remainingModels, modelIDs, true);
}