1.简介 本博客以.glb格式为例,加载glb格式的3d模型,网上找了一圈,基本上都是根据OpenGL官方示例,加载.obj格式的3d模型。 下面以.obj和.glb格式的3D模型简单介绍一下。 常见的.obj格式的3D模型如下所示:纹理都已经被剥离出来了。所以在使用Assimp库加载的时候,加载了指定的路径即可。 但是.glb格式的3D模型如下所示,就只有一个glb文件,纹理嵌入到模型当中,假如我们使用Assimp库去加载的时候,能够加载出模型,但是加载出来的效果全是黑的,加载不了纹理。 加载的效果如下图所示,黑的一片。 原因分析:找不到纹理路径。 2.解决方法 将纹理分离,保存到本地文件,加载本地纹理文件。 首先通过ReadFile,读取本地文件,返回aiScene。 获取纹理数量:scene->mNumTextures。 获取当前的纹理:aiTexture* texture = scene->mTextures[i]。 然后看一下aiTexture官网文档介绍。 /** Width of the texture, in pixels * * If mHeight is...