摘要: 今天来学习一下,如何利用NGUI做技能冷却的CD效果。1,首先按之前的教程Create Your UI,Camera为Simple 2D最终如下图:2,添加一个按钮,Background 为一张半透明贴图,更名为“CDSprite”,设置CDSprite的Sprite Type为Filled3,添加一个Sprite,重命名为:IconSprite,该Sprite为技能图标。4,编写脚本:using UnityEngine;using System.Collections;public class CDEffect : MonoBehaviour { UISprite sprite; ... 阅读全文
posted @ 2013-10-21 11:19 martianzone 阅读(1165) 评论(0) 推荐(0) 编辑
摘要: 在一些网络游戏中,我们常常可以看到角色的上方显示着角色的名称,等级,血量等信息。它们可以跟随角色移动,并且可以显示和隐藏。今天我们就来学习一下这些功能的实现方法。1. 新建unity工 程,导入NGUI插件。对于字体按钮等的制作方法参见以前的系列教程。这里我们直接开始学习制作方法。首先新建一个2DUI,设置UI的层为NGUI。新 建完成后,使用菜单NGUI -->Create a Panel ,在现有Panel的节点下新建一个Panel,命名为Panel_CharacterInfo,作为角色信息面板的根节点。使用Widget Tool创建两个Label,一个命名为Name,另一个为Lif 阅读全文
posted @ 2013-10-18 16:34 martianzone 阅读(598) 评论(0) 推荐(0) 编辑
摘要: 今天我们来看一下怎么自定义NGUIAtlas,制作属于自己风格的UI。第一部分:自定义 Atlas1 . 首先我们要准备一些图标素材,也就是我们的UI素材,将其导入到unity工程中。2. 全选我们需要用到的UI素材。选择菜单NGUI->Open the Atlas Maker(快捷键 Alt +shift+M)。打开Atlas Maker窗口,如图我们可以看到,刚才选择的图片素材已经在下面的Sprite窗口中列出来了。3. 在Create右侧为Atlas起个名称,其余默认即可(这里第二个参数Select可以让我们在现有的Atlas基础上添加新的图片进去)。点击 Create,NGUI会 阅读全文
posted @ 2013-10-18 14:13 martianzone 阅读(767) 评论(0) 推荐(0) 编辑
摘要: 接下来我们再来看Progress Bar和Slider,对比参数我们可以发现,Progress Bar和slider的明显区别在于slider多一个Thumb选项,这里的Thumb就是我们拖动的时候点击的按钮。Empty 和Full选项其实就是前景和背景的Sprite。这里大家都已经熟悉了,我们看Slider和ProgressBar的根节点,也可以发现,Slider之比ProgeressBar 多一个BoxCollider,参数对比如图Value :当前值Steps:可以理解为将最大值等分的份数Foreground: 前景Sprite,Thumb:只有UIslider有,ProgressBar 阅读全文
posted @ 2013-10-17 20:52 martianzone 阅读(544) 评论(0) 推荐(0) 编辑
摘要: 接下来我们创建一个Label,NGUI->Open the Widget Wizard,打开widgetTool对话框,在Template中选择Label,确定AddTo右侧选项为panel,点击,Add To完成Label创建。1.Label属性窗口如图1.下面的节奏可能有点快,大家可以先熟悉一下上面讲的流程,再进行下面的学习。接下来我们依次创建Button和Input,因为这两个选项差不多,我们放一块讲,在WidgetTool窗口中,他们都需要选择一个Background,这里和选择Spirit一样。我们先看Input它主要包括三个物体,一个带有UIInput代码和BoxCollid 阅读全文
posted @ 2013-10-17 20:30 martianzone 阅读(575) 评论(0) 推荐(0) 编辑
摘要: NGUI是Unity的一个插件,使用它来制作你的游戏UI必定将事半功倍。为什么这么说呢?首先我们说说GUI与NGUI的区别,GUI是Unity自带的绘制界面工具,它的成像原理是基于表层的,所以执行效率非常的低,并且没有提供复杂的UI的接口,就算开发者硬着头皮写上去只能让UI的执行效率更低。然而NGUI 完全依赖与3D就好比在游戏世界中的摄像机直直的照射在一个平面中,在平面之上再去绘制自己的UI,所以它的执行效率会非常高。 NGUI是一款收费的插件,在Asset Store中大家可以看到价格。在未购买正版的前提下我们可以通过两种方法来使用NGUI,第一种:使用官方提供的免费版本,但是这个版本中有 阅读全文
posted @ 2013-10-17 17:40 martianzone 阅读(1264) 评论(0) 推荐(0) 编辑
摘要: 一个控制摄像头移动的脚本,直接绑定到摄像机就可以使用.功能描述如下:1.鼠标左键拖动观察2.鼠标右键定点旋转3.鼠标滚轴放大缩小4.鼠标左键快速双击进行定点放大#pragma strict/*****摄影机控制*@author felly*/private var rayRotate :Ray = Ray(Vector3.zero, Vector3(0,1,0));private var rayTranslate :Ray = Ray(Vector3.zero, Vector3(0,1,0));private var hitInfo : RaycastHit ;private var preT 阅读全文
posted @ 2013-10-17 15:28 martianzone 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 1.如果你想复制一行代码(超级长,鼠标拖老久的),只需要在这行的空白处CTRL+C 同理,剪贴一行CTRL+X 删除一行CTRL+L2.显示方法里的参数,以前每次都是手动删括号。CTRL+SHIFT+space.3.自动排版CTRL+E,D. (CTRL+A,K,F)(CTRL+K,D)(按E后,在按D,其间不要松开CTRL)(位置:在Edit-->Advanced-->FormatedDocument)4.自动注释CTRL+E,C.(位置:在Edit-->Advanced-->CommentSelection) 取消注释CTRL+E,U.5.调出代码段Tab+Tab. 阅读全文
posted @ 2013-10-17 11:41 martianzone 阅读(493) 评论(1) 推荐(0) 编辑
摘要: 使用贴图代替天空盒作为背景,参照:http://www.narkii.com/club/thread-261840-1.html看看我做的: 阅读全文
posted @ 2013-10-16 18:14 martianzone 阅读(3328) 评论(0) 推荐(1) 编辑
摘要: 用GUI实现倒计时:方法一:利用Time.time,这是以秒计算到游戏开始的时间。也就是说,从游戏开始到到现在所用的时间。代码如下:using UnityEngine;using System.Collections;public class displayTime : MonoBehaviour{ //数值 public string myStringScore; public float x = 85; public float y = 19; public float scale = 1; public Color myColor; //定义数组... 阅读全文
posted @ 2013-10-16 14:53 martianzone 阅读(15424) 评论(6) 推荐(1) 编辑