Unity UGUI 性能优化

一、减少不必要的Raycast Target

所有UGUI组件在创建时都默认开启了Raycast Target这一选项,实际上是为接受事件响应做好了准备。而事实上,大部分比如Image、Text类型的UI组件是不会参与事件响应的,但仍然会在鼠标/手指划过或悬停时参与轮询,通过模拟射线检测判断UI组件是否被划过或悬停,造成不必要的耗时。尤其在项目中UI组件比较多时,关闭不参与事件响应的组件的Raycast Target设置,可以有效降低EventSystem.Update()耗时。

Unity UGUI 性能优化_第1张图片

二、Draw Call 方面优化

1、首先同样的Shader和同一个图集会合并批处理。所以要尽量用图集

2、渲染打断,理论上UGUI从上到下渲染,比如:图A+文本B+图A。由于B在中间所以两张图不能合批,但是Unity这里做了优化,如果这里的B改变层级不影响显示(也就是他们没有交集),那么Unity会将B放到最后渲染,让图A合批。这是Unity自己做的优化

3、不同Canvas是不能进行合批的

你可能感兴趣的:(unity,优化,UGUI,优化)