我想知道OpenGL VBO是否仅用于大型几何阵列,或者是否适用于小型阵列也是有意义的。我有相对于其他几何体定位各种几何体的代码,但一些“叶”几何体对象非常小,10x10四球体等(每个200个三角形)。我可能有很多这些小叶子对象。我希望能够为每个这些小叶子对象提供一个不同的变换矩阵。看起来我有两种选择:使用大量小型VBO的性能
为每个叶对象使用一个单独的VBO。我最终可能会有大量的维也纳国际组织。
我可以将多个对象的数据存储在一个VBO中,并在更改给定叶对象的数据时自己应用适当的转换。这看起来很奇怪,因为OpenGL的一部分就是要在硬件中有效地执行大量的矩阵运算。我会用软件来完成OpenGL设计用于硬件的很好的功能。
是否有大量的VBO效率低下,还是应该继续选择选项1?有没有更好的方法来处理有很多小物体的情况?我是否应该使用顶点数组或类似的东西?
什么是实例? – Gravity 2011-12-31 20:51:27
这里是一些信息:http://sol.gfxile.net/instancing.html,但基本上它是一个优化的方式,多次渲染相同的对象(但是使用不同的转换和材质) – fen 2012-01-01 16:37:18