UIWidget与UIPanel

初学Unity我问别人什么是UIWidget?UIWidget和UIPanel能互相代替吗?

我得到了某人回答 : 汽车能和钢笔互相代替吗 。

真让我无语,在此请求诸位大神
对于新手说点有用的吧,别扯些没有油盐的比方。

此时我用的NGUI版本是3.5.8,这个版本的NGUI已经做过大改动。无论是风格还是代码

在这个版本里UIWidget不再是 像3.0之前版本 “每个NGUI中小零件都可以看作UIWidget”  。

当前版本的UIWidget全面叫做 UIWidgetContontainer,是一个容器 。

在3.0以前的版本 有人喜欢在Root下创建一个空物体 作为背景容器(诸如此类)

那么 在现在 咱们就创建一个UIWidgit来做容器使吧。

嗯,扯得有点跑题了..

这篇文章上看到他的解释是
UIPanel 是一个绘图的载体。

看下面两幅图

                                    UIPanel

UIContontainer

 

现在看来确实是不相干的两个东西 。

      

时间: 2024-10-30 23:22:53

UIWidget与UIPanel的相关文章

[cb]NGUI系列 UIWidget

在NGUI中UIWidget是所有组件的基类,它承担了存储显示内容,颜色调配,显示深度,显示位置,显示大小,显示角度,显示的多边形形状,归属哪个UIPanel.这就是UIWidget所要承担的内容.在UIWidget的所有子类中都具有以上相同的属性和任务.UIWidget和UIPanel的关系非常密切,因为UIPanel承担了UIWidget的所有渲染工作,而UIWidget只是承担了存储需要渲染数据.所以,在UIWidget在更换贴图,材质球,甚至更换UIPanel父节点时它会及时通知UIPa

Disable掉NGUI的UIPanel会引起UISprite产生异常开销

摘要 5月27日发现机库界面在设备上有明显卡顿的情况,检查后发现UISpirte.Update有异常的性能开销,下图所示: 影响范围 为了Profile,在UISprite.Update中加入了如下Profile代码 结果如下: 结论: 的确有的界面在每帧把mChanged设置为true!,而且这部分是性能的罪魁祸首 Deactivate掉AcheivementUI(Clone)后 Deactivate掉QuestPanelMoveRoot后 剩余的开销大的UISprite基本就散落在UI各处了

NGUI 减少drawcall

前置说明一: Unity中的drawcall定义: 每次引擎准备数据并通知GPU的过程称为一次Draw Call. Unity(或者说基本所有图形引擎)生成一帧画面的处理过程大致可以这样简化描述:引擎首先经过简单的可见性测试,确定摄像机可以看到的物体,然后把这些物体的顶点(包括本地位置.法线.UV等),(顶点如何组成三角形),变换(就是物体的位置.旋转.缩放.以及摄像机位置等),相关光源,纹理,渲染方式(由材质/Shader决定)等数据准备好,然后通知图形API--或者就简单地看作是通知GPU-

NGUI 3.x 深度管理及渲染优化

http://gad.qq.com/article/detail/7151089 UIWidget的显示顺序 我们在设置UISprite.UILabel等控件的深度时,都是在设置其Widget样式中的Depth值.其实这些控件都是继承至UIWidget. 但是UIPanel不是继承至UIWidget,Depth是UIPanel自身的一个属性. 在NGUI 3.x中每一个UIWidget的显示顺序由Depth值决定,与z轴没关系.但是,这个Depth值并不单纯的是我们设置的值,而是由两部分组成.一

unity3D游戏开发十四之NGUI一

转:http://blog.csdn.net/kuloveyouwei/article/details/23676039 在Unity中,可以使用代码控制其自身所携带的GUI来实现图形界面的搭建.但是这些组件的搭建效率很低,而且已经无法满足现在市场对图形用户界面美感的要求,所以,引入了NGUI来增加所要开发的图形用户界面的美感.NGUI是一个功能强大的UI系统,其事件处理通常由开发人员编写C#脚本完成,并且是一个严格遵循KISS原则的Unity框架,该框架具有干净.简约的代码. 现在NGUI的各

NGUI 降低drawcall

前置说明一: Unity中的drawcall定义: 每次引擎准备数据并通知GPU的过程称为一次Draw Call. Unity(或者说基本全部图形引擎)生成一帧画面的处理过程大致能够这样简化描写叙述:引擎首先经过简单的可见性測试.确定摄像机能够看到的物体,然后把这些物体的顶点(包含本地位置.法线.UV等),(顶点怎样组成三角形),变换(就是物体的位置.旋转.缩放.以及摄像机位置等).相关光源,纹理,渲染方式(由材质/Shader决定)等数据准备好,然后通知图形API--或者就简单地看作是通知GP

Unity NGUI性能优化

建议读者先看这篇博文:http://blog.csdn.net/zzxiang1985/article/details/43339273,有些技术已经变了,比如第1招,unity5的打包机制已经变许多了.不像其他招基本还是可以学习的,比如:透明通道分离,关闭texture read/write选项(其实其他资源得read/write选项也类似,比如动画资源等),减少场景中的GameObject数量,整理图集(一般是一个面板使用2个图集:当前面板一个图集+基本图集),使用多个UIPanel隔开dc

【Unity3D游戏开发】NGUI之DrawCall数量 (四)

看了非常多关于NGUI drawCall的文章.见得比較多的一个观点是:一个 Atlas 相应一个Drawcall. 但事实上NGUI内部有自己的一套对DrawCall的处理规则. 相关的规则有: 1.Atlas图集数量有关 2.Atlas图集的调用顺序(绘制顺序)有关 3.和UIPanel的数量有关 一.降低NGUI 3的DrawCall数量 升级到NGUI3. DrawCall数由5个增长到了十七八个.想想应该不会是NGUI的问题吧.后来整理了一下.发现有两点: 1)对于同一Atlas.Dr

【Unity NGUI游戏开发之四】NGUI的DrawCall数量

看了很多关于NGUI drawCall的文章,见得比较多的一个观点是:一个 Atlas 对应一个Drawcall. 但其实NGUI内部有自己的一套对DrawCall的处理规则.相关的规则有: 1.Atlas图集数量有关 2.Atlas图集的调用顺序(绘制顺序)有关 3.和UIPanel的数量有关 一.减少NGUI 3的DrawCall数量 升级到NGUI3, DrawCall数由5个增长到了十七八个,想想应该不会是NGUI的问题吧.后来整理了一下,发现有两点: 1)对于同一Atlas,DrawC