NGUI插件的一个扩展---NGUI_HUD_Text
NGUI_HUD_Text扩展主要用于主角跟随和伤害/治疗的功能。
场景大概是这样的,我们希望有一个主角,在其头顶显示他的名字,在单击鼠标左键的时候显示红色的“-10”表示减少血量,单击鼠标右键的时候显示绿色的“+10”表示增加血量。
首先打开unity编辑器,导入NGUI插件和NGUI_HUD_Text两个插件包。NGUI_HUD_Text扩展我们只用里面的两个脚本:HUDText和UIFollowTarget。所以导入的实例和一个270的package可以删掉,节省空间。
1.在场景中拖入一个UIRoot控件,在其上右键-->Create --> Label。我们把控件的Text属性改成主角的名字“rxm”。在场景中增加一个胶囊体表示主角。
2.给Lable添加脚本UIFollowTarget,然后给UIFollowTarget脚本下的属性赋值:“Target属性:胶囊体;Game Camera:Main Camera;UI Camera:UIRoot下的Camera。
3.在UIRoot下增加一个空的GameObject,名字改成HUD。为此空对象添加脚本HUDChange。代码如下:
using UnityEngine;
using System.Collections; public class HUDChange : MonoBehaviour { private HUDText text; // Use this for initialization
void Start () {
text = this.GetComponent<HUDText> ();
} // Update is called once per frame
void Update () {
if (Input.GetMouseButtonDown ()) {
text.Add(-,Color.red,1f);
}
if (Input.GetMouseButtonDown ()) {
text.Add(,Color.green,1f);
}
}
}
4.参照第二步给HUD添加脚本“UIFollowTarget”,并赋值。
5.运行后通过移动主角可以发现名字随着主角在动,当单击鼠标时也可以看到相应效果,如下:
PS:今天在NGUI中添加Label后,发现无论在Scene,还是Game视图下都有一个边框,效果如下图。卡了我20分钟,郁闷了会儿,后来解决了。把"Gizmos"关掉就可以了。
NGUI插件的一个扩展---NGUI_HUD_Text的更多相关文章
- 通过Vim+少量插件配置一个高效简洁的IDE
最近本人在看<TCP/IP Illustrated Volume2:The Implementation>这本书,自然要下载4.4BSD-Lite的源代码配合书本一起研读.以前学习Vim的 ...
- NGUI使用教程(1) 安装NGUI插件
前言 鉴于当前游戏开发的大势,Unity3d的发展势头超乎我的预期,作为一个Flash开发人员,也是为Flash在游戏开发尤其是手游开发中的地位感到担忧....所以 近期一段时间都在自己学习unity ...
- NGUI使用教程 安装NGUI插件
我的使用的是unity4.2,大家可以去官网下载最新版本的http://unity3d.com/unity/download作为一个开发人员安装编译器是最基本的常识,相信大家都能正确安装.安装成功号桌 ...
- 导入NGUI插件
在Unity编辑器顶部菜单栏中的Assets菜单中选择Import Package,然后选择Custom Package(自定义资源包),弹出资源路径窗口,在其中找到NGUI资源包所在的位置,单击”打 ...
- Unity的NGUI插件篇——入场效果
Unity的NGUI插件篇--入场效果 入场效果 入场效果须要借助于NGUI提供的TweenPosition类来完毕.为了说明此类的用法.本节将使会解说两个演示样例.本文选自 大学霸 <NGU ...
- 基于AOP的插件化(扩展)方案
在项目迭代开发中经常会遇到对已有功能的改造需求,尽管我们可能已经预留了扩展点,并且尝试通过接口或扩展类完成此类任务.可是,仍然有很多难以预料的场景无法通过上述方式解决.修改原有代码当然能够做到,但是这 ...
- Unity NGUI插件
前言:关于Unity中关于UI的插件,我们最开始学的是UGUI,是Unity自带的UI系统,而在Unity版本还没更新出UGUI之前,除了NGUI没有一个更好些的插件,所以人们不得不去选择NGUI去制 ...
- ext3是对ext2文件系统的一个扩展高性能日志文件系统
嵌入式开发者所做的最重要的决定之一就是部署哪种文件系统.有些文件系统性能比较高有些文件系统空间利用率比较高,还有一些文件系统设备故障或者意外断电后恢复数据比较方便. linux文件系统概念 分区 分区 ...
- 基于JQuery.timer插件实现一个计时器
基于JQuery.timer插件实现一个计时器,需要的朋友可以参考下. 先去官网下载jQuery Timers插件 ,然后引用到html中.这里是1.2 version 复制代码代码如下: < ...
随机推荐
- wefwewewe
<a hred="https://www.baidu.com">dssf</a>
- 从安装.net Core 到helloWord(Mac上)
最近听说微软 正式发不了.netCore 1.0 于是就安装了 并安装了vs Code 用于编写一些.net程序 一. .netCore的安装: 首先需要通过brew安装openssl(相信homeB ...
- Thrift框架简介
功能:实现各个服务模块之间的跨语言.跨平台的通信,是RPC框架的一种,与dubbo类似. Thrift的应用原理: Thrift的部分功能相当于代码生成引擎,使用Thrift定义的语言编写*.Thri ...
- python操作---RabbitMQ
RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议. MQ全称为Message Queue, 消息队列(MQ)是一种应用程序 ...
- 最直接的教你OC中Block的简单使用场景
场景一: A控制器跳转到B控制器 -- B控制器事件处理通过Block回调给A控制器 A 跳转前界面如下 点击ToB按钮到控制器B 在控制器B中点击按钮返回到A界面如下 ...
- MQ队列堆积太长,消费不过来怎么办(转)
转自:http://windwrite.com/archives/603 我们现有的业务就面临此问题,消息生产太快,消费不过来,导致队列堆积很长,把服务器内存耗尽,这时RabbitMQ的处理能力很低下 ...
- zoj 1649 Rescue
BFS..第一次使用C++ STL的队列来写广搜. #include<stdio.h> #include<string.h> #include<math.h> #i ...
- webpack-hot-middleware 用于 livereload
https://github.com/glenjamin/webpack-hot-middleware Webpack hot reloading using only webpack-dev-mid ...
- C#读取和写入文件
一.读取文件 如果你要读取的文件内容不是很多, 可以使用 File.ReadAllText(FilePath) 或指定编码方式 File.ReadAllText(FilePath, Encoding) ...
- OpenCV2.x自学笔记——Qt5.5.1打包exe
[简易步骤] 1.Release模式下生成exe,在release文件夹内,如jujube.exe 2.exe单独拷贝到一个文件夹,如D:\jujube\jujube.exe 3.打开Qt 官方开发环 ...