【问题标题】:Does interleaving in VBOs help or hinder proformance?VBO 中的交错是帮助还是阻碍性能?
【发布时间】:2025-12-07 16:35:01
【问题描述】:

使用 OpenGL VBO 时,您可以交错数据

例如,您甚至可以将顶点数据与供 CPU 而不是 GPU 使用的其他数据交错。

交错对主流独立显卡和集成显卡的性能有帮助还是有阻碍?

【问题讨论】:

    标签: opengl vbo


    【解决方案1】:

    一般的答案是它通常会有所帮助,但并非总是如此。

    例如,如果您首先执行 z-only pass 以降低填充率,那么交错所有其他属性只会通过拉入未使用的数据来给缓存带来压力。在这种情况下,交错除位置之外的所有内容可能是有意义的。或者你可以有两个顶点数组,一个包含所有属性,一个只包含位置。

    除非我有充分的理由不这样做,否则我倾向于交错所有内容。

    【讨论】:

      【解决方案2】:

      我不记得确切的数字,但在我的英特尔芯片组上,它确实略微提高了帧速率,可能是 10 %。数据包含顶点、纹理坐标和法线。

      【讨论】: