浅谈B端业务下的三维可视化

在现在B端业务需求越来越复杂的情况下,大屏应用是我们经常会遇到的业务场景,而业务数据的信息传达,则是大屏可视化需要考虑的核心问题。

一、现在的数据可视化

目前来说,二维的平面设计效果是主流的数据可视化方式之一,通过PS、AI等图形工具制作平面图形效果,再利用AE等动画软件制作动效实现华丽的页面效果,但因纬度限制,数据展示方式相对局限呆板。三维的可视化效果由于纬度的提升,数据展示效果可以更加逼真,数据展示方式也拥有更多可能。二维的大屏开发,设计还原上依然有比较大的提升空间,不过开发技术已经相对成熟,网上各方开源组件也比较丰富。而三维的大屏可视化,目前的技术积累还处于初始阶段,开源技术方案相对较少,设计还原上由于技术方案的不统一,也存在各种各样的小问题。接下来会从设计和开发两个方面,简单介绍一下三维可视化的一些设计软件和开发工具。

二、设计工具

1.CINEMA 4D,江湖简称 “C4D”近年最热3D软件;需要注意的是善于发律师函;

2.Blender 是一款开源3D软件,最重要的是只有它“免费”!项目可以无忧商用(中文官方名:斑斓)

3.MAYA软件是Autodesk旗下的著名三维建模和动画软件;大而全的老牌传统3D软件;

4.3Dmax是Autodesk旗下的著名的基于PC系统的三维动画渲染和制作软件;

5.Houdini (电影特效魔术师),据说是3D软件的未来,具有强大的AI支撑能力,让一个人完成几百人的项目成为可能;

基于学习难度、通用程度、价格等方面综合考虑,自动桌牌的MAX和Maya以及胡迪(houdini)都不推荐。

在快速上手、工作流通用性方面C4D现在依然是最强的;Blender主要是因为是开源软件,免费。且功能也十分完善,虽然比C4D上手难度要高一点,但学会后效率很高;

三、混合类工具

现在主流的商用3D创作引擎主要是unity3D和Unreal Engine3D。

Unity3D的简称就是U3D,是一款用于研发2D3D的游戏引擎,对主流系统平台支撑良好包括移动端的两大系统,另外之所以在可视化这块提到它,是因为Unity也广泛用于3D可视化相关行业的开发,是一款十分通用的3D综合型创作工具。U3D对基于 WebGL 技术的 HTML5 网页平台也支持良好,因此也有很多“大屏可视化”开发,应用该引擎,另外VR、AR也支持良好。不过unity对网页的支持坑比较多。

UE4,虚幻4是虚幻引擎当前的版本名称。虚幻引擎是极其强大的游戏引擎,其上限非常高。高到虚幻5简直就是跨时代的技术。对于可视化来说,明显是过于高级了.。但近年来很多独立开发者都在采用虚幻4可以说明,在上手难度、效果实现等方面已经超级具有性价比。不再是早期的相当于U3D来说,更难上手。

基于U3D和UE4的各项区别, UE4虽然成品效果好于U3D,且比较适用于大型的3D项目,但是成本问题以及对人才的高要求,目前用U3D开发相关项目仍是市场的主流趋势,但是就更加长远的发展来说,UE4依旧有良好发展的潜能。

四、BI类工具

这类工具其实挺四不像的,不太好分类:

1.hightopo、thing.js肯定是大量使用了webgl技术的,具体是那款渲染引擎其实不关键了。毕竟最大的资源库Three.js是开源的。只是相对于WEBGL类的引擎来说,他们更基础,不提供很多制作工具,但优势是提供了大量模板,可以快速上手,改改就可以用。只是要做出超出模板限制的效果就很难了,对于定制化来说确实是一大弱项;

2.DataV其实算是更小白的可视化工具,相对前两个而言,更偏向于面对不具备代码能力的人员,在datav的编辑器上,导入模板或直接拖拖拉拉就可以制作大屏。界面的好坏完全取决于模板的好坏,其使用代码自定义的程度更低

3.Raydata\Ventuz,为什么说这两个是一个呢,因为Raydata算是Ventuz的官方汉化版本。光看他们的C/S端的界面就可以知道。基本上就是改了个名和颜色。相对于其它三个,依托于Ventuz的完善,其实把它理解成专门针对“可视化”优化的unity引擎就行。提供可视化编程模式(类似虚幻的蓝图功能),可视化操作上是这几个当中最好的;

总的来说,图扑、thingjs这两个更面向程序员研发,就落地实现来说肯定更优。但又相对于babylon.js、three.js这类缺失相当的定制化功能。所以更推荐研发借鉴官方模板效果使用。Datav、Raydata\Ventuz这几个其实非常适合产品经理或设计师快速搭建高保真demo;但业内需求千差万别,真的很难做到完美满足。所以设计用于借鉴学习也不错。另外国内还有很多类似的工具,比如袋鼠云EasyV、亿信酷屏esensoft、数字冰雹等等。

五、设计与研发对接的坑

这块的难点主要集中在“设计资产”高效转换为“研发资产”,在3D可视化这块,主要是

如何设计生产的“3D资产”转换为研发使用,在文件转换过程中难度,由研发选择特定的webGL引擎而定。比如选择three.js,在载入3D模型时,依据文件格式、建模方式的不同,会导致很多问题,贴图丢失、模型定点错乱、模型面丢失、面数太多导致程序卡顿、优化贴图减少程序请求等等。

另外在动画、特效这些更高级的维度,由于设计使用的是3D模型软件、研发使用的特定引擎这块也是对接难点; 但如果设计和研发使用的是一套工具体系,比如使用U3D引擎和UE4引擎,对接这块确实能避免很多的问题。因为U3D、UE4都具备完整的工作流模式,避免了跨平台对接的问题;

当然设计与研发对接的问题远不止这些,这里不多作阐述,有兴趣的小伙伴可以自行找资料。

上一篇:Spark SQL中列转行(UNPIVOT)的两种方法


下一篇:浙江幻影星空vr体感游戏设备暗黑机甲