我正在尝试使用实例化渲染来渲染立方体。我得到了这个工作,我用glDrawArraysInstanced渲染。
但是,我现在想要将每个实例数据(在本例中为定位和颜色)传递给着色器,我已经明白我应该使用函数glVertexAttribDivisor来实现这一点。问题是该功能仅在OpenGL 3.3及更高版本中可用,我使用的是3.2
如何在OpenGL 3.2中以正确的方式实现这一目标?
答案 0 :(得分:2)
可选解决方案:
使用几何着色器渲染点并发射立方体。然后,您可以将所有内容打包到一个VBO中,并避免实例化渲染。
如果需要,使用转换反馈修改多维数据集属性。
答案 1 :(得分:1)
我没有在3.2中找到一个很好的方法来做我想要的事情所以我更新到OpenGL 3.3而不是能够使用glVertexAttribDivisor在属性中发送实例数据。