OpenGL - 索引缓冲困难
我有一个自定义文件格式,其中包含3D网格所需的所有信息(从3ds Max导出)。我已经提取了顶点,顶点索引和法线的数据。
我向顶点数据,顶点索引和法线数据传递给OpenGL,我通过调用渲染网格glDrawElements(GL_TRIANGLES,...)
一切看起来都很正常,但正常情况。问题是法线具有不同的指数。并且因为OpenGL只能使用一个索引缓冲区,所以它对顶点和法线都使用该索引缓冲区。
如果你能建议我如何解决这个问题,我将非常感激。
需要注意的重要一点是顶点/普通数据没有“排序”,因此我无法使用glDrawArrays(GL_TRIANGLES,...)
- 网格无法正确渲染的功能。
有没有一种方法/算法可以用来对数据进行排序,以便可以正确绘制网格glDrawArrays(GL_TRIANGLES,..)
?但即使有一个算法,还有一个问题 - 我将不得不复制一些顶点(因为我的顶点缓冲区由唯一的顶点组成 - 例如,如果你有立方体我的缓冲区只有8个顶点)我不确定怎么做。
忽然笑
千巷猫影
慕村225694
相关分类