元宇宙 - 原来挺简单

引言
最近工作比较忙碌,重新开始了数字孪生项目,很多年前数字孪生作为一个新名词出现在工业互联领域,经过几年的发展,很多二维的展示界面被三维的界面所代替,很多现代化的工作场景也都进行了虚拟的建模。在工业互联网领域,3D 的模型已经成为了很多项目追求的方向。在生活领域,元宇宙这个名词也走入人们的视野。在所有的场景中,首先要搭建一个虚拟的世界,从一个工程师的角度,构建数字孪生的工具链是开启项目的第一步,因此近期与团队重新评估目前的工具链,搭建数字虚拟世界。本文主要通过简单的例子去全面了解这个过程,给有相关需求的小伙伴一个参考。
元宇宙、数组孪生是个有前途的领域
本篇文章主要通过建立一个 3D 模型,然后在网页中做出呈现。这是最为简单的一个流程验证过程。
3D 模型的构建
在模型构建的环节,市面上有大量的工具可以完成相关工作。如果模型不是很复杂,可以试用 iPad 构建。我这次用的是 iPad Pro 中 Shapr3D,这个工具非常容易上手,配合 Apple Pencil 可以非常方便的构建基础的模型。我这里做一个简单的模型,然后将其输出成一个 stl 格式的模型,用来后期进行渲染和处理。模型的效果图如下,这里仅作一个例子,真实的项目比这复杂的多。

对于大型的项目可以试用 solidworks 进行相关的工作,想成为专业人士还得深入学习。
这个部分输出一个 STL 格式的模型
通过 Blender 渲染场景
得到一个模型后,可以试用 Blender 进行相关场景的渲染。Blender 是一个开源软件,作为没有那么高要求的使用场景,可以非常方便的进行相关的场景操作。
1、新建一个 Blender 项目,然后清空相关实体。
2、导入之前导出的 STL 格式模型,根据需求进行型相关内容的渲染。
3、将这个场景进行导出。


通过这些操作可以将场景导出 fbx 格式,方便后面的相关程序的构建。
使用 Unity3D 进行编程
在构建 3D 游戏中,使用 Unity3d 引擎能很好的支持相关的功能开发,无论是元宇宙还是数字孪生都可以用这个引擎进行构建,Unity3d 需要有时间进行专门的学习,可以构建元宇宙场景进行相关的交互,使用 C#和 js 进行相关的开发工作,因为这次是验证工具链,主要就是将上一个环节输出的 fbx 格式文件,导入 Unity3D,然后通过设置输出效果将工程输出为 webgl 的平台。
这个环节主要工作是设置 webgl 的参数,在 Unity 的 webgl 设置中需要将压缩格式设置成为 disable,这样才能保证后面输出的内容能够在开发中正常显示。

设置好以后直接进行 build,会生成一个文件夹,内部就是可以运行这个模型的 html 文件。

这个时候,如果直接打开这个 index,会被浏览器拦截,无法查看,解决方案看使用时 Vscode 实时查看。
VS CODE 调试
使用 vs code 打开 Unity 生成的工程项目,可以在 code 中加载 Live server 插件。

在 VS code 中查看 index 文件,然后右键选择 Open With Live Server,就可以在浏览器中查看相关的结果了。
总结
在构建数字孪生的过程中,有很多工具链的选择,这篇文章主要是介绍一个构建三维数字孪生工厂的一种解决方案,由于收到保密项目的设置,简单做了描述,虽然过程比较简单,但是整体的过程大致如此。
希望这个文章对兴趣的读者有所帮助。
版权声明: 本文为 InfoQ 作者【刘旭东】的原创文章。
原文链接:【http://xie.infoq.cn/article/e7d3851b0f9c1eb993549a654】。文章转载请联系作者。
评论