当前位置: 首页 > article >正文

Unity性能优化总结

目录

前言

移动端常见性能优化指标​编辑

包体大小优化

FPS

CPU占用率

GPU占用率

内存

发热和耗电量

流量优化


前言

        终于有时间了,我将在最近两个项目中进行优化的一些经验进行归纳总结以飨读者。因为我习惯用思维导图,所以归纳的内容主要以图来表达希望对大家有用。当然如下内容肯定有疏忽或者遗漏的地方,请大家不吝赐教。

一些性能优化工具使用:

  https://unity.com/cn/features/profiling

  https://blog.csdn.net/Tokyo_2024/article/details/105388523

  https://blog.csdn.net/u013244147/article/details/104586401

移动端常见性能优化指标

1.包体大小优化

  用工具分析优化资源类型:纹理,音频,视频,网格数据,骨骼动画,配置文件

  【参考阅读】

  https://www.jianshu.com/p/6fba4f474289

  https://blog.csdn.net/m0_50811529/article/details/142587671

  https://wenku.csdn.net/column/747zeubh9z

2.FPS

FPS是一个综合指标。其低于30,或者不稳定则都是因为其他地方的问题导致的,如下:

【参考阅读】

https://blog.csdn.net/qq_41084756/article/details/130934118

https://blog.csdn.net/wjj616806129/article/details/104031551

https://developer.unity.cn/projects/60e2a5f9edbc2a04cfc5e341

3.CPU占用率

重点检测:

  • 执行耗时统计

  • GC大小统计

【参考阅读】

https://www.cnblogs.com/gozili/p/10281168.html

https://zhuanlan.zhihu.com/p/39998137

https://blog.csdn.net/qq_36303853/article/details/140882638

https://cloud.baidu.com/article/3407286

https://www.cnblogs.com/flamesky/p/18168065

https://wuzhiwei.net/unity-settings-optimization/

https://zhuanlan.zhihu.com/p/343074156

https://docs.unity.cn/cn/2019.2/Manual/OptimizingGraphicsPerformance.html

https://blog.csdn.net/qq_35864875/article/details/136539404

https://zhuanlan.zhihu.com/p/382656748

https://blog.uwa4d.com/archives/UWA_ReportModule6.html

https://www.cnblogs.com/uwatech/p/16405795.html

https://zhuanlan.zhihu.com/p/371159292

https://segmentfault.com/a/1190000043970787

https://www.cnblogs.com/flamesky/p/18146594

https://docs.unity.cn/cn/2019.4/Manual/Profiler.html

4.GPU占用率

重点检测:

  • drawcall耗时

  • shader的复杂度(包括纹理采样)

  • overdraw情况

【参考阅读】

https://www.nextmodel.cn/knowledges/video-tutorials/15658/

https://zhuanlan.zhihu.com/p/47056964

https://docs.unity.cn/cn/2021.2/Manual/OptimizingGraphicsPerformance.html

https://developer.unity.cn/projects/6409ebf8edbc2a6b5d462313

https://blog.csdn.net/qq_33060405/article/details/144315186

5.内存

需要考察:

  • 资源冗余;

  • 资源拷贝份数;

  • 内存泄漏;

【参考阅读】

https://unity.com/cn/how-to/use-memory-profiling-unity

https://developer.unity.cn/projects/60e2a5f9edbc2a04cfc5e341

https://zhuanlan.zhihu.com/p/6775481769

https://blog.csdn.net/f402455894/article/details/120309344

https://blog.csdn.net/weixin_53501436/article/details/132670960

https://segmentfault.com/a/1190000019844821

https://blog.csdn.net/weixin_42186870/article/details/136148421

https://blog.csdn.net/lejian/article/details/128989139

https://blog.csdn.net/ellis1970/article/details/143378783

https://www.cnblogs.com/weigangblog/p/18201401

https://www.cnblogs.com/jiaxinli/p/12333014.html

https://wetest.qq.com/labs/315

https://blog.csdn.net/qq_36303853/article/details/140882638

6.发热和耗电量

  Unity3D发热和耗电是一个系统工程,需要从帧率、CPU、GPU、内存等多方面考虑。

  • 降低帧率

  • 减少不必要的计算

  • 优化事件轮询机制

  • 减少渲染

  • 减少drawcall

  • 优化阴影计算

7.流量优化

  • 数据序列化(Protobuf等)以及压缩(Gzip等)

  • 降低字段精度(float使用float16,2D游戏只传输xy坐标)

  • 使用差分同步(只发送变化部分)

  • 减少网络数据传输频率(减少不必要的请求)

  • 选用合适的网络协议(TCP或者UDP)

【参考阅读】

https://blog.csdn.net/luoyikun/article/details/121687973

https://wenku.csdn.net/column/1cvtkw8dcv

https://wenku.csdn.net/column/6waef4v63n

https://www.cnblogs.com/zafu/p/18639883

https://zhuanlan.zhihu.com/p/41670260


http://www.kler.cn/a/469007.html

相关文章:

  • 级联配准learning
  • shell脚本总结2
  • linux系统(ubuntu,uos等)连接鸿蒙next(mate60)设备
  • 海外招聘丨 弗拉瑞克商学院—博士研究员:智能家居技术业务和能源管理中的数据分析和人工智能
  • Java重要面试名词整理(二十一):SpringSecurity
  • Jetpack Compose 学习笔记(四)—— CompositionLocal 与主题
  • 云架构:考量与框架
  • 并发服务器框架——zinx
  • 智能问答系统:引领人工智能对话的未来
  • 阿里云服务器配置成代理服务器
  • linux,centos7.6安装禅道
  • RFID手持机与RFID工业平板在仓储物流管理系统中的选型
  • [SMARTFORMS] 输出文本变量绑定
  • MyBatis 与 MyBatis-Plus 的区别
  • Mapper XML 文件纳入 classpath 的解决方案
  • SocraticLM: Exploring Socratic Personalized Teaching with Large Language Models
  • 党员学习交流平台
  • Ae 效果详解:放大
  • springboot565企业车辆管理系统设计与实现(论文+源码)_kaic
  • Flink系列知识讲解之:深入了解 Flink 的网络协议栈
  • python学opencv|读取图像(二十六)使用cv2.putText()绘制文字进阶-在图像上写文字
  • AI定义汽车/跨域融合/整车智能,汽车智能化2.0时代新机会来了
  • Spring Boot 3 配置大全系列 —— 如何配置用户的登录与认证?
  • (转)rabbitmq怎么保证消息不丢失?
  • CPU过剩是什么意思? 有什么对电脑的影响吗?如何确认CPU有没有过剩
  • 太速科技-688-基于 VM1302的双路100G光纤PCIe4.0X16加速计算卡