ngui专题

unity开发 --------- NGUI (UITable)

unity开发 --------- NGUI UITable与UIGrid相似,都是实现自动排序的。但UIGrid的元素大小是由我们来指定的,而Table中的元素的大小是根据元素本身计算出来的。 UITable还保存了元素的顺序List<Transform>。每次重排序,都会更新此List。除了要计算元素的Bound和保存List外,其他基本与UIGrid一致。 unity开发 ---

unity开发 --------- NGUI (UIGrid)

unity开发 --------- NGUI  UIGrid可以实现多个gameobject自动排序。可以设定其排序方向、每个元素的宽度,高度等。 public Arrangement arrangement = Arrangement.Horizontal;public int maxPerLine = 0;public float cellWi

unity开发 --------- NGUI(Localization、UILocalize)

unity开发 --------- NGUI NGUI支持动态加载资源功能。比如语言选择:假如当前语言为中文,当将语言更改为英文时,所有UI上的文字也立即变成了英文。此功能是用Localization和UILocalize两个脚本配合完成的。 Localization中记录多种配置方案,当更改配置方案时,由Localization发送通知,通知各UILocalize更新。 NGU

unity开发 --------- NGUI (UIViewPort、UIDraggableCamera)

unity开发 --------- NGUI 前面提到一种实现ScrollView的方法:unity开发 --------- NGUI (UIDragPanelContents、UIDraggablePanel、UICenterOnChild、UIScollBar、SpringPanel) 但上面那种发放有一个缺陷!它要用到shader。也就是说,对于低端设备,就不能以上面那种方式实现拖

unity开发 --------- NGUI (UIDragPanelContents、UIDraggablePanel、UICenterOnChild、UIScollBar、SpringPanel)

unity开发 --------- NGUI 1、实现scroll view功能需要UIDragPanelContents和UIDraggablePanel脚本。 首先,要使用拖拽功能,就要添加UIDraggablePanel脚本,此脚本附加在一个panel上。然后就可以在此panel上放置其它控件了。 若只是简单的将objects放置panel上,objects会挡住pane

unity开发 --------- NGUI

1、unity开发 --------- NGUI (UIRoot, UIAnchor, UIStrech) 2、unity开发 --------- NGUI (UISprite) 3、unity开发 --------- NGUI (UICamera, UIButtonKeys) 4、unity开发 --------- NGUI (UIButtonColor、Twee

unity开发 --------- NGUI (UIDragObject、LagPosition、WindowAutoYaw、WindowDragTilt)

unity开发 --------- NGUI 1、要想实现某个widget的拖拽,只需要添加一个UIDragObject脚本组件。 public Transform target;public Vector3 scale = Vector3.one;public float scrollWheelFactor = 0f;public bool restrictWithinPanel

unity开发 --------- NGUI (UIButtonColor、TweenColor、Light)

unity开发 --------- NGUI UIButtonColor、TweenColor两个组件可以控制gameobject变色。其中UIButtonColor一般附加在Button上,它是变色事件的发送端。而TweenColor附加在target上,它是变色事件的具体执行单位。 UIButtonColor的属性很简单: public GameObject tweenTa

unity开发 --------- NGUI (UICamera, UIButtonKeys)

unity开发 --------- NGUI UICamera允许用键盘来控制UI。但若要实现键盘控制,还要配合UIButtonKey脚本。 public string scrollAxisName = "Mouse ScrollWheel";public string verticalAxisName = "Vertical";public string horizont

unity开发 --------- NGUI (UISprite)

unity开发 --------- NGUI ngui支持四种sprite public enum Type{Simple,Sliced,Tiled,Filled,}一般的sprite、9宫格切片sprite、填充sprite、平铺sprite 9宫格切片sprite可随意拉伸的,视觉上不会造成模糊效果。 tiled平铺sprite是用多个小图来拼接成一个

Unity中,利用shader将NGUI图集大小缩小四倍

如何将ARGB图像(带alpha)分成两张RGB图像(不带alpha,第二张为灰度图),我将导出的alpha图的TextureFormat .RGB24改为 TextureFormat .Alpha8,一个通道的Alpha8竟然比3个通道的RGB大,变大两倍。 using System.Collections.Generic;using System.Linq;usin

NGUI poplist使用

在NGUI中制作下来菜单,需要添加UIPopupList脚本,使用过程 1、创建一个sprite,右击Attach一个boxClider,然后右击添加PopupLis 2、在Inspector面板中的PopupLis中,找到options项,添加列表内容,每一行内容,对应列表的每一项 3、此时运行程序,点击sprite就可以显示下拉列表,但是如何显示自己选取的内容呢 4、创建一个label

关于Ngui ScrollBar\Slider等滑动条速度调整的思考

一、问题引出 使用Ngui ScrollBar和Laber、Textlist实现一个向上滚动的字幕(或者聊天信息窗口)时,无法设置字幕滚动的速度。 如上图可知,Ngui ScrollBar公开的参数有value,size,alpha,steps和appearance。并没有设置速度的speed的参数。 二、查找解决方法 Ngui官网讨论区给出的解释:Scroll bar's movem

Unity3D NGUI 自适应屏幕

Unity3D NGUI 自适应屏幕 NGUI确实是非常棒的一个做界面的插件,比起U3D自带的GUI要好很多,当然也有一些不好之处,毕竟什么都不可能那么完美。   最近在用Unity写游戏使用NGUI遇到了一个很多人都在遇到的问题,就是关于屏幕自适应,谷哥度娘里面写关于适应屏幕的帖子很多,但是大多都是 一样抄来抄去,都是说是Panel里面加个UIStretch里面加个 i

NGUI AnchorPoint与Camera CullingMask的结合之痛

问题 NGUI内建的Anchor系统可以方便的定位UI(底层的一个支持结构是AnchorPoint),例如一些需要全屏显示的游戏界面一般都需要借助这项功能;另外的,对于稍复杂的UI设计,我们可能会将UI进行分层处理,一些游戏状态下我们可能也会主动显示或者隐藏其中的某些层级.而要实现这种UI的分层显示,一种自然的方式便是采用Camera的CullingMask. 两个系统单独来看好像都没有什么问

NGUI之UIScrollView

NGUI之UIScrollView UIScrollView 一般用于创建滚动页签,ScrollView要和UIPanel和UIDragScrollView组件配合。其中需要用到UIPanel的裁切功能的配合,而UIDragScrollView负责监听点击(Press)和拖曳事件,然后交由UIScrollView处理。在源代码中,UIScrollView会向上寻找第一个承载UISc

NGUI之UITable

NGUI之UITable 使用方法 使用方法 你可以简单地在一个空物体上添加 UITable 脚本来实现这个功能。然后它会对该物体下的所有子物体进行排序,在代码里面实际维护了一个孩子Transform的列表:List<Tranform> children。UITable的部分重要参数如下: columns:定义每一行有多少列。当 columns <= 0时,所有的子物体都在

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

看了很多关于NGUI drawCall的文章,见得比较多的一个观点是:一个 Atlas 对应一个Drawcall。 但其实NGUI内部有自己的一套对DrawCall的处理规则。相关的规则有: 1.Atlas图集数量有关 2.Atlas图集的调用顺序(绘制顺序)有关 3.和UIPanel的数量有关 一、减少NGUI 3的DrawCall数量 升级到NGUI3, Dr

【Unity3D游戏开发】NGUI之不相对于Anchor的位移动画TweenPosition (上) (二)

下面学些下NGUI的TweenPosition位移动画,一般的位移动画需求分为不相对于Anchor锚点的位移动画和相对于Anchor的位移动画(主要看是否考虑屏幕分辨率),下面介绍两种游戏中最常用的不相对于Anchor的TweenPosition用法: 用法1.NGUI的控件从PosA位置移动到PosB位置,播放动画 用法2.在游戏中需要动态创建带有TweenPosition组件动画的对象,对

【Unity3D游戏开发】NGUI之渐变加载到100%的Loading场景进度条 (一)

NGUI 现有的进度条存在的问题: 进度条跳跃式前进,加载到90%后卡住,突然进入下一个场景。接下来就是解决这个问题。 背景           通常游戏的主场景包含的资源较多,这会导致加载场景的时间较长。为了避免这个问题,可以首先加载Loading场景,然后再通过Loading场景来加载主场景。因为Loading场景包含的资源较少,所以加载速度快。在加载主场景的时候一般会在Loading界

【Unity3D游戏开发】基于NGUI的表情图文混排解决方案 (二二)

使用 unity3d也有两年时间了,最近比较闲,有功夫梳理一下去年一年来学到以及用到的知识,分享给大家,顺便方便自己查阅。如有错误以及不当的地方,欢迎各位指正。谢谢。 去年五月份的时候,刚加入项目不久,老大交给我一个关于聊天系统任务,期初觉得应该很容易,但是看了文档之后,瞬间头都大了_(:з」∠)_,因为需要支持表情!当时Unity3D版本4.3.x,NGUI版本3.5x,当时版本的NGUI

【Unity3D游戏开发】NGUI制作字体的三种方法 (二一)

NGUI制作字体的三种方法 主要参考两篇博文:  (1)、NGUI制作字体的三种方法  (2)、使用位图字体工具BMFont从图片生成自定义字体 1.BMFont下载地址 http://www.angelcode.com/products/bmfont/ 2.BMFont使用方法 http://momowing.diandian.com/post/2013-01-24

NGUI事件分发过程

NGUI的事件分发过程 2.1UGUI的事件系统 void OnHover(bool isOver):当鼠标移出和悬停在某几碰撞器上的时候返回布尔值void OnPress(bool isDown):当鼠标或者触摸到某个碰撞器的发生布尔值返回void OnSelect(bool selected):当鼠标或者触摸从OnPress发生后的释放将返回这个布尔值void OnClick()和OnSe

L#中使用NGUI

纠结了几天的一个问题,如果在L#中直接使用NGUI的类。 引用加入Assembly-CSharp.dll和Assembly-CSharp-Editor.dll即可。 看来unity中的类是直接编译到上面两个DLL中的,因此可以引用后直接调用。

NGUI TweenScale组件 卡延时导致图片刷新问题

本文地址:http://blog.csdn.net/t163361/article/details/50426063 前几天遇到一个图片不刷新的问题,不必现。后来发现通过在显示界面的时候下断点然后再运行,就会重现现象。 具体观察不显示的UI物体发现打开线框模式后,没有对应的模型点渲染。定位为对应物体的渲染模型没有生成 后来发现出问题的组件根节点上有个TweenScale组件做缩放。 每次显

NGUI 无法刷新 shader参数的问题

本文地址:http://blog.csdn.net/t163361/article/details/47711803 前段时间用NGUI做一个图片随时间模糊的效果,shader有了,但是用来控制模糊的参数却无法进行更新。 期间尝试了在Update,LateUpdate,切换shader,切换材质等方法都无法完美实现。 最近做sprite遮罩的时候又遇到这个问题。依然不知道为何。虽然可以用pa