This commit is contained in:
lujun 2023-02-05 21:31:55 +08:00
parent 39295b8449
commit 4be7ef1cf5

View File

@ -5,8 +5,11 @@
为需要排序的UI渲染器设置排序优先级 在UI渲染遍历节点树阶段不立即执行各种UI渲染器而是把UI渲染器缓存起来在UI渲染遍历完节点树后对UI渲染器缓存通过排序优先级进行排序后执行。然而遮罩会打断这一过程所以如果项目中大量使用了遮罩优化效果可能会不太明显。
# 效果对比
在ScrollView下生成200个项目测试对比。
测试平台web-mobile
测试设备HUAWEI P30 Pro
项目预制体结构:![QQ截图20230205190757|225x258](./docs/images/QQ截图20230205190757.png)
* 未使用UI渲染优化![Screenshot_20230205_172414|230x500](./docs/images/Screenshot_20230205_172414.jpg)
@ -44,6 +47,7 @@ export const ORDER_IN_LAYER_MAX = 100000;
```
3. 在需要排序的UI渲染器上(Sprite或者Label等)添加SortingGroup组件并设置排序层和排序值 ![QQ截图20230205173334|524x176](./docs/images/QQ截图20230205173334.png)
和Unity不同的是`Order In Layer`不必是整数,这里可以使用小数。
不同`Sorting Layer`的情况下,`Sorting Layer`枚举越小越先渲染;相同`Sorting Layer`的情况下,`Order In Layer`的值越小越先渲染。
# 注意
1. 该扩展包对引擎进行过小改,如果想移除这个功能,在删除扩展包目录后需要重启编辑器。