NGUI学习笔记(四)UIPanel
来源:互联网 发布:ae cc2015软件破解视频 编辑:程序博客网 时间:2024/06/07 01:50
UIPanel用来收集和管理它下面所有widget的组件。通过widget的geometry创建实际的draw call。没有panel所有东西都不能够被渲染出来。如果你对Unity熟悉,你可以把UIPanel当做Renderer。
所有panel都有一个Depth值,会影响所有它包含的widget。如果你的UI有很多窗口,那么最好每个窗口有一个panel。Panel上的depth权重会远远高于每一个widget的depth权重,所以保证panel不要使用同样的depth。如果使用同样的depth在panel上,那么draw call会被自动拆分来保证渲染顺序,所以会增加更多的draw call。
注意clipping的panel不能嵌套。每个panel只能clip自己管理的widget,如果一个panel在另外一个panel里面,只有一个会影响到里面的widget。这个限制以后会去掉。
默认NGUI中panel的Render Queues从3000开始往上增加。你可以通过Render Q来修改。如果你想在两个panel中间增加粒子,只要修改两个panel的render queue一个高于粒子,一个低于粒子即可。如果想要让所有的draw call使用和NGUI 2.x版本的渲染方式一样,使用z轴而不是depth。那么给panel的Render Q指定为Explicit。(NGUI 2.x用的是3000)。
如果你找和Anchors相关的文档,可以看基类——UIRect。
小贴士
一个动力学Rigidbody会自动增加到你的panel上,因为对于Unity来说这样会提升性能。移动静态的collider会有很多消耗性能的操作,但是移动rigidbody就不会。
类文档
http://tasharen.com/ngui/docs/class_u_i_panel.html
所有panel都有一个Depth值,会影响所有它包含的widget。如果你的UI有很多窗口,那么最好每个窗口有一个panel。Panel上的depth权重会远远高于每一个widget的depth权重,所以保证panel不要使用同样的depth。如果使用同样的depth在panel上,那么draw call会被自动拆分来保证渲染顺序,所以会增加更多的draw call。
- Alpha属性影响所有在panel下面的widget。所以可以用它来淡出整个窗口。
- 如果你的UI需要被灯光影响,需要勾选上Normals。
- 如果创建了一个有很多geometry的scrollable panel,你需要勾选Cull选项来减少三角形的数目。这样也可能降低性能,因为widget的可视性需要每次update都检验一次。
- 勾选Static选项来告诉NGUI这个panel下面的widget不会被移动,这样可以提高性能。NGUI会忽略所有的position/rotation/scale改变。所以在运行时移动widget不会有效——所以小心使用。
- 如果要调试由panel创建的draw calls,Show All选项可能帮助到你。你会看到由panel创建的所有draw call,以渲染顺序排序。每个draw call会包括它使用到material的详细信息,那个widget用的这个material,甚至可以让你关闭某些draw call来让你查询某些问题。
注意clipping的panel不能嵌套。每个panel只能clip自己管理的widget,如果一个panel在另外一个panel里面,只有一个会影响到里面的widget。这个限制以后会去掉。
默认NGUI中panel的Render Queues从3000开始往上增加。你可以通过Render Q来修改。如果你想在两个panel中间增加粒子,只要修改两个panel的render queue一个高于粒子,一个低于粒子即可。如果想要让所有的draw call使用和NGUI 2.x版本的渲染方式一样,使用z轴而不是depth。那么给panel的Render Q指定为Explicit。(NGUI 2.x用的是3000)。
如果你找和Anchors相关的文档,可以看基类——UIRect。
小贴士
一个动力学Rigidbody会自动增加到你的panel上,因为对于Unity来说这样会提升性能。移动静态的collider会有很多消耗性能的操作,但是移动rigidbody就不会。
类文档
http://tasharen.com/ngui/docs/class_u_i_panel.html
0 0
- NGUI学习笔记(四)UIPanel
- NGUI学习笔记(七):UIPanel剪裁粒子效果
- NGUI -- UIPanel
- NGUI:UIPanel
- NGUI -- UIPanel
- NGUI组件UIPanel
- 【Unity3D】【NGUI】UIPanel
- NGUI所见即所得之UIPanel
- NGUI之UIPanel
- NGUI: UIPanel控件
- NGUI所见即所得之UIPanel
- NGUI所见即所得之UIPanel
- unity ngui学习(四)
- NGUI 渲染流程深入研究 (UIDrawCall UIGeometry UIPanel UIWidget)
- NGUI 渲染流程深入研究 (UIDrawCall UIGeometry UIPanel UIWidget)
- NGUI 渲染流程深入研究 (UIDrawCall UIGeometry UIPanel UIWidget)
- NGUI核心组件之UIPanel
- NGUI核心组件之UIPanel
- java基本类型与包装类型
- POJ1655Balancing Act(树形DP)
- 一个男人关心的东西 决定了他的层次
- Unit tests
- iOS开发从新手到app store上架
- NGUI学习笔记(四)UIPanel
- ORA-01950: no privileges on tablespace 'USERS'错误
- Test-Driven Development and Testing Early
- hdu 1532&&poj1273 基础最大流
- poj 2528 Mayor's posters
- python中的常用模块
- 超线程(Hyper-Threading)
- 深入浅出K-Means算法
- cframewnd oncreatecontrol