纳金网

标题: EZGUI基本操作简单介绍 [打印本页]

作者: 奔跑的小兔    时间: 2012-7-21 14:37
标题: EZGUI基本操作简单介绍
官方的GUI根本无法跟EZGUI比,无论是资源还是易用性还是速度。EZGUI基于Mesh不占DrawCall。EZGUI是自动合并Mesh成为一个物体,并且贴图自动制作Atlas。所以效率高,CPU消耗低
相比原生态GUI节省资源这就不细说了,自己可以做个对照看一下,下面就简单说一下怎么创建GUI控件以及触发事件。
一 .首先导入EZGUI unitypackage资源包

Plugins/EZ/GUI

Inside the GUI folder, are the Controls and Management folders. Controls is where you will find most of the scripts you will use to create controls. And Management contains the UIManager class which must exist in any scene that contains EZ GUI controls.
其中在 controls文件夹中包含大部分用于创建控件的脚本,而在Management文件夹中UIManager脚本则必须存在于每一个包含EZGUI控件的场景中。
二 创建一个按钮控件
1. 首先要单独建一个empty GameObject来存放UIManager.cs
2. 再创建一个empty GameObject改名为Button,然后点击 Component > EZ GUI > Controls > Button.
3.可以看到上图有四种状态,分别给予每种状态不同的图片(正常,鼠标放上,鼠标点击,离开)。





4.在属性Inspector面板中选择一种材质球,然后点击






回到button属性面板找到Pixel Perfect打上勾,(如果按钮没显示则需要手动更改宽高的大小,默认是0,更改的前提 是Pixel Perfect不能打钩,否则无法修改参数)这样一个button就做出来了。
5.现在按钮外观已经出来了,接下来需要点击产生事件,这里一个快速简单的方法,
在 这里我想打印一串数字如print(“123456”),首先跟平常创建脚本一样 创建一个JS脚本UIControl.js在里边这样写入 function Click(){print(“123456”)}保存,新建一个empty gameObject改为UI,把刚才建的脚本给这个空 对象,回到Button属性面板找到上边是脚本所在的对象物体,点开找到UI,下边是引用的函数名,上边的脚本中我写的是Click,所以在这里我写上Click,保存
运行看一下效果

界面菜单panel的显示

一、前提除了UIManager脚本外 再创建一个UIPanelManager脚本UIPanel的物体
然后再在UIPanelManager父物体山建立子物体 并给予UIPanel脚本
在此子物体上 再建立多个子物体 附上脚本Change panel Button
然后就可以设置起始 跟结束位置了

然后就写一个更新脚本的函数 例如:
var mainMenu:UIPanelManager;

function Start(){

  Invoke("Begin",1);
}

function Begin(){

  mainMenu.BringIn("main");
}如果是碰到从1界面跳转到2界面 然后再从2界面跳转到1界面时 2还存在没有立即消失 则需要去掉“-” dismiss




二、 UIProgress Bar 设置
1 创建空对象 拖上脚本 UIProgressBar 里边设置跟Button设置 类似
2 建立 脚本
Public UIProgressBar bar

Void Updata(){

bar.Value+=0.2f.Time.deltaTime;

}

Void OnGui(){

GUI.Label(new Rect(0,0,100,100),"进度条:"+(int)(bar.Value*100)+"%");

}三、 在一个区域中滑动GUI

1.创建空对象 脚本为UIScrollList

2.新建一个空的对象 脚本为UIListItem 做法跟Button类似在这还可以设置 按钮上的字体,把这个物体拖给UIScrollList属性的夜可以是多个 这样简单的滑动GUI条就出来了。
注意事项:如果是做类似官方那个 GUI 滑动条 (前边透明框 后便底色 中间list滑动条) 一般都是检测射线的 如果在中间检测不到互动 原因就 是 前边的框 有box collider 挡住了射线检测,所以得把前边的box collider去掉 方法:自己在前边的矿上添加一个 box collider 然后把它的大小改为0 就OK


作者: 艾西格亚    时间: 2013-5-13 14:04
推荐一下这个介绍给大家看看
作者: may    时间: 2013-5-13 14:27
有没这个GUI的试用或是?
作者: 王者再临    时间: 2013-5-13 18:25
这个东东能比NGUI强大吗?好像是价格也不便宜的啊,在商店里面
作者: 齐天大圣    时间: 2013-5-16 21:16
NGUI 和 EZGUI 都不错··
作者: 烟雨    时间: 2013-5-17 00:06
论坛里面貌似没有这个试用啊?
作者: fuland539    时间: 2013-5-18 23:08
不是都用NGUI了吗




欢迎光临 纳金网 (http://c-www.narkii.com/club/) Powered by Discuz! X2.5