IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> URP渲染管线场景优化实战 2.2静态资源导入及优化——Model -> 正文阅读

[游戏开发]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左右,因此,运行时模型内存的占用优化才是我们重点考虑的问题。

链接

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 00:59:23  更:2022-09-21 01:00:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/10 22:19:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码