我正在从 3d 空间中的三角形构建一个 BSP 树。 在构建 BSP 树之前,所有三角形都已转换为视图空间。 因此,我将点 (0, 0, 0) 用作观察者眼睛的 position 并从远到近遍历树并将所有访问过的三角形添加到列表中。 然后我遍历列表并使用正交投影变换三角形并将它们绘制到屏幕上。 这在 ...
我正在从 3d 空间中的三角形构建一个 BSP 树。 在构建 BSP 树之前,所有三角形都已转换为视图空间。 因此,我将点 (0, 0, 0) 用作观察者眼睛的 position 并从远到近遍历树并将所有访问过的三角形添加到列表中。 然后我遍历列表并使用正交投影变换三角形并将它们绘制到屏幕上。 这在 ...
我正在尝试从一个未排序的float数组构建一个二叉树,以进行分配,但是我无法完全弄清楚。 我的目标是将大小为ndata的未排序数组xdata发送到函数build_tree() ,该函数使用函数create_node()创建一个新节点。 在数组大小大于1的情况下,它将调用函数parititio ...
我需要一个示例来说明如何将不平衡的 bsp更改为平衡的 bsp树 。 请帮我。 ...
所以我一直在实现我的第一个BSP树,我想我的逻辑中发现了一个缺陷。 我很遗憾我如何能够以适当的方式正确地重构它。 这是构造函数(解释如下): 简而言之,我们收到一个typedeffed std::vector< Polygon* >其中包含任意数量的堆分配的Polyg ...
我一直在研究Quake 3 BSP加载程序。 但是我无法正确渲染这些面孔。 这是地图的顶点。 这是在地图上渲染人脸时发生的情况。 这是渲染的代码: 完整的源代码: ...
我有一个用于等距游戏中进行深度排序的BSP树(我尝试了无数其他方法),它似乎很接近,但是在我的游戏中我无法拆分资产。 因此,要拦截当前飞机,我只需将它们添加到“后面”和“前面”节点(如http://www.seas.upenn.edu/~cis568/presentations/bsp-tec ...
我有一个由二进制空间分区树给出的3d卷。 通常,它们是由多边形模型制成的,已拆分的多边形已经存储在树节点中。 但是我不是,所以我没有多边形。 每个节点都只有切平面(例如,由法线和原点距离确定)。 因此,树仍然代表了由所有切割所定义的3d立体体积。 但是,为了可视化,我需要此体积的多 ...
我一直在尝试实现一个三维BSP树来渲染单个对象(一个立方体,一个带有圆柱体的盒子等),这些对象是透明的。 据我所知,这应该有效,但事实并非如此,我无法弄清楚原因。 我读过的所有内容都指的是在两个维度或多个对象中使用的BSP树,所以我想知道我是否只是误解了可以应用哪些BSP树而不是在我的代码中 ...
这更多是一个概念性问题,而不是编码问题。 我已经弄清楚了BSP树的基本概念,但是在将头部缠绕到定位上时遇到了麻烦。 我发现要在BSP树中找到我的当前位置,如果我在拆分平面的前面,我会不断地在树上递归地进行迭代,然后向右移动;如果在树的后面,则向左移动。 当我最终到达一个叶子节点时,这就是我 ...
任何人都可以使用BSP树方法指向带有示例代码的资源,以生成多边形之外的三角形? 谢谢。 ...
我有一个BSP树加载到内存中。 我首先找出我所在的叶子。接下来,我解码PVS。 然后,我浏览那个PVS中的每个区域,看看它是否位于我的视锥内。 我被告知这是不正确的渲染方式,我实际上应该通过遍历BSP树进行前后渲染。 我到底该怎么做? 我已经看到了许多不同的方法,这就是我问的原因。 ...
嗨,我正在编写Quake级渲染器。 我已经到了需要考虑透明度的地步。 我知道二进制空间分区器(BSP)树的格式化方式是按距离对数据进行排序,或者至少这是我所听到的,但是我对如何实现此目的感到迷惑。 我建立了BSP树,并解码了PVS。 我是否:1.找出我所在的叶子。例如6。 2.从m ...
我知道如何利用带有Quake等旧3d级别的预构建BSP树,甚至编写了一个关卡渲染器。 现在,我进入下一步,实际上是自己构建BSP树。 我知道其背后的过程,但我想知道是否有人有任何建议或教程链接。 ...
我正在构建一个二叉树。 二叉树是预先构建在一个文件中的,我需要构建它。 由于它的结构方式,我将树读入一个数组。 每个树节点看起来像这样。 我尝试了多种方法来编写一些构建树的代码。 让我给你一些伪代码,以便你了解我想要做什么。 读入头节点。 节点在数组中排名第一。 如果节点具有左右数组索引,则创建新 ...
大家好。 我正在将预构建的 BSP 树加载到 memory 中,我很困惑。 它被用于第一人称探索程序。 你如何建议我使用已经制作的 BSP 树。 我知道我遍历了这棵树,但我要寻找什么? 对不起我的英语。 ...
我有一个三角形的多边形汤,我想为它构建一个BSP树。 我当前的程序只是通过一次从模型中插入一个随机三角形直到所有三角形都被消耗来构建一个BSP树,然后它检查树的深度和宽度并记住它达到的最佳分数(最低深度,最低宽度) )。 根据定义,最佳深度为log2(n)(如果共面三角形分组,则为更小? ...