diff --git a/irr/src/CGLTFMeshFileLoader.cpp b/irr/src/CGLTFMeshFileLoader.cpp index 87712595a..bd8356c91 100644 --- a/irr/src/CGLTFMeshFileLoader.cpp +++ b/irr/src/CGLTFMeshFileLoader.cpp @@ -426,7 +426,10 @@ void SelfType::MeshExtractor::addPrimitive( throw std::runtime_error("too many vertices"); // Apply the global transform along the parent chain. - transformVertices(*vertices, parent->GlobalMatrix); + // "Only the joint transforms are applied to the skinned mesh; + // the transform of the skinned mesh node MUST be ignored." + if (!skinIdx) + transformVertices(*vertices, parent->GlobalMatrix); auto maybeIndices = getIndices(primitive); std::vector indices;