diff --git a/code/B3DImporter.cpp b/code/B3DImporter.cpp index 98b030417..dbde8769c 100644 --- a/code/B3DImporter.cpp +++ b/code/B3DImporter.cpp @@ -170,7 +170,8 @@ aiVector3D B3DImporter::ReadVec3(){ // ------------------------------------------------------------------------------------------------ aiQuaternion B3DImporter::ReadQuat(){ - float w=ReadFloat(); + // (aramis_acg) Fix to adapt the loader to changed quat orientation + float w=-ReadFloat(); float x=ReadFloat(); float y=ReadFloat(); float z=ReadFloat(); diff --git a/code/MS3DLoader.cpp b/code/MS3DLoader.cpp index cd846e0d0..6fad24f41 100644 --- a/code/MS3DLoader.cpp +++ b/code/MS3DLoader.cpp @@ -552,7 +552,12 @@ void MS3DImporter::InternReadFile( const std::string& pFile, aiNode* nd = rt->mChildren[i] = new aiNode(); const TempGroup& g = groups[i]; - nd->mName = aiString(g.name); + + // we need to generate an unique name for all mesh nodes. + // since we want to keep the group name, a prefix is + // prepended. + nd->mName = aiString("_"); + nd->mName.Append(g.name); nd->mParent = rt; nd->mMeshes = new unsigned int[nd->mNumMeshes = 1];