我使用我的模型的.obj文件中的.mtl文件中的引用加载纹理 . 我正在使用Assimp库来达到这个目的 .
问题是,正如 Headers 中所述,纹理没有出现在模型上或(我无法相信)它是黑色的 .
这是加载纹理的代码:
std::vector model::loadMaterialTextures(aiMaterial * mat, aiTextureType type, std::string typeName)
{
std::vector textures;
for (GLuint i = 0; i < mat->GetTextureCount(type); i++)
{
aiString str;
mat->GetTexture(type, i, &str);
GLboolean skip = false;
for (GLuint j = 0; j < textures_loaded.size(); j++)
{
if (textures_loaded[j].path == str)
{
skip = true;
break;
}
}
if (!skip)
{
texture tex;
tex.id = textureFromFile(str.C_Str(), this->directory);
tex.type = typeName;
tex.path = str;
textures.p