FBX SDK 访问自定义属性
FBX SDK accessing custom attributes
我有一个在 Maya 中添加了自定义属性的 FBX 文件。
使用 FBX SDK,我正在尝试加载网格并检索这些属性。
我有:
FbxNode* lRootNode = lScene->GetRootNode();
if (lRootNode) {
for (int i = 0; i < lRootNode->GetChildCount(); i++)
{
FbxProperty p = lRootNode->GetChild(i)->FindProperty("UDPMAYA", false);
if (!p.IsValid())
std::cout << "found prop" << std::endl;
PrintNode(lRootNode->GetChild(i));
}
}
"UDPMAYA" 可能是错误的,我从我发现的 "UDP3DSMAX" 示例中推断...
我在文档中找不到任何对此进行解释的内容,如何将自定义属性从 Maya 获取到 fbx SDK 中?
像这样:
#define PROPERTY "attribute_name"
FbxMesh* pMesh = (FbxMesh*)pFbxChildNode->GetNodeAttribute();
FbxProperty p = pFbxChildNode->FindProperty(PROPERTY, false);
if (p.IsValid())
{
std::string nodeName = p.GetName();
std::cout << "found property: " << nodeName <<std::endl;
}
我有一个在 Maya 中添加了自定义属性的 FBX 文件。 使用 FBX SDK,我正在尝试加载网格并检索这些属性。
我有:
FbxNode* lRootNode = lScene->GetRootNode();
if (lRootNode) {
for (int i = 0; i < lRootNode->GetChildCount(); i++)
{
FbxProperty p = lRootNode->GetChild(i)->FindProperty("UDPMAYA", false);
if (!p.IsValid())
std::cout << "found prop" << std::endl;
PrintNode(lRootNode->GetChild(i));
}
}
"UDPMAYA" 可能是错误的,我从我发现的 "UDP3DSMAX" 示例中推断...
我在文档中找不到任何对此进行解释的内容,如何将自定义属性从 Maya 获取到 fbx SDK 中?
像这样:
#define PROPERTY "attribute_name"
FbxMesh* pMesh = (FbxMesh*)pFbxChildNode->GetNodeAttribute();
FbxProperty p = pFbxChildNode->FindProperty(PROPERTY, false);
if (p.IsValid())
{
std::string nodeName = p.GetName();
std::cout << "found property: " << nodeName <<std::endl;
}