【从零开始游戏开发】静态资源优化 | 全面总结 |建议收藏

你知道的越多,你不知道的越多
点赞再看,养成习惯,别忘了一键三连哦
文章持续更新中
1??Audio导入设置
Unity下资源工作流程图
资源类型与导入
??外部导入资源模型网格Mesh、纹理、音频、字体、动画、视频??内部创建资源prefab预制体、AnimationController、TimeLine、RenderTexture、VFX
资源检查并优化
UPR Asset
资源检查报告解读
??Audio检查ForceToMono,减少内存和磁盘占用使用未压缩Wav格式,通过平台控制压缩安卓使用Vorbis压缩方式,ios用MP3音频采样值通常为为22000HZ设置为OverrideSampleRate??音频加载类型 LoadType小于200KB 使用DecompressOnLoad大于200KB 使用Compressed In Memory超大的背景音乐 使用streaming流式加载 避免卡顿EditorSettingFBXPrefabSceneTexture
安卓手机优化前后
包体大小减少
内存开销大幅度减少
CPU开销小幅度上升
2??Model导入设置检查与优化
Unity模型导入基本流程
DCC工具导出设置(美术)
??导出FBX格式??优化原始导入模型文件,删除不必要的数据统一单位导出网格必须是多边形括扑,不能是贝塞尔曲线、样条曲线等Unity不支持的网格导出之前确保所有的Deforners都烘焙到网格模型上不建议将模型使用的纹理随模型导出导出时不要携带摄像机、灯光、材质等场景信息??原始模型对性能的影响点最小化面数、三角面尽量分布均匀不需要微三角面(1个三角面只包含个位数像素,LOD解决)合理的括扑结构与平滑组,尽可能是闭包,防止Unity烘焙错误尽量少的材质个数尽量少的蒙皮网格尽量少的骨骼数量防止Unity后期CPU和GPU性能消耗FK与IK节点分离,导出时要删除IK骨骼节点Unity不支持导入的IK骨骼

【从零开始游戏开发】静态资源优化 | 全面总结 |建议收藏

文章插图
模型导入设置
??设置模型ModelSceneMeshesSkinMesh动态修改要开启Write/readMesh压缩Geometry几何体??设置Animation模型不涉及动画,可以关闭??设置Material模型不涉及动画,None??模型优化尽可能网格合并尽可能共享材质不使用网格碰撞体不必要 不开启读写网格合理使用LODSkinWeights受骨骼影响多合理压缩网格不需要rigs和BlendShapes劲量关闭如果可以,禁用法线和切线多套模型
检测报告解读
??检查动画资源压缩方式Anim.Compression最佳压缩方式提高加载速率??设置PlayerSetting不涉及动画情况下,设置以下两个Vertex CompressionOptimizeMeshData删除不必要的数据??检查FBX资源顶点数(可以忽略)
优化对比
包体大小不变
后期运行时,模型资源优化才是重点
3??纹理的基础概念
Unity纹理的类型
Default默认的纹理类型格式NormalMap法线贴图,可将颜色通道转换为适合实时法线贴图的格式EditorGUI and LegacyGUI在编辑器GUI控件上使用的纹理Sprite2D使用的Sprite或UGUI使用的纹理Cursor鼠标光标Cookie用于光照Cookie剪影类型的纹理LightMap光照贴图纹理SingleChannel原始图片只有单通道
纹理大小
2的幂次方,1024,,52
Unity可以采用变体设置多套资源
??通过来限制不同平台、不同硬件来加载不同精度的贴图
纹理加载方式:、稀疏纹理,
增加细节贴图或增加高反差来添加细节
在不降低视觉效果的情况下尽量减少贴图大小
通过-》》查看
防止过采样(红色)和欠采样(蓝色)
纹理颜色空间
??默认大多数图像处理工具都会使用sRGB颜色空间处理和导出纹理,这时纹理选项的sRGB需要开启 。
?? 如金属度贴图、粗糙度贴图、或者法线贴图需要关闭,否则视觉错误表现