如何通过固定函数管道使用 ASSIMP?



我已经学会了如何通过着色器导入带有 assimp 的 .obj 但是,是否可以通过固定函数管道导入带有 assimp 的 .obj。 这样我就可以轻松地通过OpenGL API进行编程。

它不应该在两者之间发生显着变化,通过假设你应该得到你的顶点位置、法线和 UV 坐标,这与 opengl 无关。

将要改变的是,您将不使用VAO/VBO,但您必须"手动"发送每个顶点属性 跟glTexCoord2dv(your uv) glNormal3dv( your normal) glVertex3dv( your vertex)

对于您的每个面部和顶点。

编辑:

波前对象格式每个顶点仅使用一组 UV 坐标,因此所有纹理都将使用相同的 UV 贴图。如果您有使用多个UV贴图的纹理,则应查看另一种格式,例如 .fbx .但这些东西与固定/可编程管道无关。一旦文件被 assimp 导入,你就完成了。所有这些更改都是用于发送数据的函数。此外,obj文件的材质数据非常有限,因此您所拥有的只是所用纹理的名称及其通道。由于材质与渲染管线密切相关,因此信息将始终丢失。

最新更新