• URP渲染管线场景优化实战 2.2静态资源导入及优化——Model


    2.2 Model导入设置及优化

    2.2.1 Model导入流程

    在这里插入图片描述

    2.2.2 DCC中Model导出设置

    1. 统一单位;
    2. 导出网格为多边形拓扑,不能是贝塞尔曲线、样条曲线、细分曲面等;
    3. 在导出前确保所有的Deformers都烘焙到网格模型上;
    4. 不建议模型使用的纹理随模型导出(导致资源目录难以管理,并且降低导入效率);
    5. 如果需要导入Blend shape normals时,必须指定光滑组Smooth groups;
    6. 导出时不应当携带摄像机、灯光、材质等信息;

    原始模型影响性能点

    • 最小化面数(不应当通过增加面数而表现细节),不需要微三角形面,三角形面尽量分布均匀;
    • 合理的拓扑结构和平滑组,尽可能是闭包;(避免烘焙错误和额外三角形面和顶点的产生)
    • 尽量少的材质个数
    • 尽量少的蒙皮网格
    • 尽可能少的骨骼数量(CPU和GPU双性能瓶颈)
    • 原始模型中的FK与IK节点分离,导出(Unity不支持导入的IK骨骼,做好分离方便导出时删除IK骨骼节点)

    2.2.3 Unity导入设置

    Scene属性中

    一般而言,图中的所有属性都不需要勾选:
    在这里插入图片描述

    Mesh属性中

    • 尽可能的将网格合并到一起(Mesh Compression)
      • 一般制作规范的模型出错的概率更小
      • 一般闭包的模型出错的概率更小
    • 禁用读写选项(Read/Write)。启用后会在内存中额外复制一份此网格,一个副本会保存在内存中,另外一个保存在GPU显存中,只有在运行时需要动态修改网格数据时需要开启此选项,另外SkinMesh也需要开启此选项。
    • 尽量不要使用网格碰撞体。即:保持Optimize Mesh 和 Generate Colliders关闭。

    Geometry属性中

    • Index Format选项,如果顶点数不超过65535,可以使用16位索引;
    • 如果不使用法线或切线信息,可以尝试直接关闭另外的所有选项;
    • 如果不需要光照烘焙,可以关掉第二套光照UV生成;
    • 使用合理的LOD级别;
    • 合理压缩网格;
    • 不需要rigs和BlendSHapes尽量关闭;
    • 如果可能,禁用法线或切线;

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

    • 检测标准中的500个顶点数过于严苛,可以忽略;
    • 两项建议与模型动画有关,而测试项目中所有模型资源都不涉及动画,
      • 可以将Rig标签下的Animation Type设置为None;
      • 并关闭Animation标签下的Import Animations选项,
      • 设置Materials标签中的Material Creation Mode为None。
    • 开启Project Settings =》Player=》Optimization下的
      • Vertex Compression(对每个通道的顶点压缩,可为模型除位置,光照贴图UV所有内容进行压缩)
      • Optimize Mesh Data选项(可根据网格使用的材质对没有用到的数据进行删除,如材质中没有使用到的切线,法线,颜色,UV等)

    2.2.5 优化成果

    在这里插入图片描述
    将所有的模型转变为上述导入设置后,包体大小减少77MB:
    在这里插入图片描述

    • 运行时模型内存中加载量减小,优化的空间在于运行时CombinedMesh开销的节省。后期运行时模型资源优化才是重点。

    在这里插入图片描述

    在这里插入图片描述
    在上述设置下,内存总体占用减小大约100M,主要优化应该来源于Mesh Compression。
    场景中的模型资源较少大约在50MB左右,但是在内存中占用在300MB左右,因此,运行时模型内存的占用优化才是我们重点考虑的问题。

    链接

  • 相关阅读:
    【JavaSE】Comparable接口和Comparator接口
    数据结构——线性表
    汉兰达汽车发动机怠速抖动故障诊断方案设计
    【git命令】删除分支
    博客的评论与回复功能的实现
    Android面试题 - 01
    char s1[len + 1]; 报错说需要常量?
    【状态机模型】大盗阿福 买卖股票IV V
    图解LeetCode——6. Z 字形变换(难度:中等)
    数论1---整除
  • 原文地址:https://blog.csdn.net/weixin_42221907/article/details/126898233