欢迎光临散文网 会员登陆 & 注册

《Unity性能优化》系列课程笔记——第贰节

2022-01-25 13:57 作者:Metaverse大衍神君  | 我要投稿

2022年1月25日 第贰讲 Model导入设置检查与优化

  • DCC中模型导出

    • 统一单位

    • 导出的网格必须是多边形拓扑网格,不能是贝塞尔曲线、样条曲线、NURBS、NURMS、细分曲面等

    • 烘培Deformers,在导出之前,确保变形体被烘培到网格模型上,如骨骼形变烘培到蒙皮权重上

    • 不建议模型使用到的纹理随模型导出

    • 如果你需要导入blend shape normals,必须要指定光滑组smooth groups

    • DCC导出面板设置, 不建议携带场景信息导出,如不建议导出摄像机、灯光、材质等信息,因为这些的信息与Unity内默认都不同。除非你自己为某DCC做过自定义导出插件。

    • Unity 支持多种标准和专有模型文件格式(DCC)。Unity 内部使用 .fbx 文件格式作为其导入链。最佳做法尽可能使用 .fbx 文件格式,并且不应在生产中使用专有文件格式。

    • 优化原始导入模型文件,删除不需要的数据

  • Unity模型导入流程

Unity模型导入流程
  • 原始模型文件对性能的影响点

    • 最小化面数,不要使用微三角形,分布尽量均匀

    • 合理的网络拓扑和平滑组

    • 尽量少的使用材质个数

    • 尽可能少的使用蒙皮网格

    • 尽可能少的骨骼数量

    • FK与IK节点没分离,IK节点没删除

  • 模型优化

    • 尽可能的将网格合并到一起,

    • 尽可能使用共享材质

    • 不要使用网格碰撞体

    • 不必要不要开启网格读写

    • 使用合理的LOD级别

    • Skin Weights受骨骼影响个过多

    • 合理压缩网格

    • 不需要rigs和BlendShapes尽量关闭

    • 如果可能,禁用法线或切线

    • 多套模型

  • 资源检查报告——FBX部分问题解读

    • 其中两项建议与模型动画有关,而测试项目中所有模型资源都不涉及动画,可以将Rig标签下的Animation Type设置为None,并关闭Animation标签下的Import Animations选项,设置Materials标签中的Material Creation Mode为None.

    • 开启Project Settings——>Player——>Optimization下的Vertex Compression与Optimize Mesh Data选项

  • 优化成果

    • 包体大小前后没变化,依然是544.6M

    • 运行时模型内存优化前为422.9M,优化后为400.5M,相差的22M来自于运行时CombinedMesh开销的节省。后期运行时模型资源优化才是我们的重点。


《Unity性能优化》系列课程笔记——第贰节的评论 (共 条)

分享到微博请遵守国家法律