山海鲸中默认的效果已经非常逼近Cesium For Unreal的效果了,而且山海鲸默认自带了体积云效果及非常灵活的体积云设置,同样在Unreal中想要达到类似效果需要购买插件或者需要自己用蓝图对体积云进行建模。同时由于山海鲸中整合的是CesiumJS,因此大家可以用自己熟悉的JS语言和CesiumJS接口来对山海鲸中CesiumJS进行二开,之前的CesiumJS项目甚至都不需要改什么代码就可以一键迁移,开发成本和学习难度远远低于Unreal的C++或者蓝图。
同样在这篇文章开始前重申一下:山海鲸并没有使用ThreeJS引擎。但由于ThreeJS引擎使用广泛,下文中直接用ThreeJS同CesiumJS的整合方案代替山海鲸中3D引擎和CesiumJS整合。
上一篇文章里简单介绍了山海鲸中城市大师为了整合GIS系统所做的技术选型的探索,最终我们决定采用先后绘制的形式在单个Canvas上整合山海鲸的3D引擎和CesiumJS。
熟悉山海鲸的朋友应该知道,山海鲸可视化在3.0之后,在软件内部整合了一个3D场景编辑组件-城市大师。城市大师当中不仅实现了体积云天空,Lensflare,雨雪天气,高度指数雾等等特效,也整合了模型库,PBR材质编辑,植被笔刷,标记点,热力图等等非常好用的3D编辑功能。