MAINT-5678 Improvement: ImporterPreprocessDAE debug setting to disable DAE preprocessing when needed
parent
72685fe1cb
commit
8920beabc4
|
|
@ -816,7 +816,8 @@ LLDAELoader::LLDAELoader(
|
|||
void* opaque_userdata,
|
||||
JointTransformMap& jointMap,
|
||||
JointSet& jointsFromNodes,
|
||||
U32 modelLimit)
|
||||
U32 modelLimit,
|
||||
bool preprocess)
|
||||
: LLModelLoader(
|
||||
filename,
|
||||
lod,
|
||||
|
|
@ -827,7 +828,8 @@ LLDAELoader::LLDAELoader(
|
|||
opaque_userdata,
|
||||
jointMap,
|
||||
jointsFromNodes),
|
||||
mGeneratedModelLimit(modelLimit)
|
||||
mGeneratedModelLimit(modelLimit),
|
||||
mPreprocessDAE(preprocess)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
@ -851,7 +853,16 @@ bool LLDAELoader::OpenFile(const std::string& filename)
|
|||
{
|
||||
//no suitable slm exists, load from the .dae file
|
||||
DAE dae;
|
||||
domCOLLADA* dom = dae.openFromMemory(filename, preprocessDAE(filename).c_str());
|
||||
domCOLLADA* dom;
|
||||
if (mPreprocessDAE)
|
||||
{
|
||||
dom = dae.openFromMemory(filename, preprocessDAE(filename).c_str());
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_INFOS() << "Skipping dae preprocessing" << LL_ENDL;
|
||||
dom = dae.open(filename);
|
||||
}
|
||||
|
||||
if (!dom)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -56,7 +56,8 @@ public:
|
|||
void* opaque_userdata,
|
||||
JointTransformMap& jointMap,
|
||||
JointSet& jointsFromNodes,
|
||||
U32 modelLimit);
|
||||
U32 modelLimit,
|
||||
bool preprocess);
|
||||
virtual ~LLDAELoader() ;
|
||||
|
||||
virtual bool OpenFile(const std::string& filename);
|
||||
|
|
@ -104,6 +105,7 @@ protected:
|
|||
|
||||
private:
|
||||
U32 mGeneratedModelLimit; // Attempt to limit amount of generated submodels
|
||||
bool mPreprocessDAE;
|
||||
|
||||
};
|
||||
#endif // LL_LLDAELLOADER_H
|
||||
|
|
|
|||
|
|
@ -34,6 +34,17 @@
|
|||
<string>U32</string>
|
||||
<key>Value</key>
|
||||
<integer>768</integer>
|
||||
</map>
|
||||
<key>ImporterPreprocessDAE</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Enable preprocessing for DAE files to fix some ColladaDOM related problems (like support for space characters within names and ids).</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>IMShowTime</key>
|
||||
<map>
|
||||
|
|
|
|||
|
|
@ -1766,7 +1766,8 @@ void LLModelPreview::loadModel(std::string filename, S32 lod, bool force_disable
|
|||
this,
|
||||
mJointTransformMap,
|
||||
mJointsFromNode,
|
||||
gSavedSettings.getU32("ImporterModelLimit"));
|
||||
gSavedSettings.getU32("ImporterModelLimit"),
|
||||
gSavedSettings.getBOOL("ImporterPreprocessDAE"));
|
||||
|
||||
if (force_disable_slm)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue