Browse Source

Update assimpShapeLoader.cpp

most uniform shape import across the formats....
marauder2k7 9 months ago
parent
commit
684f299e86
1 changed files with 3 additions and 13 deletions
  1. 3 13
      Engine/source/ts/assimp/assimpShapeLoader.cpp

+ 3 - 13
Engine/source/ts/assimp/assimpShapeLoader.cpp

@@ -182,7 +182,7 @@ void AssimpShapeLoader::enumerateScene()
    Con::printf("[ASSIMP] Attempting to load file: %s", shapePath.getFullPath().c_str());
 
    // Define post-processing steps
-   unsigned int ppsteps = aiProcess_Triangulate | aiProcess_ConvertToLeftHanded & ~aiProcess_MakeLeftHanded;
+   unsigned int ppsteps = aiProcess_Triangulate | aiProcess_ConvertToLeftHanded & ~aiProcess_FlipWindingOrder;
 
    const auto& options = ColladaUtils::getOptions();
    if (options.reverseWindingOrder) ppsteps |= aiProcess_FlipWindingOrder;
@@ -249,12 +249,6 @@ void AssimpShapeLoader::enumerateScene()
    }
 
    aiMatrix4x4 rotationMatrix;
-   rotationMatrix = aiMatrix4x4::RotationX(-AI_MATH_PI / 2, rotationMatrix);
-   applyTransformation(mScene->mRootNode, rotationMatrix);
-
-   rotationMatrix = aiMatrix4x4::RotationY(AI_MATH_PI, rotationMatrix);
-   applyTransformation(mScene->mRootNode, rotationMatrix);
-
    for (unsigned int i = 0; i < mScene->mNumTextures; ++i) {
       extractTexture(i, mScene->mTextures[i]);
    }
@@ -280,12 +274,8 @@ void AssimpShapeLoader::enumerateScene()
    if (!boundsNode) {
       auto* reqNode = new aiNode("bounds");
       mScene->mRootNode->addChildren(1, &reqNode);
-      rotationMatrix = aiMatrix4x4::RotationX(-AI_MATH_PI / 2, rotationMatrix);
-      applyTransformation(reqNode, rotationMatrix);
-      /*rotationMatrix = aiMatrix4x4::RotationY(-AI_MATH_PI, rotationMatrix);
-      applyTransformation(reqNode, rotationMatrix);*/
-
-      auto* appBoundsNode = new AssimpAppNode(mScene, reqNode, rootNode);
+      reqNode->mTransformation = mScene->mRootNode->mTransformation;
+      auto* appBoundsNode = new AssimpAppNode(mScene, reqNode);
       if (!processNode(appBoundsNode)) {
          delete appBoundsNode;
       }