C++ ASSIMP在不进行任何更改的情况下导出导入的场景会引发异常

C++ ASSIMP在不进行任何更改的情况下导出导入的场景会引发异常,c++,assimp,C++,Assimp,我正在做一个项目,在这个项目中,我使用ASIMP库导入一个化身的3D网格,更新它,然后使用相同的ASIMP库再次导出更新后的场景。为了实现这一点,作为第一步,我编写了一个代码来导入场景,并且在不做任何更改的情况下将引用传递给导出函数。但是,导出函数抛出了一个错误。主要功能如下(您可以验证我没有对导入的场景进行任何更改): 如果有人使用assimp导出场景,请帮助我。似乎path没有包含文件名,只有目录部分,因此for export()不太可能创建输出文件。尽管如此,我同意,Assimp应该管理这

我正在做一个项目,在这个项目中,我使用ASIMP库导入一个化身的3D网格,更新它,然后使用相同的ASIMP库再次导出更新后的场景。为了实现这一点,作为第一步,我编写了一个代码来导入场景,并且在不做任何更改的情况下将引用传递给导出函数。但是,导出函数抛出了一个错误。主要功能如下(您可以验证我没有对导入的场景进行任何更改):


如果有人使用assimp导出场景,请帮助我。

似乎path没有包含文件名,只有目录部分,因此for export()不太可能创建输出文件。尽管如此,我同意,Assimp应该管理这个错误情况。

看起来它正在尝试访问export()中的某个空指针。顺便说一句,您是否尝试通过放置断点来调试库代码?我正在创建一个库,我没有将assimp代码附加到我的项目中。因此,我无法调试ASIMP代码,但我确信错误来自ASIMP导出代码。ASIMP库中可能存在错误,或者它正试图访问场景中的任何空字段。我认为除了调试之外没有别的方法了。调试它不太麻烦。我已经做到了。也许只要稍微努力我就能让它为我自己工作。但我担心的是:
assimp库是否没有经过测试?
它没有导出通过自己的
import()
方法导入的场景。听起来我们的功能没有经过很好的测试。对不起。我们会小心的!
int main(int argc, char** argv)
{
    string filename = "../Content/PinocchioMesh/Model1.obj";

    Assimp::Importer Importer;
    //Importer.
    cout << "\tReading file using ASSIMP" << endl;
    const aiScene* aiscene = Importer.ReadFile(filename.c_str(), aiProcess_JoinIdenticalVertices | \
        aiProcess_GenSmoothNormals | aiProcess_FlipUVs | aiProcess_SortByPType | aiProcess_Triangulate);

    string str = Importer.GetErrorString();

    if (!aiscene) {
        printf("Error parsing '%s': '%s'\n", filename.c_str(), Importer.GetErrorString());
        return false;
    }


    Assimp::Exporter exporter;
    const aiExportFormatDesc* format = exporter.GetExportFormatDescription(0);
    int lIndex = filename.find_last_of('/');
    //const string path = Filename.substr(0,lIndex+1);
    string path = "../Content/PinocchioMesh/";
    cout << "\tExport path: " << path << endl;
    aiReturn ret = exporter.Export(aiscene, format->id, path, aiscene->mFlags);
    cout << exporter.GetErrorString() << endl;

    return 0;
}
First-chance exception at 0x1052591B (Assimp32.dll) in ImportRigExport.exe: 0xC0000005: Access violation reading location 0x00000000.