diff options
author | Jonathan "Geenz" Goodman <geenz@geenzo.com> | 2025-06-27 21:28:58 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-06-27 21:28:58 -0400 |
commit | b0c951ffe348f478f27a85720cc7aeffea32fe73 (patch) | |
tree | 9e473b5ecbd873062b29d91ee94cc06453e12dd7 /indra/newview/llmodelpreview.cpp | |
parent | f48fe44684a535ed2eefc64c134551ce72e9ecf4 (diff) |
Revert "Merge develop into glTF mesh import"
Diffstat (limited to 'indra/newview/llmodelpreview.cpp')
-rw-r--r-- | indra/newview/llmodelpreview.cpp | 52 |
1 files changed, 12 insertions, 40 deletions
diff --git a/indra/newview/llmodelpreview.cpp b/indra/newview/llmodelpreview.cpp index fc0a3ec58f..49c0006f66 100644 --- a/indra/newview/llmodelpreview.cpp +++ b/indra/newview/llmodelpreview.cpp @@ -30,7 +30,7 @@ #include "llmodelloader.h" #include "lldaeloader.h" -#include "gltf/llgltfloader.h" +#include "llgltfloader.h" #include "llfloatermodelpreview.h" #include "llagent.h" @@ -40,7 +40,6 @@ #include "lldrawable.h" #include "llface.h" #include "lliconctrl.h" -#include "lljointdata.h" #include "llmatrix4a.h" #include "llmeshrepository.h" #include "llmeshoptimizer.h" @@ -781,7 +780,7 @@ void LLModelPreview::loadModel(std::string filename, S32 lod, bool force_disable mLODFile[lod] = filename; - std::map<std::string, std::string> joint_alias_map; + std::map<std::string, std::string, std::less<>> joint_alias_map; getJointAliases(joint_alias_map); LLHandle<LLModelPreview> preview_handle = getHandle(); @@ -811,9 +810,6 @@ void LLModelPreview::loadModel(std::string filename, S32 lod, bool force_disable } else { - LLVOAvatar* av = getPreviewAvatar(); - std::vector<LLJointData> viewer_skeleton; - av->getJointMatricesAndHierarhy(viewer_skeleton); mModelLoader = new LLGLTFLoader( filename, lod, @@ -826,8 +822,7 @@ void LLModelPreview::loadModel(std::string filename, S32 lod, bool force_disable mJointsFromNode, joint_alias_map, LLSkinningUtil::getMaxJointCount(), - gSavedSettings.getU32("ImporterModelLimit"), - viewer_skeleton); + gSavedSettings.getU32("ImporterModelLimit")); } if (force_disable_slm) @@ -3095,48 +3090,25 @@ void LLModelPreview::lookupLODModelFiles(S32 lod) S32 next_lod = (lod - 1 >= LLModel::LOD_IMPOSTOR) ? lod - 1 : LLModel::LOD_PHYSICS; std::string lod_filename = mLODFile[LLModel::LOD_HIGH]; + std::string ext = ".dae"; std::string lod_filename_lower(lod_filename); LLStringUtil::toLower(lod_filename_lower); - - // Check for each supported file extension - std::vector<std::string> supported_exts = { ".dae", ".gltf", ".glb" }; - std::string found_ext; - std::string::size_type ext_pos = std::string::npos; - - for (const auto& ext : supported_exts) + std::string::size_type i = lod_filename_lower.rfind(ext); + if (i != std::string::npos) { - std::string::size_type i = lod_filename_lower.rfind(ext); - if (i != std::string::npos) - { - ext_pos = i; - found_ext = ext; - break; - } + lod_filename.replace(i, lod_filename.size() - ext.size(), getLodSuffix(next_lod) + ext); } - - if (ext_pos != std::string::npos) + if (gDirUtilp->fileExists(lod_filename)) { - // Replace extension with LOD suffix + original extension - std::string lod_file_to_check = lod_filename; - lod_file_to_check.replace(ext_pos, found_ext.size(), getLodSuffix(next_lod) + found_ext); - - if (gDirUtilp->fileExists(lod_file_to_check)) - { - LLFloaterModelPreview* fmp = LLFloaterModelPreview::sInstance; - if (fmp) - { - fmp->setCtrlLoadFromFile(next_lod); - } - loadModel(lod_file_to_check, next_lod); - } - else + LLFloaterModelPreview* fmp = LLFloaterModelPreview::sInstance; + if (fmp) { - lookupLODModelFiles(next_lod); + fmp->setCtrlLoadFromFile(next_lod); } + loadModel(lod_filename, next_lod); } else { - // No recognized extension found, continue with next LOD lookupLODModelFiles(next_lod); } } |