Java LWJGL VBO使用基顶点缓冲区和高度数组

时间:2014-08-02 17:23:27

标签: java opengl rendering vbo

我有一个简单的问题,我希望能够重新开始。我有多个块(64x64),其中包含所有顶点高度的1d数组。由于我在同一时间渲染了大约100个,我想知道是否可以使用基本顶点浮点缓冲区并将所有高度作为数组应用于dinamicly。动态地我是指openGL在绘制每个顶点时改变所有高度(y)值。或者是否有更优化的方法来覆盖每个块的所有缓冲区值? 提前谢谢!

1 个答案:

答案 0 :(得分:0)

对于每个块,您可以创建一个VBO,因为每个块与其他块不同(通常),渲染vbo的值并深入查看着色器管道。一个VBo通常持有一个网格。您可以更改VBO的值,但这非常昂贵。如果您创建一个VBO并更改每个块的值,这将非常慢。最好每块创建一个VBO,进行截头剔除,只渲染相机可见的块(并应用其他一些改进)。

关于操纵顶点高度的问题:看一下openGL VertexShader。

我假设您尝试使用体素渲染某些东西,这样您就可以看一下这个啧啧:https://sites.google.com/site/letsmakeavoxelengine/

尚未完成,但想法很好。