我目前正在为一个学校项目开发我的第一个 3D 游戏,游戏世界完全受到我的世界的启发(完全由立方体组成的世界)。我目前正在寻求提高尝试实现顶点缓冲区对象的性能,但我被卡住了,我已经实现了这个方法:Frustum culling, only drawexposed faces and distance culling 但我有以下疑问:
我目前在我的世界中有大约 2^24 个立方体,分成 1024 个 16*16*64 立方体的块,现在我正在做即时模式渲染,它适用于平截头体剔除,如果我每个块实现一个 VBO,做每次移动相机时我都必须更新那个 VBO(更新截锥体)?这对性能有影响吗?
我可以动态更改每个 VBO 的大小吗?还是我必须使每个都尽可能大(块完全充满对象)?
我是否必须将每个访问的块保留在内存中,或者我是否可以有效地删除该 VBO 并在需要时重新创建它。