unity3d之NGUI学习流水账
博主是跟着视频教程学的,所以最新版的u3d是否已经自带这个功能博主没有考究过。
但是视频是2015下半年的教程,当时的u3d还是需要自行导入NGUI包的。
1.首先需要下载NGUI包。点此进入ngui3.9.0下载页
2.下载后将该文件导入Assets,可以直接拖入,也可以在Assets 中右键,Import Package》Custom Package,如下图所示:
ps:可能会提示API Update Required,我选择了No Thanks。

3.将控件栏中默认的Main Camera和Directional Light删除。(在菜单栏中可以找到NGUI菜单项,通过里面的create自行创建内容。)
4.依次点击菜单NGUI》Open》Prefab Toolbar,会出现一个窗口如下图所示,里面提供了很多控件,然后点住窗口名拖到Hierarchy旁边。

5.向Assets文件夹中创建一个Texture文件夹,向其中拖入如下几张图片:
earth:

playButton001:

playButton002:

6.依次点击NGUI》Open》Atlas Maker(图集制作者),然后选择playButton001和playButton002,将其添加入Atlas Maker。然后点击create。如下图:

7.将其命名为Button,存储至Assets下的prefabs文件夹内(如果不存在自行创建),创建完会发现生成了的一个图集,图集长宽尺寸均为2^n,因为这可以达到最大的压缩比例,可以占用最少的空间。
8.NGUI》Create》Sprite。将创建的sprite改名为“play”。(sprite中文名为精灵,其实就是一个game object而已)
此时“play”的预览图如下:

9.在“play”的属性栏中,找到“Add Component》NGUI》Interaction(交互)》Button”,此时运行后“play”精灵不可用呈现灰色。为了让“play”可用,需要添加一个碰撞体。
10.在“play”的属性栏中,找到“Add Component》Physics》Box Collider”,此时再次运行就能查看到效果:鼠标移上去后play会变大。
ps:啥?没效果?那就把Box Collider的Size尺寸变大点就行了!
11.给“play”按钮添加点击事件,即创建一个脚本后拖动到“play”上,运行即可看到运行结果。记住,点击事件,NGUI中规定必须是OnClick,代码如下:
public void OnClick(){
Debug.Log ();
}
12.如果点击后想要调用自定义函数名,或者调用别的对象的方法,可以这么做:
先创建一个新的脚本,将其拖动到“play”上,脚本内容如下:
public void showLog(){
Debug.Log ();
}
然后在“play”的属性表中,有一个OnClick属性栏,将“play”拖进去,然后选择showLog()方法即可。如下图:

运行结果如下图:

unity3d之NGUI学习流水账的更多相关文章
- NGUI 学习笔记实战——制作商城UI界面
http://www.cnblogs.com/chongxin/p/3876575.html Unity3D的uGUI听说最近4.6即将推出,但是目前NGUI等UI插件大行其道并且已经非常成熟,所以我 ...
- Unity3D 装备系统学习Inventory Pro 2.1.2 基础篇
前言 前一篇 Unity3D 装备系统学习Inventory Pro 2.1.2 总结 基本泛泛的对于Inventory Pro 这个插件进行了讲解,主要是想提炼下通用装备系统结构和类体系.前两天又读 ...
- NGUI学习笔记汇总
NGUI学习笔记汇总,适用于NGUI2.x,NGUI3.x 一.NGUI的直接用法 1. Attach a Collider:表示为NGUI的某些物体添加碰撞器,如果界面是用NGUI做的,只能这样添加 ...
- NGUI 学习笔记实战之二——商城数据绑定(Ndata)
上次笔记实现了游戏商城的UI界面,没有实现动态数据绑定,所以是远远不够的.今天采用NData来做一个商城. 如果你之前没看过,可以参考上一篇博客 NGUI 学习笔记实战——制作商城UI界面 ht ...
- 从一点儿不会开始——Unity3D游戏开发学习(一)
一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...
- Unity插件之NGUI学习(8)—— Table和NGUI尺寸转换为世界坐标系尺寸
依据 Unity插件之NGUI学习(2),创建一个UI Root,在UI Root下创建一个Texture作为背景图,并设置图片,在Wiget下调整大小:然后在UI Root下再创建一个Panel. ...
- Unity3D for VR 学习(9): Unity Shader 光照模型 (illumination model)
关于光照模型 所谓模型,一般是由学术算法发起, 经过大量实际数据验证而成的可靠公式 现在还记得2009年做TD-SCDMA移动通信算法的时候,曾经看过自由空间传播模型(Free space propa ...
- Unity3D for VR 学习(8): Unity Shader概述
从西安到北京高铁上,一位VR老外团队的华人leader对VR技术做了画龙点睛: “3D游戏的核心部分在Render, 国内很多团队美术.程序中间缺失严重.所以3d游戏做不好. VR这块更是至关重要.” ...
- Unity3D for VR 学习(7): 360°全景照片
在VR应用中,有一个相对简单的虚拟现实体验,那就是360°全景照片浏览器, 他可以使得手机拍照的”全景”照片, 得以”恢复”当时拍照的场景全貌, 这个创意的确比单纯的2d图片更有震撼力一些,故本文 ...
随机推荐
- 【最短路】【dijkstra】【二进制拆分】hdu6166 Senior Pan
题意:给你一张带权有向图,问你某个点集中,两两结点之间的最短路的最小值是多少. 其实就是dijkstra,只不过往堆里塞边的时候,要注意塞进去它是从集合中的哪个起始点过来的,然后在更新某个点的答案的时 ...
- bzoj 3540: [Usaco2014 Open]Fair Photography
3540: [Usaco2014 Open]Fair Photography Description FJ's N cows (2 <= N <= 100,000) are standin ...
- 【bugku】【ZSCTF】【迷宫RE】Take The Maze WriteUp
Take The Maze 首先拿进PEID里查一下有没有壳: 无壳,果断拖进IDA.可是Graph View中找不到主程序的位置,在函数表里寻找主函数: 函数太多阻扰了我们找到主程序,运行一下程序找 ...
- oracle 察看用户是否被锁,解锁以及改密码
以管理员身份登陆 察看用户状态(是否被锁) select * from dba_users where username='user1' 解锁 ALTER USER user1 ACCOUNT UN ...
- UITabBarControlller 和 UINavigationController
- void fun() const{}; const void fun(){}; 和void const fun(){}; 的区别?
void fun() const{}; const void fun(){}; 和void const fun(){}; 的区别? const void fun(){};和void const fun ...
- 二.Consumer、Producer简单例子
1.先导入jar包,我使用的是maven <dependency> <groupId>com.alibaba.rocketmq</groupId> <arti ...
- iOS:CALayer锚点的使用
CALayer层的位置主要和position和anchorPoint有关.其中它们在一起才能决定层在视图中的具体位置. @property CGPoint position; //位置 ...
- Git系列四之在本地服务器搭建gitlab仓库管理
1.Git仓库管理 现在本地已经创建了git仓库,又在gitlab上创建了一个git仓库,并且让这两个仓库进行远程同步,这样gitlab仓库既可以备份也可以与他人协作管理远程仓库以及根据需要推送或拉取 ...
- 流畅的python第五章一等函数学习记录
在python中,函数是一等对象,一等对象是满足以下条件的程序实体 1在运行时创建 2能复制给变量或数据结构的元素 3能作为参数传给函数 4能作为函数的返回结果 高阶函数(接受函数作为参数或者把函数作 ...