glDrawArrays修改属性地址

时间:2013-05-08 21:45:44

标签: opengl

glDrawArrays会修改glVertexAttribPointer地址吗?

当我试图缓存glVertexAttribPointer调用时,我偶然发现了这个问题,并且如果我在每个glDrawArrays之后没有重新应用glVertexAttribPointer调用,则会出现访问冲突异常。这是正常行为还是驱动程序错误?

2 个答案:

答案 0 :(得分:3)

  

glDrawArrays会修改glVertexAttribPointer地址吗?

  当我试图缓存glVertexAttribPointer调用时,我偶然发现了这个问题

请解释(理想情况下显示源代码)如何实现此“缓存”。

答案 1 :(得分:0)

当您的顶点属性指针超出您正在读取的缓冲区的内存范围时,就会发生访问冲突。

你是如何缓存这些电话的?如果你没有禁用顶点属性数组,先前设置的信息仍将存在,并仍将尝试从新的VBO读取。