No longer filling KRLocator::m_userAttributes with fbx properties that had unsupported data types

--HG--
branch : nfb
This commit is contained in:
2013-12-05 20:15:32 -08:00
parent 5b708fa1cd
commit d4f16439fc

View File

@@ -1615,22 +1615,24 @@ KRNode *LoadLocator(KRNode *parent_node, FbxScene* pFbxScene, FbxNode* pNode) {
FbxProperty fbx_property = pNode->GetFirstProperty(); FbxProperty fbx_property = pNode->GetFirstProperty();
while(fbx_property.IsValid()) { while(fbx_property.IsValid()) {
std::string property_name = fbx_property.GetNameAsCStr(); std::string property_name = fbx_property.GetNameAsCStr();
std::transform(property_name.begin(), property_name.end(), property_name.begin(), ::tolower);
boost::variant<int, double, bool, std::string> property_value = ""; boost::variant<int, double, bool, std::string> property_value = "";
switch(fbx_property.GetPropertyDataType().GetType()) { switch(fbx_property.GetPropertyDataType().GetType()) {
case eFbxInt: case eFbxInt:
property_value = fbx_property.Get<FbxInt>(); new_locator->getUserAttributes()[property_name] = fbx_property.Get<FbxInt>();
break; break;
case eFbxDouble: case eFbxDouble:
property_value = fbx_property.Get<FbxDouble>(); new_locator->getUserAttributes()[property_name] = fbx_property.Get<FbxDouble>();
break; break;
case eFbxBool: case eFbxBool:
property_value = fbx_property.Get<FbxBool>(); new_locator->getUserAttributes()[property_name] = fbx_property.Get<FbxBool>();
break; break;
case eFbxFloat: case eFbxFloat:
property_value = fbx_property.Get<FbxDouble>(); new_locator->getUserAttributes()[property_name] = fbx_property.Get<FbxDouble>();
break; break;
case eFbxString: case eFbxString:
property_value = std::string(fbx_property.Get<FbxString>().Buffer()); new_locator->getUserAttributes()[property_name] = std::string(fbx_property.Get<FbxString>().Buffer());
break; break;
default: default:
{ {
@@ -1639,9 +1641,7 @@ KRNode *LoadLocator(KRNode *parent_node, FbxScene* pFbxScene, FbxNode* pNode) {
break; break;
} }
std::transform(property_name.begin(), property_name.end(), property_name.begin(), ::tolower); fbx_property = pNode->GetNextProperty(fbx_property);
new_locator->getUserAttributes()[property_name] = property_value;
} }