我正在开发一个需要 3D“基于体素”引擎的工具。我的意思是它将涉及从网格中添加和删除多维数据集。为了管理这些多维数据集,我需要一个允许快速插入和删除的数据结构。我在 kd 树和八叉树中看到的问题是,由于这些操作,它们似乎经常需要重新创建(或至少重新平衡)。
在我加入之前,我想就解决此问题的最佳方法获得意见。
更多细节:
- x,y,z 位置在整数空间中
- 需要对实时应用程序足够高效
- 对将使用的多维数据集的数量没有硬性限制。很可能这个数字通常会很低(<100),但是我想让工具处理尽可能多的立方体
我想最终的问题是,以可以处理频繁插入和删除的方式管理本质上是 3D 点数据的最佳方法是什么?
(不,我不是在制作 Minecraft)