关于不规则空间八叉树的创建、使用?

时间:2022-04-30 19:14:37
   本人在使用空间八叉树时,使用的都是每次以八等份划分,但导师的目的是让我把每个八叉树的叶子节点确定到每一个场景中的模型上,即一个八叉树节点对应到一个模型上(如果节点中没模型就不需要考虑),从而就需要使用不规则的八叉树来管理场景,但是关于这一方面的知识本人知之甚少,望知道的各位高人给予解答,该怎样去创建这样一个数据结构,给予思路也很欢迎,能提供相关资料将不慎感激!

3 个解决方案

#1


顶个  顶个

#2


你准备用什么方法确定一个模型属于一个节点呢?
可以简单一点,计算一个模型的AABB,然后使用MAX,MIN判断挂接到八叉树节点

#3


引用 2 楼 renxu350 的回复:
你准备用什么方法确定一个模型属于一个节点呢?
可以简单一点,计算一个模型的AABB,然后使用MAX,MIN判断挂接到八叉树节点

确定一个模型是否属于一个节点是够可以通过判断该模型是否有半数以上的面在该节点中来做出判断呢?

但是最终还是要使用八叉树进行场景分割的,模型存放的节点一定是存放在叶子节点中的,绘制模型的时候也是的绘制八叉树的叶子节点,中间过度的那些八叉树节点怎么处理?不知道这个不规则八叉树的创建要怎么弄?因为它每个节点不像现在这样是规则的,使用递归就可以实现空间分割。它每一个节点的大小可能都不一样···

#1


顶个  顶个

#2


你准备用什么方法确定一个模型属于一个节点呢?
可以简单一点,计算一个模型的AABB,然后使用MAX,MIN判断挂接到八叉树节点

#3


引用 2 楼 renxu350 的回复:
你准备用什么方法确定一个模型属于一个节点呢?
可以简单一点,计算一个模型的AABB,然后使用MAX,MIN判断挂接到八叉树节点

确定一个模型是否属于一个节点是够可以通过判断该模型是否有半数以上的面在该节点中来做出判断呢?

但是最终还是要使用八叉树进行场景分割的,模型存放的节点一定是存放在叶子节点中的,绘制模型的时候也是的绘制八叉树的叶子节点,中间过度的那些八叉树节点怎么处理?不知道这个不规则八叉树的创建要怎么弄?因为它每个节点不像现在这样是规则的,使用递归就可以实现空间分割。它每一个节点的大小可能都不一样···