通过assimp给OpenGL加载模型为什么显示模型为全黑?

我是根据网站learnopengl.com上的模型载入部分来学的。根据示例应该显示一个纳米服战士的模型。但是实际上只有一个黑色的模型,什么纹理细节都没有,我换了一个蜘蛛的模型也不行。这是为什么啊?是不是贴图丢失了?代码都是网站作者写的,我复制过来,模型是OBJ格式,可以正常生成就是模型全黑为什么啊,是不是我assimp库配置还有问题?

http://blog.csdn.net/vcube/article/details/48828525

改成Model myModel("G:/nanosuit/nanosuit.obj");

兄弟 你解决出来了了  如果有解决办法 可不可以发一下我的邮箱1141884370@qq.com  谢谢

请问最后解决了吗

我真的曹了,你把model.h里面的TextureFromFile函数里面的string filename = string(path);修改成string filename = path;就行了,char数组构建string竟然会发生数据丢失?真的ri了,改了这个东西一下午

1、可以先打印导入的顶点等数据,看看有没有正确导入模型;
2、有时候下面这三个uniform变量在对其赋值的时候,当赋值不正确也不会出模型的(我当时出不来模型就是这个原因);
uniform mat4 model;
uniform mat4 view;
uniform mat4 projection;
特别是在自己写那个setMat4函数的时候


void setMat4(const std::string &name, glm::mat4 value) const
    {
        glUniformMatrix4fv(glGetUniformLocation(ID, name.c_str()), 1, GL_FALSE, glm::value_ptr(value));
    }

3、第三点就是大家公认的模型路径问题了,看看你导入的模型相对于你项目的路径,给path变量赋值的时候是“/”,还是"\",这个斜杠要跟你
导入.obj时候使用的"/"或“\”相同才行。