Merge branch 'master' of https://gitee.com/zzzisfunnyboy/obsidian-notes
This commit is contained in:
@@ -1,3 +1 @@
|
||||
[关于Unity加载优化,你可能遇到这些问题 - 知乎](https://zhuanlan.zhihu.com/p/23733044)400 Model Not Exist
|
||||
|
||||
sk-da030f4a28444c8094d9db8b7655b4f7
|
||||
[关于Unity加载优化,你可能遇到这些问题 - 知乎](https://zhuanlan.zhihu.com/p/23733044)
|
||||
|
||||
31
3Resources/游戏开发/性能优化/性能优化-面试.md
Normal file
31
3Resources/游戏开发/性能优化/性能优化-面试.md
Normal file
@@ -0,0 +1,31 @@
|
||||
- UGUI
|
||||
- 降低UI刷新的频次
|
||||
- HUD刷新
|
||||
- 可以在代码逻辑中做一定的延迟
|
||||
- 颜色不同会导致无法合批
|
||||
- 可以用MaterialPropertyBlock解决
|
||||
- Canvas下**网格的变化**会引起**Canvas.BuildBatch的调用**
|
||||
- 解決
|
||||
- 減少Canvas下网格顶点的变换,例如UI元素的**Transform变动**
|
||||
- FGUI的处理方式
|
||||
- 自动合并相邻组件
|
||||
- UGUI无法做到的原因是因为依赖底层的动态合并以及静态合并,但FGUI只处理UI
|
||||
- 顶点数据重组
|
||||
- 将多个组件的顶点UV颜色数据合并到单个顶点缓冲区,一次性提交到GPU
|
||||
- 文本处理:
|
||||
- 将某几个字的纹理和图片的纹理打到同一个图集
|
||||
- 动态变更字体的时候,往图集里更新新的字体,避免发生材质重建
|
||||
- 颗粒度不同
|
||||
- UGUI的Canvas下元素被设置Dirty后会导致整个CanvasReBuild
|
||||
- FGUI的局部更新更高效
|
||||
- TextMeshPro
|
||||
-
|
||||
- 合并批次
|
||||
- 问题
|
||||
- **无法合批**的情况
|
||||
- 不同Canvas|图集交叉|深度交叉
|
||||
- 同一个Canvas,同一图集深度,但无法合批的情况
|
||||
- **动态合批未通过:超过顶点限制,缩放不为1**
|
||||
- 对于Alpha为0的Image,需要勾选其CanvasRender组件上的Cull Transparent Mesh选项,否则依然会产生DrawCall且容易打断合批。
|
||||
|
||||
-
|
||||
Reference in New Issue
Block a user