osg 三维gis开发_三维GIS与游戏引擎的跨界融合,打造数字化孪生的平行世界
游戏地图在游戏中起基础和关键作用,它承载游戏中的各种资源,是游戏系统中非常重要的组成部分(图1),所以游戏通常具有明显的地理意义。因此,虽然三维GIS与游戏引擎是两个不同的领域,但两者是有联系的。
游戏地图一般是虚构,虽然可以体现故事发生的时代、地域、文化特点和人物生存氛围,但毕竟不是真实的地理环境,也不具有真实的地理坐标。那么,三维GIS技术是否能将具有真实地理坐标的GIS数据载入游戏引擎?如何在游戏中构建一个与真实世界一致的数字孪生地理空间,让游戏故事发生在真实的地理环境中?
图 1 影视级游戏画面(图片转载自虚幻引擎)
其实,早在2018年年底立项时,超图就开始着手研究游戏引擎和GIS对接。2020年6月,我们在达索系统台湾3D体验高峰论坛上,与Unreal Engine的参会人员探讨了三维GIS与游戏引擎结合的可能性,大家都看好其潜在的市场空间。
超图在做这样一个尝试,通过在游戏引擎中实现一款三维GIS插件,实时载入大规模真实地理坐标系下的地形、影像、倾斜摄影模型、激光点云、手工建模数据、BIM模型等多源异构的地理空间数据,打通三维GIS与游戏引擎的跨界融合,将具有真实地理坐标的室外地理环境、室内BIM模型、实时的IoT数据等融合到游戏引擎,构建一个室内/室外一体化、宏观/微观一体化、空天/地表/地下一体化的数字孪生平行世界。
01打通三维GIS与游戏引擎的跨界融合
• 在游戏引擎实现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数据
02基于三维GIS数据和游戏特效搭建各种仿真场景
图 9 游戏地图的纵向结构
根据ICT技术(Information Communications Technology,信息与通信技术)的组织框架和面向对象的规则,游戏地图可以分为三层,包括操作层、地形层和地图文件配置层(图9)。其中,操作层是面向用户的,包括各种物理特效、天气、光影等信息,属于动态活动层。地形层是承上启下交互的纽带,包括地表、地物、生物,属于资源支撑层。
基于超图提供的三维GIS插件,我们可以将本地/在线、具有真实地理坐标的GIS数据动态加载到游戏引擎中,作为游戏的地形层。在地形层上,添加游戏引擎中的各种角色和特效,就可以渲染构建面向用户的仿真场景,即操作层。如图10所示,基于三维GIS数据和游戏特效搭建的应急仿真场景,可用于对灭火救援等应急场景的模拟仿真。如图11所示,基于倾斜摄影模型和游戏特效的虚拟战场仿真,可用于模拟作战实地演练。
图 10 在Unreal Engine4中基于三维GIS数据与游戏特效搭建的应急仿真场景
图 11 在Unity中基于倾斜摄影模型和游戏特效的虚拟战场仿真
03我们提供什么样的产品?
在产品层面,超图提供了基于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共赢的产品生态,赋能产业发展。
文/三维研发中心 何倩 冯振华【精彩阅读】
▼
五大技术体系升级,SuperMap GIS 10i(2020)新特性速览
“80后”院士王家耀的9条青春启示
23岁,超图正式发布全新企业文化2.0
超图2019年年报一览,净利润增长超30%
超图宋关福总裁获评“夏坚白测绘事业创业与科技创新奖”
喜报!超图获颁2020地理信息科技进步奖特等奖等多个荣誉奖项
欢迎转载~
都点一下,天天好心情!
osg 三维gis开发_三维GIS与游戏引擎的跨界融合,打造数字化孪生的平行世界相关推荐
- unity三维地图的经纬度如何在二维地图上表示_三维GIS与游戏引擎的跨界融合,打造数字化孪生的平行世界...
▲点击关注,收获更多GIS精彩 游戏地图在游戏中起基础和关键作用,它承载游戏中的各种资源,是游戏系统中非常重要的组成部分(图1),所以游戏通常具有明显的地理意义.因此,虽然三维GIS与游戏引擎是两个不 ...
- osg 三维gis开发_三维GIS平台的可视化应用 (下)
上一篇主要对三维GIS的基础数据和三维模型进行了一点说明,本篇将接着聊剩下的部分,主要是三维GIS平台能够支持什么样的场景展示,并来对平台的应用进行一些介绍. 没看过上篇的朋友可以先了解一下再看本篇: ...
- osg 三维gis开发_GIS+BIM跨界融合应用:智能管理道路“健康”,精准定位路桥病害...
点击上方蓝字 关注路桥BIM知识二环路高架桥是成都市中心城区最重要的快速通道,全程无红绿灯,2013年5月建成通车后,每天运送20多万人次.为及时发现和消除道路病害,保障道路畅通,二环路管养单位(成 ...
- 游戏开发心得——书籍篇——《游戏引擎框架》-导论
游戏开发心得--书籍篇--<游戏引擎框架>-导论 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介: 学习<游戏引擎框架> ...
- 游戏开发心得——书籍篇——《游戏引擎框架》-专业工具
游戏开发心得--书籍篇--<游戏引擎框架>-专业工具 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介: 学习<游戏引擎框架&g ...
- python 三维地球库_用于GIS(地理信息系统)和三维可视化制图的Python库
前言 Python库是GIS中的终极扩展,因为它允许您增强其核心功能. 通过使用Python库,您可以摆脱GIS的束缚,而深入研究一些严肃的数据科学. Python中有200多个标准库.但是也有成千上 ...
- java 三维向量类_三维向量类
还是在读书的时候帮外专业朋友做作业,用GDI实现三维空间的立方体绘制和旋转的操作,那个时候自己根据<线性代数与空间解析几何>以及<计算机图形学>等课程的相关知识写了一个三维向量 ...
- 蓝凌ekp开发_新华教育集团战略升级,携手蓝凌量身定制数字化办公平台
近日,新华教育集团和蓝凌软件达成合作,携手建设新华教育集团OA智慧平台,通过数字化办公强化集团信息化管理运作机制,提高集团高效运营,打造中国职教领军品牌! 集团规模快速增长,数字化OA办公成刚需 新华 ...
- Unity3D游戏开发初探—1.跨平台的游戏引擎让.NET程序员新生
一.Unity3D平台简介 Unity是由Unity Technologies开发的一个让轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的 ...
最新文章
- OSPF Router-ID的选择
- SpingMVC类型转换
- ORACLE 11G RAC ASM磁盘全部丢失后的恢复
- js 实现 点击图片刷新 验证码 看不清 换一张
- 2019.7.13刷题统计
- C#中字段、属性、只读、构造函数赋值、反射赋值的相关
- 【具体数学--读书笔记】1.1 The Power of Hanoi
- SQLServer批量倒入目录文件
- qpython3绘图_比Excel制图更强大,Python可视化工具Altair入门教程
- 最近用到的一个Debug类
- 跟我学Spring Cloud(Finchley版)-04-服务注册与服务发现-原理剖析
- matdem矩阵维度必须一致_「数据仓库篇」Kimball维度建模方案
- 产品的细节能决定成败吗?
- 通信系列2: 深入浅出SIP协议
- ESP32 调试SHT20踩的坑
- Network | Socket连接建立步骤
- learning python in the hard way习题1~5的附加题练习
- RestTemplate的用法
- 最新最全论文合集——SODA 历年最佳论文汇总
- 5种AI编程语言优缺点比较,谁才是程序员心中的白月光
热门文章
- 自动驾驶—两轮差速机器人基于PID控制下轨迹跟踪
- 在线升级FlashPlayer和GoogleChrome的bash脚本
- 雷军做程序员时写的博客
- android串口发送二进位,stm32107串口发送数据的数据用串口助手接收发现数据不对...
- 2022年制冷与空调设备运行操作操作证考试题模拟考试平台操作
- “低头走路”与“抬头看天”
- Android与蓝牙串口模块通信
- Interview Project50 50/11
- 高速公路监控系统方案
- mcgs 日期选择窗口_MCGS中想在页面上显示当前时间,要怎样做啊?