代码之家  ›  专栏  ›  技术社区  ›  demalegabi

不加载从Blender导出的obj文件的层次结构

  •  0
  • demalegabi  · 技术社区  · 6 年前

    我在搅拌机里做了一个模型,层级结构看起来像这样

    enter image description here

    导出为.obj文件

    然后我用assimp将这个文件加载到OpenGL中

    Assimp::Importer importer;
    
    const auto * scene = importer.ReadFile(filename, aiProcess_Triangulate);
    
    if (!scene || scene->mFlags & AI_SCENE_FLAGS_INCOMPLETE || !scene->mRootNode)
    {
        Logger->log(importer.GetErrorString());
        return;
    }
    

    mrootnode包含30个子元素,这是场景中的对象数,但每个子元素都不包含子元素,因此看起来像是assimp丢弃了层次信息,或者是blender没有输出层次信息。

    有人能告诉我这里缺少什么吗?

    谢谢

    1 回复  |  直到 6 年前
        1
  •  0
  •   KimKulling    6 年前

    这是来自assimp的obj导入程序中的已知错误。我们没有正确存储组层次结构。如果能举一个小例子来解决这个问题,那就太好了,因为在过去,我找不到时间来解决这个问题。

    多谢指指我:—)!

    基姆