unity3d 学习之EZGUI简易教程
来源:互联网 发布:如何投诉广电网络 编辑:程序博客网 时间:2024/05/29 06:50
官方的GUI根本无法跟EZGUI比,无论是资源还是易用性还是速度。EZGUI基于Mesh不占DrawCall。EZGUI是自动合并Mesh成为一个物体,并且贴图自动制作Atlas。所以效率高,CPU消耗低
该文章来自【狗刨学习网】:http://www.gopedu.com/
相比原生态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(newRect(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
- unity3d 学习之EZGUI简易教程
- unity3d EZGUI简易教程
- Unity3D之EZGUI自学笔记
- Unity3D插件EZGUI之创建Button
- unity基础开发--学习EZGUI教程
- [Unity3D]EZGUI 操作简单介绍
- Unity3D Editor 编辑器简易教程
- Unity3D Editor 编辑器简易教程
- Unity3D Editor 编辑器简易教程
- EZGUI
- 【Editor】 Unity3D Editor 编辑器简易教程
- Unity3d UGUI 滚动视图ScrollView的使用教程之简易双肩包
- Unity3D学习系列教程
- Unity3D学习系列教程
- Unity3D教程:学习Socket
- Unity3D学习系列教程!!!
- Shader学习笔录--Unity3D教程宝典之Shader篇 基本知识
- Unity3D之AR女友简易快速制作方法
- 枕叶癫痫治疗 01iycpu0
- Unity3D Shader官方教程翻译Unity3D 的渲染管道
- cocos2d-x 2.x版本文字描边研究01_使用shader描边
- 啊哈C——学习2.7练习
- [3D理论] Unity3D技术之为 Android 构建插件
- unity3d 学习之EZGUI简易教程
- 做一个操作系统——2实模式切换到保护模式
- Easyui接收后台json数据处理的小结(二)
- 邗江区汊河街道 01j2pcky
- 安装Django
- [图文教程] 【原创内容】unity2d-第一课:2D开发工具介绍
- Unity3d 制作彩色字
- java后台服务程序设计
- http://www.zznews.cn/wenyi/lndx/ 01je0d0t