3.NGUI Draw Call(渲染调用)

在Unity中,每次引擎准备数据并通知GPU的过程称为一次Draw Call。Draw Call值越低,会获得更好的渲染性能。工具

 

 

NGUI 查看Draw工具(NGUI-OPEN-Draw Call Tool)性能

 

 

NGUI 方面的Draw Call 优化:优化

(1)     打包图集对象

1、每一个材质/纹理的渲染必定是会产生DrawCall的,这个DrawCall只能经过打包图集来进行优化。blog

2、从功能角度进行划分,例如UI能够划分为公共部分,以及每一个具体的界面,功能上,显示上密切相关的图片打包到一块儿 图片

 

(2)渲染顺序it

1、  U3D的渲染是有顺序的,NGUI的渲染顺序是由咱们控制的,控制好NGUI的渲染顺序,你才能控制好DrawCall。打包

2、  一个DrawCall,表示U3D使用这个材质/纹理,来进行一次渲染,那么此次渲染假设有3个对象,那么当3个对象都使用这一个材质/纹理的时候,就会产生一次DrawCall。假设3个对象使用不一样的材质/纹理,那么无疑会产生3个DrawCall。渲染

 

例子:im

A,B使用材质1,C使用材质2,这时候会有几个Draw Call?

 

有两种状况,3Draw Call

A:材质1

B:材质2

C:材质1

 

第二种状况,2DrawCall

A:材质1

C:材质1

B:材质2

 

 

渲染顺序:Unity默认会按照控件的Depth来渲染。从后往前渲染,当使用相同材质的控件会合并为一个Draw Call。若是和前一个材质不相同则会从新产生一个Draw Call。因此会有上面两种不一样的结果,若是同一个界面有更多的空间存在时,这个问题会更明显。在UI制做的时候就须要特别注意这一点。

相关文章
相关标签/搜索