实时三维地形晕渲技术

晕渲图是DEM地表形态表达的一种形式,它通过设置光源的高度角和方位角更形象或者更符合人类视觉的方式展示一个地区的地形。通过晕渲图,可以很好的反应地形地势的变化,有很好的立体感,方便用图者的使用。

如今,随着数字地图处理技术的发展,利用DEM(数字高程模型)数据作为信息源,以地面光照通量为依据,计算相应栅格所输出的灰度值,通过灰度(明亮程度)的变化,具有相当逼真的立体效果。

https://pic1.zhimg.com/v2-6860395001e9eb17179f14825c9f1c6c_b.jpg
地形晕渲图(灰度)

常用的GIS软件都支持生成地形晕渲图,并且能够通过对DEM的高程值设定不同的颜色,得到彩色的地形晕渲效果:

https://pic3.zhimg.com/v2-0b1c7be2007301e30531fccd3f699c9a_b.jpg
ArcGIS地形晕渲图
https://pic4.zhimg.com/v2-6a064a908211810daeb8aa857e6a1887_b.jpg
SuperMap地形晕渲图
https://pic1.zhimg.com/v2-ddd5637be11b237ce802f5c519075e74_b.jpg
GlobalMapper三维地形晕渲效果

传统的地形晕渲需要针对DEM数据进行复杂的光照强度计算,具体算法可以参考以下文档:

使用GDAL实现DEM的地貌晕渲图(一) - charlee44 - 博客园​www.cnblogs.com

这样的方法计算量较大,实时性不高,EV-Globe6.0采用了一种基于GPU的地形光照渲染技术,充分利用了GPU的并行计算能力,晕渲图的效果可以非常快速的根据光照方向进行实时调整。

基于GPU的地形光照渲染技术实现原理是在GPU中根据高度图生成法线图,然后通过法线图和光源方向计算光照强度。同时通过有别于传统阴影技术(如纹理阴影、模板阴影)的地形瓦块顶点光锥图阴影技术,在地形渲染时通过对光锥图(光锥图是在GPU中根据高度图实时生成的)进行采样,通过简单的判断直接得到顶点是否在地形阴影内,从而非常高效的实现实时阴影效果。

https://pic3.zhimg.com/v2-9d6b49315e267087b8da25e24f704a26_b.jpg
EV-Globe6.0实时三维地形晕渲效果

使用EV-Globe6.0实现三维地形晕渲效果的方法步骤:

1、准备地形数据

https://pic2.zhimg.com/v2-6fe40d3ee66e58215392745d273660d9_b.jpg
DEM数据,一般是TIF格式

2、在EV-Globe Desktop6中添加地形数据

https://pic2.zhimg.com/v2-dd977fd630cc876cb72b5a66899c8025_b.jpg
在文件型数据源中添加DEM数据所在文件夹

3、将地形数据添加到三维场景

https://pic1.zhimg.com/v2-42163e6809e52910e1aa1be0091ec7d4_b.jpg
在场景的影像层和高程数据中添加TIF数据

4、准备高程色带

https://pic2.zhimg.com/v2-89ba1c21b8e9da8804808b07c1a64079_b.jpg
在符号库中编辑高程色带

5、给地形数据着色

https://pic2.zhimg.com/v2-ea41f1bf6eec9998a1c084d2fbbea11d_b.jpg
TIF图层属性中选择刚刚编辑的色带,注意不需要勾选DEM晕渲

6、设置光照方向和地形渲染参数

https://pic3.zhimg.com/v2-672d5d21aee36ff4e3dda1da962a477e_b.jpg
通过调整时间来控制光照方向,打开地形自阴影效果,调整地形光照曝光度

7、最终得到逼真的实时三维地形晕渲效果

https://pic4.zhimg.com/v2-694c89ee6d69e78c211ae08d762b7007_b.jpg
https://pic1.zhimg.com/v2-f3b179524295040db9c767f3c2e5ddfc_b.jpg
https://pic2.zhimg.com/v2-e8e7cedfdecbab2b5bd503dcf7ef523d_b.jpg

https://pic3.zhimg.com/v2-9d6b49315e267087b8da25e24f704a26_b.jpg

 

 

转载至知乎用户陈超

0 个评论

要回复文章请先登录注册