如何在 glDrawElements 中处理索引数据



我知道当调用glDrawElements时,它使用索引缓冲区来确定以什么顺序绘制哪些顶点。我的问题是如何将这些索引应用于纹理、法线和颜色属性。是否可以为每个顶点设置另一个索引数组,以用于纹理坐标和法线。还是必须创建法线坐标缓冲区和纹理坐标缓冲区,以便它们与正在绘制的顶点对齐?

是否可以为每个顶点设置另一个索引数组,以用于纹理坐标和法线。

不。有充分的理由:

还是必须创建法线坐标缓冲区和纹理坐标缓冲区,以便它们与正在绘制的顶点对齐?

不要尝试将顶点、法线、纹理坐标等视为分配给顶点(-位置)的不同矢量。顶点实际上是一个复合向量,它涵盖了所有这些属性。旧术语源于固定函数管道。现代 OpenGL 只知道通用顶点属性。

因此,每个索引都只引用一个特定的顶点向量。如果任何属性存在差异,则它是不同的顶点,因此应被赋予不同的索引。

相关内容

  • 没有找到相关文章

最新更新