Fix calculation for root transform

This commit is contained in:
amzn-mike
2021-06-22 23:59:40 -05:00
parent b3eb54e9c9
commit feb58fac5e
@@ -104,12 +104,18 @@ namespace AZ
iteratingNode = iteratingNode->mParent;
}
localTransform =
offsets.at(AZ::GetMin(offsets.size()-1, static_cast<decltype(offsets.size())>(1))) // parent bone offset, or if there is no parent, then current node offset
* inverseOffsets.at(inverseOffsets.size() - 1) // Inverse of root bone offset
* offsets.at(offsets.size() - 1) // Root bone offset
* inverseOffsets.at(0); // Inverse of current node offset
if (inverseOffsets.size() == 1)
{
localTransform = inverseOffsets[0];
}
else
{
localTransform = offsets.at(1) // parent bone offset
* inverseOffsets.at(inverseOffsets.size() - 1) // Inverse of root bone offset
* offsets.at(offsets.size() - 1) // Root bone offset
* inverseOffsets.at(0); // Inverse of current node offset
}
}
else
{