在倾斜相机的情况下地形瓷砖比例

时间:2012-04-09 10:06:52

标签: geometry rendering visualization terrain

我正在研究3D地形可视化工具。表面在逻辑上覆盖方形瓷砖。这个平铺可以看作如下:

Tiled earth

假设我想在这些图块上绘制图片。需要根据为每个图块单独计算的当前相机比例来选择图片的细节级别。

如果是垂直摄像机(没有倾斜,即摄像机在地面上垂直看),所有的瓷砖都具有相同的比例,即相机焦距除以地面以上的摄像机高度。

下图描绘了这种情况:

camera with no tilt

其中红色三角形是没有倾斜的相机,BG是地面以上的相机高度,EG是焦距,然后比例= AC / DF = BG / EG

但是如果相机有倾斜(即俯仰角不是0),那么比例会从一个瓦片变为另一个瓦片(甚至从一个点到另一个点)。

enter image description here

所以我想知道在这种情况下是否有任何方法可以为每个瓷砖产生合理的比例?

1 个答案:

答案 0 :(得分:1)

可能(几乎可以肯定)有一个更简单的解决方案,但你可以做的是定期进行屏幕坐标转换。

您只需获取图块边界点的坐标,并计算屏幕上将投影的像素(当然,您获得浮点精度)。由此,我相信你可以计算你提到的“规模”。

这适用于世界空间中的任何一点或一组点。

Here是关于如何“手动”执行此操作的教程。

如果使用OpenGL或DirectX渲染切片,可以更加轻松do this