我正在使用 VBO 创建一个应用程序来渲染一些颜色结构困难的对象。我注意到,VBO 定义元素的颜色等于元素缓冲区中的最后一个顶点索引。例如,当我像这样使用点数组时
double pointBuf[]={ -0.1d, 0.1d, 0,
0.1d, 0.1d, 0,
0.1d, -0.1d, 0};
颜色数组:
double colorBuf[] = { 0d, 1d, 0d,
0d, 1d, 0d,
1d, 0d, 0d};
和元素数组:
int elementBuf[] = {0, 1, 2};
绘制一个三角形,它将是红色的(因为 elementBuf 中的最后一个元素是 2,在 colorBuf 中它匹配红色)。
事实上,它会导致额外的内存使用来正确绘制所有内容。
有没有其他可能的方式将颜色与元素联系起来?