【发布时间】:2014-07-04 00:03:44
【问题描述】:
由于绘制数千个相似三角形(具有不同属性)的性能问题,我想通过一次调用 drawElements 来绘制所有这些三角形。但是为了用它们各自的属性(例如:世界位置、颜色、方向)绘制每个三角形,我相信我需要将一个数组缓冲区发送到我的顶点着色器,其中数组是所有三角形属性的列表。
如果这种方法确实是标准方法,那么我很高兴知道我的理论是正确的。我只需要知道如何将数组缓冲区发送到着色器。请注意,目前我知道如何发送多个属性和制服(尽管它们在内存中并不连续,这正是我要寻找的)。
如果没有,如果常驻专家能指出我正确的方向,我将不胜感激。
我有一个相关的问题,因为我在实际实现 VBO 时遇到了麻烦。 How to include model matrix to a VBO?
【问题讨论】:
-
听起来您正在寻找顶点缓冲区对象 (VBO) 快速搜索此 VBO 和 OpenGL ES 2.0 会产生各种样本。
-
我对如何实现这一点仍然非常多云/困惑。我需要一个概念性示例/教程/图表/详细说明。具体来说,如果我有一个包含多个对象的缓冲区,顶点着色器如何知道它当前位于哪个“对象索引”上(或者这对开发人员来说是自动/透明的)?
标签: opengl-es opengl-es-2.0 webgl vertex-shader