三维GIS与游戏引擎的跨界融合,打造数字化孪生的平行世界
游戏地图在游戏中起基础和关键作用,它承载游戏中的各种资源,是游戏系统中非常重要的组成部分(图1),所以游戏通常具有明显的地理意义。因此,虽然三维GIS与游戏引擎是两个不同的领域,但两者是有联系的。
游戏地图一般是虚构,虽然可以体现故事发生的时代、地域、文化特点和人物生存氛围,但毕竟不是真实的地理环境,也不具有真实的地理坐标。那么,三维GIS技术是否能将具有真实地理坐标的GIS数据载入游戏引擎?如何在游戏中构建一个与真实世界一致的数字孪生地理空间,让游戏故事发生在真实的地理环境中?
图 1 影视级游戏画面(图片转载自虚幻引擎)
其实,早在2018年年底立项时,超图就开始着手研究游戏引擎和GIS对接。2020年6月,我们在达索系统台湾3D体验高峰论坛上,与Unreal Engine的参会人员探讨了三维GIS与游戏引擎结合的可能性,大家都看好其潜在的市场空间。
超图在做这样一个尝试,通过在游戏引擎中实现一款三维GIS插件,实时载入大规模真实地理坐标系下的地形、影像、倾斜摄影模型、激光点云、手工建模数据、BIM模型等多源异构的地理空间数据,打通三维GIS与游戏引擎的跨界融合,将具有真实地理坐标的室外地理环境、室内BIM模型、实时的IoT数据等融合到游戏引擎,构建一个室内/室外一体化、宏观/微观一体化、空天/地表/地下一体化的数字孪生平行世界。
• 在游戏引擎实现GIS数据的可视化
基于S3M标准,游戏引擎可动态加载大规模的、多源异构的、在线/离线的3D GIS数据,包括倾斜摄影模型、激光点云、手工建模数据、BIM模型等(图2-3)。同时,基于超图提供的三维GIS插件,游戏引擎还支持动态加载地形、影像数据。此外,超图还在游戏引擎中增加了三维地球,支持展示本地/在线的地形、影像数据(图4)。这些数据不仅提供室外地理环境信息,如地形、地物(水系、居民地、交通、地貌、植被等地理要素),还提供建筑内部信息以及物联网实时信息等,为游戏引擎提供了具有真实坐标的三维地理底图,可支撑创建与现实一致的、虚拟孪生的平行世界。
图 2 Unreal Engine4通过SuperMap GIS动态加载本地/在线的3D GIS数据
图 3 Unity通过SuperMap GIS动态加载本地/在线的3D GIS数据
图 4 Unreal Engine4通过SuperMap GIS动态加载全球尺度的地形/影像数据
• 在游戏引擎中实现GIS分析与查询能力
基于超图提供的三维GIS插件,不仅可以在游戏引擎中查询真实地物的属性信息,如图5,还可以进行模型的实时剖切分析和地形等值线分析,如图6-7。另外,超图也在尝试将更多的三维空间分析能力引入到游戏引擎中,比如:通视分析、可视域分析、阴影率分析等。这些实用的数据处理和操作工具,可为城市规划、智慧城市、数字孪生城市等提供决策支持。
图 5 在Unity中对精模进行选中并查询属性信息
图 6 在Unreal Engine4中对BIM模型进行实时剖切分析
图 7 在Unity中进行地形等值线分析
• 基于开放的S3M数据格式标准和数据服务接口标准,打造“三维GIS+游戏引擎”的开放的、可持续发展的生态圈
通过支持S3M数据格式标准和数据服务接口标准,游戏引擎可以直接加载本地、在线的GIS数据。通过S3M数据格式标准,更多的游戏引擎,如:Ventuz,能加载S3M格式的GIS数据(图8),可将GIS数据作为游戏的底图,实现三维GIS与游戏引擎的跨界融合。基于S3M服务接口标准,游戏引擎还可以对接在线服务,在线访问公共服务或数据服务,可实现数据的开放、共享和互操作。
图 8 Ventuz游戏引擎加载S3M格式的GIS数据
图 9 游戏地图的纵向结构
根据ICT技术(Information Communications Technology,信息与通信技术)的组织框架和面向对象的规则,游戏地图可以分为三层,包括操作层、地形层和地图文件配置层(图9)。其中,操作层是面向用户的,包括各种物理特效、天气、光影等信息,属于动态活动层。地形层是承上启下交互的纽带,包括地表、地物、生物,属于资源支撑层。
基于超图提供的三维GIS插件,我们可以将本地/在线、具有真实地理坐标的GIS数据动态加载到游戏引擎中,作为游戏的地形层。在地形层上,添加游戏引擎中的各种角色和特效,就可以渲染构建面向用户的仿真场景,即操作层。如图10所示,基于三维GIS数据和游戏特效搭建的应急仿真场景,可用于对灭火救援等应急场景的模拟仿真。如图11所示,基于倾斜摄影模型和游戏特效的虚拟战场仿真,可用于模拟作战实地演练。
图 10 在Unreal Engine4中基于三维GIS数据与游戏特效搭建的应急仿真场景
图 11 在Unity中基于倾斜摄影模型和游戏特效的虚拟战场仿真
在产品层面,超图提供了基于Unreal Engine和Unity的两款三维GIS插件,它们被统一命名为超图三维GIS游戏引擎开发包(SuperMap Scene SDKs for game engines)。它是基于超图新一代三维GIS技术,与游戏引擎深度集成的一款可编程、可扩展、可定制的开发包,提供炫酷、实用、游戏级的三维体验。
SuperMap Scene SDKs 10i(2020) for game engines的正式版预计在11月底发布,会具有上文提到的GIS数据可视化能力、GIS分析和查询能力。并且,SuperMap GIS后续版本还计划提供场景制作工具链和更多的分析能力,场景工具链是从游戏引擎到GIS进行场景制作的工具链,其中,GIS提供真实坐标系下的点、线、面、体数据,游戏引擎为这些数据赋予更炫酷的材质。更多精彩内容敬请期待!
借助于游戏引擎三维GIS开发包,游戏引擎可以直接接入大规模真实地理坐标的GIS数据以及支持GIS分析和查询能力,为制作真实场景的游戏提供支撑,助力国防、自动驾驶、数字孪生城市等更多的行业。反过来,地理信息产业应用,也可以利用游戏引擎在可视化表现和三维渲染方面的超强能力,制作大屏等炫酷的效果,改善用户视觉体验,为更多用户带来身临其境、更具交互性、真实感、沉浸感的三维体验。而且,对于GIS用户而言,不需要再重新制作一套新的数据,原来的那套空间数据就可以直接加载到游戏引擎中。
超图希望借助于游戏引擎三维GIS开发包,打造一个游戏引擎与GIS共赢的产品生态,赋能产业发展。
本文作者可以追加内容哦 !