Unity_NGUI原理机制
来源:互联网 发布:免费收款收据打印软件 编辑:程序博客网 时间:2024/06/06 03:42
Unity_NGUI原理机制
UIGeometry、UIDrawCall和UIWidget之间的关系、UIPanel的管理机制
UIGeometry,UIDrawCall和UIWidget的关系:UIWidget是UI的基础组件(UILabel,UISprite)的基类,含有组件的基本信息(width,Height,color等),UIGeometry是UIWidget的几何数据,记录了顶点坐标,贴图的UVs和颜色等信息,UIDrawCall是将多个UIWidget的UIGeometry组合起来一起绘制,具体的UIWidget如果共用一个UIDrawCall由UIPanel控制。
UIWidget(UILabel , UISprite)的任何变化(transform , drawSize , width , heigth , color , pivot ,anchor 等)变化都会引起绘制该UIWidget进行重新构建——对Mesh的顶点进行刷新,尤其是depth的变化会使得所有UIDrawCall 进行重写调整,这是非常耗性能的。
NGUI的好处就是:合并Mesh和图集节省DrawCall,由于影响Mesh的因素太多了,所以会“牵一发而动全身”,NGUI采取的一个通用的策略,没有对不同的情况做不同的处理,都是采用某个UIDrawCall全部刷新甚至是全部UIDrawCall的刷新,这也是大家吐槽的“重中之重”。
使用NGUI制作UI的建议:
1、尽量是UIWidget静动分离,即静止的尽量合成单独一个UIPanel,会变化的就放在另外一个UIPanel。
2、尽量控制UIPanel和UIDrawCall的数量,充分利用图集的空间,对“夹层”的情况可以通过图集的调整,使得UIDrawCall变得更少。
1、尽量是UIWidget静动分离,即静止的尽量合成单独一个UIPanel,会变化的就放在另外一个UIPanel。
2、尽量控制UIPanel和UIDrawCall的数量,充分利用图集的空间,对“夹层”的情况可以通过图集的调整,使得UIDrawCall变得更少。
===================================================================================
结束。
0 0
- Unity_NGUI原理机制
- Unity_NGUI介绍_038
- Unity_NGUI基础01_039
- Unity_NGUI基础02_040
- Unity_NGUI基础控件_ScrollView_042
- Unity_NGUI基础控件_Tween_043
- Unity_NGUI基础控件_PlayTween_044
- Unity_NGUI案例制作_048
- 索引原理,查询机制
- 索引原理,查询机制
- as3:事件机制原理
- 双缓存机制原理
- java反射机制原理
- JVM工作原理、机制。
- PHP插件机制原理
- String原理与机制
- handler机制的原理
- String原理与机制
- 谈C#中的Delegate
- HTML 5 Web 存储
- 遍历文件夹下特定的文件
- Spring通过c3p0或者dbcp连接数据库获得DataSource配置
- oozie下使用hive UDF的惨痛教训
- Unity_NGUI原理机制
- js综合练习(原生js的拖拽)
- Github代码管理,多人协作
- 常用技术类网站链接
- emmet:HTML/CSS代码快速编写神器
- 解决每次打开Office 2013都提示配置进度
- 解决pip 安装失败
- Spring3中定时器的配置使用之Quartz
- 六种白盒测试(1)