浅析目前各种3D技术(二)
3D或者说三维数字化技术,是基于电脑/网络/数字化平台的现代工具性基础共用技术,包括3D软件的开发技术、3D硬件的开发技术,以及3D软件、3D硬件与其他软件硬件数字化平台/设备相结合在不同行业和不同需求上的应用技术。
3D模型在线预览提供多种低代码平台3D模型在线预览解决方案,实现了将多种3D模型格式无缝集成到低代码业务表单中。这意味着用户可以在不离开低代码平台的情况下,直接查看和操作3D模型,极大地提升了数据可视化的效果和用户交互体验。
3D技术介绍
SceneJS
SceneJS 是一款基于 WebGL 的 JavaScript 库,专门用于创建复杂的 3D 场景。它提供了一种易于使用的方式来描述场景,并支持高度定制化,包括灯光、阴影、纹理等等。您可以使用 SceneJS 来创建各种类型的场景,从简单的物体到复杂的城市景观。
功能特点
- 支持JavaScript和CSS播放方法:支持两种播放方式:javascript和css动画。在使用过程中感受不到差异
- 完全控制时间,准确地显示当前时间的移动情况
- 可同时控制多个元素
- 支持各种值类型
- 提供 CSS 使用的缓动
- 支持各种效果预设
优点
- 提供了一个基于流水线的架构,使其在大型场景中表现出非常好的性能
- 可以很容易地在网格之间进行交互,并且对于场景的动态变化处理起来也很方便
- 支持灯光、阴影、纹理、透明度等丰富的效果,并具有可定制性
缺点
- 相关社群几乎没有,中国很少人用
- 缺少碰撞检测等功能
- 加载大模型时速度较慢
- 需提供正在载入信息提示,尽可能提高用户体验
ThingJS
功能特点
- 强大的3D引擎:hingJS平台的3D引擎核心是由优锘科技的核心3D研发团队依托多年3D基础算法研究和积累,通过潜心研发,完成底层H5、3D运行基础库架构,并经持续优化、封装、测试逐步完善而成
- 移动端可访问:ThingJS平台采用浏览器原生的WebGL方式实现3D能力封装,不仅兼容IE11 ,Edge ,Chrome,Firefox等浏览器,而且还可以在手机、PAD等移动端访问,甚至微信扫码也可以直接访问
- 简化模型制作:ThingJS平台提供面向普通用户(而非3D设计师)的快速3D场景搭建工具ThingBuilder,可让用户在无需专业3D设计师情况下低成本完成3D场景搭建
- 提高开发效率:开发者可登录官方网站直接开始在线开发,还提供各类简化开发者开发工作的功能,比如,开发者右键自动生成基础代码
- 在线开发部署:ThingJS平台推荐将在线开发调试完成的3D可视化应用直接使用在线SaaS方式部署,省去用户本地安装调试等环节,降低成本,提升交付效率
- 支持离线部署:用ThingJS平台开发的项目也可以离线部署,支持Linux(CentOS,Ubuntu, Debian,FreeBSD)和Windows(Window Ser ver)服务器平台
优点
- 入门简单,在线开发具备JS基础即可,不需要3D开发技能
- 支持移动端访问
缺点
- 非开源
- 对个人开发者大部分功能都是免费的, 但如果是企业或者商用,则需要购买服务
- ThingJS不 适合做场景细节要求高的应用
应用场景
物联网可视化Paas平台,主要针对以一栋或多栋建筑组成的园区级别 的场景,可以用于数据中心、仓储、学校、医院、城市、设备等多种领域。
Cesium
Cesium 是国外一个基于 JavaScript 编写的使用 WebGL 的地图引擎,支持 3D、2D、2.5D 形式的地图展示,可以自行绘制图形,高亮区域。
特点
- 跨平台、跨浏览器
- Cesium 使用 WebGL 来进行硬件加速图形,不需要任何插件支持
- Cesium 是基于 Apache2.0 许可的开源程序,可免费用于商业和非商业用途
应用场景
- 支持2D,2.5D,3D 形式的地理(地图)数据展示
- 可以绘制各种几何图形、高亮区域,支持导入图片,甚至三维模型等多种数据可视化展示
- 可用于动态数据可视化并提供良好的触摸支持,支持绝大多数的浏览器和移动端浏览器
- 支持基于时间轴的动态流式数据展示
总结
- 前端3D技术汇聚着各种各样的方法,除了上面写的这些,还有很多迷人的技术
- 工作过程中也要根据企业的情况来正确选择
- 市面上也有一些技术更成熟的数据可视化平台,但很多需要提前调研,如果预算充足的话,可以使用
浅析目前各种3D技术 - 索引