【发布时间】:2016-10-15 09:47:19
【问题描述】:
我对数据结构“quadtree”很感兴趣,对于我的一个项目,我想使用它们。好的,让我们举个例子:
我们有一个 3D 空间,其中相机位置被锁定,但我可以旋转相机。每当我将相机旋转到某个点时,都会显示一个 large 2d image(大于截锥体)。
1.当我只能看到它的 1/4 时,不需要加载整个图像! .在这里使用四叉树是否有意义,只加载我可见的图像部分?(使用 opengl/webgl 时)如果是这样,每个四叉树节点是否必须包含自己的顶点缓冲区和纹理?
【问题讨论】:
-
这个大图的用例是什么?你有环境地图之类的东西吗?
-
是的,例如
-
您可以将地图拆分为几个较小的部分并确定每个部分的可见性。如果您有一系列质量不断提高的图块(例如地理地图),四叉树最有帮助。因此,您可以放大并显示质量更好的图像。如果您打算始终保持相同的精度水平,我认为四叉树过于复杂。
-
感谢您的回复。我认为几乎相同,但是 f.e.如果图像大于 50mb,最好只加载 2mb,然后动态加载图像的其他部分?您对此有何看法?
-
当然,您可以加载低质量的完整图像,然后按需下载片段。另一方面,您需要非常大的屏幕才能从 50mb+ 图像中获得所有精度。而且,如果它是高分辨率的,您需要确保纹理采样器可以以该精度工作。是 16k 吗?