Assimp 访问 aiNode 名称时出错
Assimp Error acessing aiNode name
我正在尝试使用 assimp 加载动画网格(骨架),但我遇到了一些问题。
当我尝试访问(根节点)aiNode*
的名称时,程序崩溃了。在 Visual Studio 的输出中,它表示无法读取字符串字符。
(我正在关注 this tutorial。)
void Mesh::ReadNodeHierarchy(float AnimationTime, aiScene* scene, aiNode* pNode, const aiMatrix4x4& ParentTransform) {
if (pNode == NULL) {
std::cerr << "NODE NULL\n";
return;
}
std::cerr << pNode->mName.length; // I tried to check the length of the string but it caused the same error
std::string NodeName(pNode->mName.data); // Throws error
(...)
}
如果有人遇到同样的问题,我刚刚发现当Assimp::Importer class被摧毁时,场景也是如此。
我的导入器 class 是本地的,所以它被破坏了,从而导致错误。
我正在尝试使用 assimp 加载动画网格(骨架),但我遇到了一些问题。
当我尝试访问(根节点)aiNode*
的名称时,程序崩溃了。在 Visual Studio 的输出中,它表示无法读取字符串字符。
(我正在关注 this tutorial。)
void Mesh::ReadNodeHierarchy(float AnimationTime, aiScene* scene, aiNode* pNode, const aiMatrix4x4& ParentTransform) {
if (pNode == NULL) {
std::cerr << "NODE NULL\n";
return;
}
std::cerr << pNode->mName.length; // I tried to check the length of the string but it caused the same error
std::string NodeName(pNode->mName.data); // Throws error
(...)
}
如果有人遇到同样的问题,我刚刚发现当Assimp::Importer class被摧毁时,场景也是如此。
我的导入器 class 是本地的,所以它被破坏了,从而导致错误。