1. 概述编辑
1.1 适用场景
此文档为适配FVS的模型优化指南。
这套模型优化指南会在建模软件中的模型处理方式上区别于其他3D可视化工具。
模型优化大致分为模型处理和贴图处理2类。
1.2 注意事项
其中标题后有“*”的为建模软件中需要重点关注的地方。
建议先根据GLB模型使用问题排查了解模型有什么问题,然后再根据优化指南知道如何解决模型问题。
2. 导出Glb模型编辑
2.1 导出方法
FVS目前支持的模型格式为glb(gltf2.0),可以根据自己现有的模型进行格式转换或在软件中导出。
以下为市面上常用的模型格式转换glb的方法:
3. 性能优化-模型处理类编辑
3.1 合并独立网格对象(减少mesh/对象数)*
什么是mesh数:
mesh数是影响glb文件在产品中性能的主要因素。
mesh指glb文件中的独立网格,所以mesh数是glb中所有独立网格的数量,且一个mesh上只会有一种材质。
mesh数也可以简单理解为三维软件中的对象数,但不同点在于三维软件中的对象可以有多个材质。
(Glb中一个mesh只会有一个材质,所以当三维软件中导出glb时,其中的对象会根据其材质进一步拆分,所以会出现mesh数比三维软件中的对象数多的情况。)
如何查看mesh数:
使用Chrome或者Microsoft Edge来打开babylonjs模型检测网站或FVS模型检测网站,选择要查看的glb文件并上传,在右侧即可查看该文件的mesh数。
Mesh数建议:
一般mesh数建议控制在1000以下,不然容易造成预览卡顿,帧数低等情况。
操作方法:
若三维软件中对象数较多,可以通过合并那些不需要交互、没有实际业务使用需求的对象来减少对象数,从而导出后就能对应减少mesh数。
在blender中,合并的方式为:选中你想要合并的那些对象,按CTRL+J来进行合并。
附:
三维模型相关文档快速引导:Glb文件的mesh数和优化
Mesh数优化视频教程:预览帧数优化-mesh数优化
3.2 关联相同的对象 *
关联复制有什么效果:
可以起到共用一份物体数据,减少文件大小及预览帧数的作用。
这个优化方法适用于在场景中有很多重复的相同对象时去使用,例如多台机械设备、仓库货架、货物等。
根据建模完成情况,有2个阶段可以处理这类优化:1.模型制作过程中处理。2.模型已经做完后进行处理。
操作方法:
模型制作过程中处理:
在blender中,选中你想要复制的物体,按快捷键ALT+D进行关联复制。同时右侧“数据”窗口会有你关联复制之后的对象数量。
如下图:“3”为已经关联复制之后的数量。
模型已经做完后进行处理:
在blender中,如果现在所有的模型已经做完了,并且在做的过程中没有进行关联复制。可以对已经做好的对象进行处理,选中所有相同样子的对象,按快捷键CTRL+L来关联物体数据。
如下图,CTRL+L之后会跳出关联/传递数据的菜单,选择点击关联物体数据。同理,在进行关联物体数据之后,右侧“数据”菜单会有关联之后的对象数量,如下图的“20”。
过多的关联对象会使对象数量(mesh)变多。把不需要交互、没有业务使用需求的对象优先进行“合并”。其次把需要交互的、有业务使用需要的相同对象,进行关联复制/关联物体数据。
附:
Mesh数优化视频教程:预览帧数优化-关联优化
3.3减少模型面数
如何查看模型面数:
在blender中,在视图叠加层中找到统计信息并打开,就可以看到此模型的面数总数。如下图:
面数建议:
一般glb文件面数建议控制在1000w以下,不然容易导致文件较大、加载慢等问题。