物联网3D应用开发:Unity、threejs,还是ThingJS?

为什么选择ThingJS

  在目前的市场上,3D应用的开发,有很多工具可以选择,如:Unity、threejs、BIM、GIS,但他们要么过于侧重某些领域,如游戏、建筑施工、地理信息等;要么过于底层,学习成本高,距最终应用有很大的距离。所以要想开发一个完整的物联网可视化应用,往往都需要付出很多的努力,甚至是难以完成的任务。所以,我们需要一个更接近行业应用、更具开发效率的工具,来解决物联网可视化应用的问题 —— 功能要更对口,开发要更高效。

功能的针对性和粒度

  与上述的其他开发工具不同,ThingJS是针对园区级,多建筑群应用进行接口设计的,提供了从 地球 到 城市、园区、建筑、楼层、房间、设备的多级展示与控制,论是仓库、学校、医院、工厂、办公楼等都能满足;而且这些层次的对象在ThingJS的场景加载完成后,是以JS对象的方式直接暴露给用户使用,简单方便;
物联网3D应用开发:Unity、threejs,还是ThingJS?_第1张图片
  在功能接口提供的粒度上,ThingJS和其他开发工具相比,站在了更高的封装层面, 用尽可能简洁的接口,直接提供了场景的加载与展示、物联网设备的创建与特效;还提供了信息点、线路、管线、区域、热图、粒子、动画等丰富功能;提供了摄影机控制、第一人称行走、寻路导航和视点线路工具;可扩展的界面、头顶信息牌、内嵌视频监控等丰富的信息展示方式。这些接口大部分已经在在线例子中可以找到,可以边改参数边看到效果;

物联网3D应用开发:Unity、threejs,还是ThingJS?_第2张图片

学习、开发、部署效率

  如果在没有什么类似项目经验积累的情况下,用Unity、threejs等工具,从构建一个场景展示开始、到创建物联网设备、再到推送数据、显示数据信息等等,这个过程需要花费很大的学习和构建成本。比如,首先面临要考虑的就是场景如何来、设备的模型如何来、之后还要考虑如何控制他们、如何解决性能问题,这都需要较高的3D专业知识,需要深入很多细节才行。
  而ThingJS API 已经对这些问题进行了高度的封装,官网上所提供的充足例子,就是在物联网可视化中最常见的方案,这将让用户更加聚焦他关心的业务逻辑,而非专业知识 —— 这也是很多工具库的价值所在;
  使用ThingJS在线开发提供的“代码块”,甚至不需要学习API,就可以让用户一边贴出自己想要的代码,一边立刻执行看到结果。在发布时,也无需部署,可以直接通过二维码扫描在线转发即可。
  同时,ThingJS的搭建工具、模型库等解决了场景和模型从哪里来的问题,同样也让用户以尽可能地的门槛得到所需的资源。
  以上这些都将帮助用户以最快的速度 学习、开发与部署。
物联网3D应用开发:Unity、threejs,还是ThingJS?_第3张图片

为什么不选择ThingJS

  ThingJS所定位的物联网可视化应用,侧重宏观场景表现,并不针对局部细节的效果,而且由于WebGL技术的性能局限,在性能上不能和Unity等原生程序相比,性能和效果的侧重也更偏向前者,就像 电纸书 和 手机 有着不同的定位;所以,ThingJS不适合做场景细节要求高的应用,如:家居装修设计、单体模型展示、游戏和电影级的画质效果。

学习ThingJS的基础

  ThingJS对开发者的要求是:熟练使用Javascript语言,有使用过其他框架的经验会更有帮助。所以对于初级的前端工程师,就可使用ThingJS完成3D可视化应用开发,ThingJS的开发与各类网页前端现有HTML/JS资源完全兼容。

随着 ThingJS 的逐步发展和完善,ThingJS 将会是解决物联网可视化定位上的一个新选择:http://www.thingjs.com

你可能感兴趣的:(ThingJS)