NGUI 源码
文章平均质量分 50
Marccco
这个作者很懒,什么都没留下…
展开
-
NGUI之UIRoot
转载自:https://blog.csdn.net/qiudesuo/article/details/84492852说一下自己遇到的问题吧,就是UIRoot的scale是怎么算的,如果Scaling Style设置为Fixed Size,那么就是2 /Manual Height,具体下面会讲为什么,如果要计算UI的不同分辨率的一下比例的话还是要用到这个的.可以看一下这篇文章.UI...转载 2019-11-05 18:13:39 · 649 阅读 · 0 评论 -
NGUI源码分析(二) UIWidget
UIWidget是所有UI组件的基类,持有UI组件的大小,锚点,顶点,颜色,Alpha等所有跟渲染相关的属性。关键属性: protected Pivot mPivot //锚点protected Color mColor; //颜色protected int mWidth;//组件宽度protected int mDepth = 0;//显示深度,这个深度是相对于父节Panel的...转载 2018-11-29 17:57:07 · 376 阅读 · 0 评论 -
NGUI源码分析(三) UISprite
Sprite继承了UIWidget,一个Sprite就是图集里面的一个基本元素,是一个非常重要和经常使用的类重要属性:UIAtlas mAtlas;//当前Sprite用到的图集UISpriteData mSprite; //Sprite数据 记录Sprite在图集中的位置,和大小,边距等信息Material material //材质 如果图集不为空 使用图集的材质一.OnFi...转载 2018-11-29 17:57:43 · 492 阅读 · 0 评论 -
NGUI源码分析(四) 关于Anchor
老版NGUI的Example 1里面提供演示NGUI中使用UIAnchor组件实现GUI对齐功能,新版本的NGUI的Example例子貌似不再使用UIAnchor了,而是演示Widget内置的Anchor的新功能,我学Uinty3d的时候,NGUI已经是比较新的版本了,所以这里分析一下新Anchor的功能.Anchor其实并不复杂,Anchor的意思就是锚点或抛锚,只要设置了UIWidget的A...转载 2018-11-29 17:58:22 · 369 阅读 · 0 评论 -
NGUI源码分析(五) UIPanel
UIPanel可以看成一个集合,一个Panel可以包含多个Widget.负责排序和更新widget,同时控制widget在什么时候绘制图形。下面具体看看是如何实现的.一.重要属性:static public List<UIPanel> list = new List<UIPanel>(); //保存所有的panelpublic RenderQueue rend...转载 2018-11-29 17:58:56 · 561 阅读 · 0 评论 -
NGUI源码分析(六) UIProgressBar和UISlider
UISlider继承于UIProgressBar 它们是非常重要和实用的类,UIProgressBar它实现了进度条的功能,UISlider在UIProgressBar的基础上实现了拖拽 UIProgressBar 介绍:一.重要属性://方向:左到右,右到左,下到上,上到下public enum FillDirection{ LeftToRight, Right...转载 2018-11-29 17:59:28 · 424 阅读 · 0 评论 -
NGUI源码分析(七) Panel,Widget,DrawCall 三者之间的关系
前几篇介绍了分别介绍了Panel,Widget,DrawCall等,但是它们之间的关系具体是怎样的没有仔细讲,下面通过一个测试来说明它们之间的关系。测试非常简单:1.新建一个UIRoot ,添加几个Panel和几个Sprite,结构如下:其中sprite1-4分别属于4个不同的图集点击UIRoot的Panel属性下的"Show Draw Calls"会发现此时panel的Dra...转载 2018-11-29 17:59:59 · 269 阅读 · 0 评论 -
NGUI源码分析(一) 核心类UIDrawCall
前阵子一直想研究一下NGUI的源码,打开一看代码很多代码很庞大不知道从何入手,然后我看代码的方法搞错了,总想一下子就把类之间的关系理清楚,看到局部的代码没看懂又老是不自觉的沉陷其中,结果是这里看懂一点,那里又没看懂,搞的我一知半解又一头雾水,结果我放弃了。后来无意中有个网友告诉我,研究代码一开始不能思路铺的太开,一开始应该从最核心的部分看起,然后一层一层的向外围展开,一次只看一个类或一个方法,别想...转载 2018-11-29 17:55:38 · 439 阅读 · 0 评论 -
NGUI 动态向grid里添加项没有裁剪问题的解决方案
补充一点这里说的动态生成的控件是指UIlabel,uitexture之类的UI控件,如果往grid里动态添加预设体是没有问题的即使预设体里会有这些UI控件也是没问题的 出现这个问题的原因很简单,不是没有裁剪而是grid里动态添加的项的panel找错了,所以不受grid的panel的控制,具体代码如下public void CreatePanel (bool addToPanel =...原创 2018-12-20 11:39:33 · 271 阅读 · 0 评论