我们如何获得glDrawElements()的指数?

时间:2010-08-27 17:10:56

标签: opengl opengl-3

我正在尝试使用Assimp库将模型导入到使用VBO的基本OpenGL应用程序中。

如果我理解正确的话,glDrawElements是理想的现代绘画方式之一。

但是我们如何从通用导入库中获取该信息?

如果您有特定的Assimp图书馆知识,我们表示赞赏。

-

生成这些的过程通常是什么?

2 个答案:

答案 0 :(得分:4)

从单个缓冲区中收集aiMesh::mFaces的所有索引。确保将aiProcess_Triangulate作为后处理标记传递给Assimp(在aiProcess_JoinVertices中以及对您有用的任何内容),并跳过点和线或单独处理它们。

aiMesh中的各种数据流 - 例如aiMesh::mVerticesaiMesh::mNormals需要设置为GL输入数据流(glVertexPointer,...)。

答案 1 :(得分:1)

documentation看起来aiFace::mIndicesaiMesh::mFaces索引到aiMesh::mVertices

aiVector3D看起来已经布局,以便您能够使用glVertexPointer()拨打mVertices并直接在mIndices中使用glDrawElements()调用