在directx 11 assimp中加载3d模型

时间:2013-04-13 10:21:30

标签: c++ directx assimp

我是这个论坛的新人。 我正在尝试使用assimp在我的程序中加载3d模型,但是发生了一些错误。有我的代码:

bool Model::LoadModel(const char* fileName)
{
Assimp::Importer imp;
const aiScene* pScene = NULL;
const aiMesh* pMesh = NULL;

pScene = imp.ReadFile(fileName, aiProcess_Triangulate);
if(!pScene)
{
    MessageBox(NULL, "Error read file", "Error", MB_OK);
    return false;
}
else
    MessageBox(NULL, "read file OK", "Error", MB_OK);

pMesh = pScene->mMeshes[0];
if(!pMesh)
{
    MessageBox(NULL, "Failed to find meshes", "Error", MB_OK);
    return false;
}

for(unsigned int i = 0; i < pMesh->mNumFaces; i++)
{
    if(pMesh->mFaces[i].mNumIndices == 3)
        numIndices_ = numIndices_ + 3;
    else
    {
        MessageBox(NULL, "Failed to parsing faces", "Error", MB_OK);
        return false;
    }
}

return true;
}

当程序开始执行行pMesh-&gt; mFaces [i] .mNumIndices == 3时,发生运行时错误。调试日志文件告诉我是无法计算mNumIndices。也许有人可以帮助我?我不知道为什么会这样。

0 个答案:

没有答案