- fbx: don't die if a file contains no GlobalSettings.
parent
cdb7caffbd
commit
9ea7fc2856
|
@ -1797,7 +1797,7 @@ private:
|
||||||
// empty animations would fail validation, so drop them
|
// empty animations would fail validation, so drop them
|
||||||
delete anim;
|
delete anim;
|
||||||
animations.pop_back();
|
animations.pop_back();
|
||||||
FBXImporter::LogInfo("ignoring empty AnimationStack: " + name);
|
FBXImporter::LogInfo("ignoring empty AnimationStack (using IK?): " + name);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -162,7 +162,7 @@ const Object* LazyObject::Get(bool dieOnError)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (!strncmp(obtype,"Model",length)) {
|
else if (!strncmp(obtype,"Model",length)) {
|
||||||
// do not load IKEffectors yet
|
// FK and IK effectors are not supported
|
||||||
if (strcmp(classtag.c_str(),"IKEffector") && strcmp(classtag.c_str(),"FKEffector")) {
|
if (strcmp(classtag.c_str(),"IKEffector") && strcmp(classtag.c_str(),"FKEffector")) {
|
||||||
object.reset(new Model(id,element,doc,name));
|
object.reset(new Model(id,element,doc,name));
|
||||||
}
|
}
|
||||||
|
@ -318,7 +318,10 @@ void Document::ReadGlobalSettings()
|
||||||
const Scope& sc = parser.GetRootScope();
|
const Scope& sc = parser.GetRootScope();
|
||||||
const Element* const ehead = sc["GlobalSettings"];
|
const Element* const ehead = sc["GlobalSettings"];
|
||||||
if(!ehead || !ehead->Compound()) {
|
if(!ehead || !ehead->Compound()) {
|
||||||
DOMError("no GlobalSettings dictionary found");
|
DOMWarning("no GlobalSettings dictionary found");
|
||||||
|
|
||||||
|
globals.reset(new FileGlobalSettings(*this, boost::make_shared<const PropertyTable>()));
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::shared_ptr<const PropertyTable> props = GetPropertyTable(*this, "", *ehead, *ehead->Compound(), true);
|
boost::shared_ptr<const PropertyTable> props = GetPropertyTable(*this, "", *ehead, *ehead->Compound(), true);
|
||||||
|
|
Loading…
Reference in New Issue