美文网首页unity3D技术分享Unity游戏开发经验分享
Unity - 性能优化实战02 - 模型设置优化

Unity - 性能优化实战02 - 模型设置优化

作者: 能不写代码么 | 来源:发表于2023-08-07 12:28 被阅读0次

Unity模型导出导入流程

下图主要是美术需要在建模软件进行导出,并在Unity进行导入相关的流程,导出导入很重要,关乎在Unity的使用是否正常

DCC工具导出设置

Unity 支持多种标准和专有模型文件格式(DCC)。Unity 内部使用 .fbx 文件格式作为其导入链
  1. 导出FBX

  1. 优化原始导入模型文件,删除不需要的数据
  • 统一单位,这样可以保证在DCC中和Unity中的单位统一时也让资源目录难以管理
  • 如果需要导入Blend shape normals时,必须指定光滑组Smooth groups,当然也不是任何时候都需要这样
  • 建议导出时不携带如摄像机、灯光、材质等场景信息

  1. 原始模型影响性能点
  • 最小化面数,不需要微三角形面(一个三角面包含个位像素),三角面尽量分布均与
  • 合理的拓扑结构与平滑组,尽可能是闭包
  • 尽量少的材质个数
  • 尽可能少的蒙皮网格
  • 导出的网格必须是多边形拓扑,不能是贝塞尔曲线、样条曲线、细分曲面、NURBS(非均匀有理B样条)、NURMS等,因为这些在导入Unity后都不支持
  • 在导出之前确保所有变形体(Deformers)都烘培到网格模型上,如骨骼的形变烘培到蒙皮的权重上
  • 不建议模型使用的纹理随模型导出,这会降低Unity导入效率,同
  • 尽可能少的骨骼数量
  • FK与IK节点分离,导出时删除IK骨骼节点

  1. 模型优化
  • 尽可能的将网格合并到一起
  • 尽可能使用共享材质
  • 不要使用网格碰撞体
  • 不必要不要开启网格读写
  • 使用合理的LOD级别
  • Skin Weights受骨骼影响个过多
  • 合理压缩网格
  • 不需要rigs和BlendShapes尽量关闭
  • 如果可能,禁用法线或切线

模型导入设置

  • Mesh Compression :一般我们在保证网格准确的情况下,可以启用更激进的压缩方式,可以使网格磁盘空间占用的更小,注意运行时内存不会减少。开启后需要自行测试下
  • Read/Write:启动此选项会在内存中额外复制一份此网格,一个副本会保存在内存中,另一个副本会保存在GPU显存中。只有在运行时需要动态修改网格数据时才需要开启此选项。Skinmesh如果绑定骨骼动画也需要开启此选项
  • Optimize Mesh/Generate Colliders:一般保持默认,除非需要禁止优化或做网格级碰撞
  • 无动画时,取消勾选ImportAnimation
  • 无附加材质时,选择为None

UPR优化建议

  • 检查读/写标志:开启FBX资源的读/写标志会导致双倍的内存占用
  • 检查动画资源压缩方式:动画资源使用最佳压缩方式可以提高加载效率,对于不需要动画的模型来说,AnimationType直接选择None
  • 检查FBX资源顶点数:这个需要根据实际情况和美术沟通
  • 检查FBX资源骨骼数:这个需要根据实际情况和美术沟通
  • 检查动画资源的OptimizeGameObjects选项:如果AnimationType选择的是Humanoid,则应该勾选Optimize Game Objects

PlayerSetting设置

  • Vertex Compression:设置每个通道的顶点压缩,可为模型除位置、光照贴图、UV之外所有内容启动压缩
  • Optimize Mesh Data:可根据网格所启用的材质删除不必要的数据,如材质中没有使用到的切线、法线、颜色以及UV等

Memonry视图

  • Mesh占用为449.2M

相关文章

  • Unity性能优化分析思路

    1)Unity性能优化分析思路 2)Unity2020后Paticle子节点旋转并把ScalingMode设置为H...

  • 性能优化

    Android UI性能优化实战 识别绘制中的性能问题性能优化(二) UI 绘制优化 通过Hierarchy Vi...

  • Android UI性能优化

    Ui性能优化 参考博客:Android UI性能优化实战 识别绘制中的性能问题Android UI性能优化详解 1...

  • linux实用命令

    摘自:性能优化实战 专栏

  • 【Unity项目实战】http网络插件和性能优化

    使用http网络请求:Untiy中常用通信(HTTP)插件BestHttp 性能优化:Unity性能的全面优化详解

  • URP关于多个摄相机的性能优化

    1)URP关于多个摄相机的性能优化​2)Unity Addressables打包的时候如何设置BuildAsset...

  • iOS 知识收集

    性能优化 iOS 保持界面流畅的技巧 UIKit性能调优实战讲解 iOS高效设置视图圆角 使用 ASDK 性能调优...

  • 微服务性能优化

    目录 一、优化思路 二、优化方向 三、优化实战 (一)服务背景 (二)优化方向 一、优化思路 清楚性能基线 只有清...

  • Pytorch袖珍手册之十二

    第六章 Pytorch加速及优化(性能提升) 之三 模型优化 Model Optimization 优化模型以减小...

  • [Unity优化] unity性能优化

    资源管理 Q:我们图标现在是制作成图集后再使用的,但是当图标数量很多的时候,图集的膨胀就很厉害了。对此我们的做法有...

网友评论

    本文标题:Unity - 性能优化实战02 - 模型设置优化

    本文链接:https://www.haomeiwen.com/subject/evompdtx.html