unity面试题(性能优化篇)

CPU

预处理、缓存数据

注释空的unity函数

运算cpu->gpu

减少昂贵计算(开方)

限制帧数

加载(预加载、分帧加载、异步加载、对象池)

慎用可空类型比较

避免频繁计算(分帧、隔帧)

算法优化

变体收集预热

使用clear操作代替容器的new操作

unity spine使用二进制格式

品质分级

多线程、协程

批次合并

|----------------|---------|---|---|
| | | | |
| 静态合批 | | | |
| 动态合批 | | | |
| 手动合批 | | | |
| gpu instancing | 同材质 | | |
| srp batcher | 同shader | | |

mipmap、LOD

font->tmp font

GC

减少手动gc,考虑在加载时gc

减少字符串的使用,避免使用字符串做key,使用StringBuilder拼接

lambda、LINQ->本地函数

减少协程使用,协程返回值缓存

object.name etc

减少日志刷屏,处理错误警告日志

减少ToArray之类的操作

UI

显示隐藏(Alpha Group)

禁用mipmap

内存

lua减少table构造

采用精度更小的数据(Color->Color32)

压缩数据

时间换空间

ab包根据功能分包、动态加载卸载

网络

减少网络包体的大小和精度

减少网络包发送数量

GPU

填充率

降低分辨率

shader(减少精度、减少if操作、减少复杂数学计算、使用手机版本shader)

带宽

调整图片大小格式(尺寸、通道、复用、图集(降低DC))

OD

参考资料

Unity性能优化大合集,All In One !(更新至8.18) - UWA问答 | 博客 | 游戏及VR应用性能优化记录分享 | 侑虎科技从UWA(www.uwa4d.com)上线至今的半年时间内,我们不知不觉,累积推送了80多篇技术原创文章,今天我们把所有的技术推送整理了索引,方便大家查阅,此文也将不断更新。同时,侑虎君想说:曾...https://blog.uwa4d.com/archives/allinone.html

https://www.cnblogs.com/timlly/p/10463467.htmlhttps://www.cnblogs.com/timlly/p/10463467.html

相关推荐
yaoh.wang2 小时前
力扣(LeetCode) 13: 罗马数字转整数 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
铭哥的编程日记5 小时前
后端面试通关笔记:从真题到思路(五)
面试·职场和发展
前端一小卒7 小时前
一个看似“送分”的需求为何翻车?——前端状态机实战指南
前端·javascript·面试
xlp666hub7 小时前
C进阶之内存对齐,硬件总线和高并发伪共享的底层原理
面试·代码规范
xhxxx7 小时前
从被追问到被点赞:我靠“哨兵+快慢指针”展示了面试官真正想看的代码思维
javascript·算法·面试
yaoh.wang8 小时前
力扣(LeetCode) 14: 最长公共前缀 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
qq 180809518 小时前
从零构建一个多目标多传感器融合跟踪器
unity
Haooog8 小时前
Docker面试题(不定时更新)
java·docker·面试
feathered-feathered8 小时前
Redis基础知识+RDB+AOF(面试)
java·数据库·redis·分布式·后端·中间件·面试
a程序小傲9 小时前
小红书Java面试被问:java创建对象有哪些方式?
java·开发语言·面试