【发布时间】:2012-03-21 04:27:30
【问题描述】:
在由数千个立方体组成的 3d 地形中(即 Minecraft ),在位置和渲染方面处理每个块的方法是什么?更具体地说,我知道在 DirectX 9 中绘制一个立方体的基元并对其进行世界变换可能是一种荒谬的方法,因为存在很多性能问题,所以我想知道更合理的方法是什么。
每个立方体应该是一个多次复制的网格,还是它们是一种从顶点缓冲区中的数据创建适当网格的方法?
我发现this article 介绍了实现我想要实现的东西背后的一些理论,但我以前从未使用过八叉树,所以我无法从源代码中获取太多内容。如果八叉树确实是要走的路,那么学习它们的好起点在哪里?我的大部分谷歌搜索只找到了关于理论的博客文章,很少或没有实现示例。
看起来使用体素在这方面会很有用,但就像使用八叉树一样,我在这里没有经验,所以我真的不知道首先要学习什么。
无论如何,感谢您提供的任何建议\资源\书名。我确信这很明显,但我对 3d 编程还是很陌生,所以非常感谢您的帮助。
【问题讨论】:
标签: directx minecraft terrain voxel