- fbx: support reading LimbNode attachments, less Property70 warnings.
parent
5bc573edb8
commit
a1713052e5
|
@ -152,6 +152,9 @@ const Object* LazyObject::Get(bool dieOnError)
|
|||
else if (!strcmp(classtag.c_str(),"Null")) {
|
||||
object.reset(new Null(id,element,doc,name));
|
||||
}
|
||||
else if (!strcmp(classtag.c_str(),"LimbNode")) {
|
||||
object.reset(new LimbNode(id,element,doc,name));
|
||||
}
|
||||
}
|
||||
else if (!strncmp(obtype,"Deformer",length)) {
|
||||
if (!strcmp(classtag.c_str(),"Cluster")) {
|
||||
|
|
|
@ -271,6 +271,16 @@ public:
|
|||
};
|
||||
|
||||
|
||||
/** DOM base class for FBX limb node markers attached to a node */
|
||||
class LimbNode : public NodeAttribute
|
||||
{
|
||||
public:
|
||||
|
||||
LimbNode(uint64_t id, const Element& element, const Document& doc, const std::string& name);
|
||||
~LimbNode();
|
||||
};
|
||||
|
||||
|
||||
/** DOM base class for FBX lights attached to a node */
|
||||
class Light : public NodeAttribute
|
||||
{
|
||||
|
|
|
@ -65,11 +65,11 @@ NodeAttribute::NodeAttribute(uint64_t id, const Element& element, const Document
|
|||
|
||||
const std::string& classname = ParseTokenAsString(GetRequiredToken(element,2));
|
||||
|
||||
// hack on the deriving type but Null attributes are the only case in which
|
||||
// hack on the deriving type but Null/LimbNode attributes are the only case in which
|
||||
// the property table is by design absent and no warning should be generated
|
||||
// for it.
|
||||
const bool is_null = !strcmp(classname.c_str(), "Null");
|
||||
props = GetPropertyTable(doc,"NodeAttribute.Fbx" + classname,element,sc, is_null);
|
||||
const bool is_null_or_limb = !strcmp(classname.c_str(), "Null") || !strcmp(classname.c_str(), "LimbNode");
|
||||
props = GetPropertyTable(doc,"NodeAttribute.Fbx" + classname,element,sc, is_null_or_limb);
|
||||
}
|
||||
|
||||
|
||||
|
@ -152,6 +152,21 @@ Null::~Null()
|
|||
|
||||
}
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
LimbNode::LimbNode(uint64_t id, const Element& element, const Document& doc, const std::string& name)
|
||||
: NodeAttribute(id,element,doc,name)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
LimbNode::~LimbNode()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue