EZGUI基本操作简单介绍

来源:互联网 发布:国税初任培训知乎 编辑:程序博客网 时间:2024/05/21 11:38

官方的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 barVoid 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

0 0
原创粉丝点击