Unity 技能按钮触发特效
unity 版本:4.5.1 NGUI版本:3.6.5
首先,要导入特效资源包,导入应该是基本中的基础,但是对于初学者来说好像很少有这方面的介绍,也许是我现学现用书看的不够认真,因为导入这个问题卡了好多天,在此简要介绍一下。
1、导入资源要导入正确,一个特效资源应该包括预设文件(.prefab)、.mat纹理文件、脚本文件以及.png图片文件等。在网上下载包含很多的预设文件时,要导入需要的特效文件,只需要选中需要的.prefab文件,选择Assets——Export Package导出,它会自动选择项关联的纹理文件脚本文件等。(我自己在这个例子中到处的包中有些文件是不需要的可以删除,网上有个教程“删除多余的unity美术资源包 http://unity3d.9ria.com/?p=4160”,可以参考,试过,但是不知道是操作问题还是什么,感觉没什么效果)

2、导入资源后,用NGUI新建一个Button,具体怎么创建Button可以参考我以前的博文 “Unity基础 NGUI 创建简单的按钮”,或者网上的教程,可能更详细点,这里不再赘述;
3、为按钮创建一个脚本附加到按钮上,脚本代码如下:
using UnityEngine;
using System.Collections; public class test1 : MonoBehaviour { public GameObject skillEffect;
// Use this for initialization
void Start () {
} // Update is called once per frame
void Update () {
} void OnClick()
{
Debug.Log ("开始施放技能");
Instantiate (skillEffect);
Debug.Log ("技能施放结束");
}
}
脚本代码很简单,这里主要介绍如何把特效的prefab文件和脚本中定义的skillEffect相关联起来,之前在这也卡了很久。
一般情况下,我们在左下角的Assets文件中找到脚本文件,单击,右侧就出现脚本内容,会显示出脚本中定义的public变量skillEffect,如下图:

然后在Assets文件中找到对应的prefab预设文件直接拉到Skill Effect中与之关联,但是之前,我的结果一直是脚本中定义的变量skillEffect为空,故不推荐这种方式,下面采用其他方式设置skillEffect变量;
4、点击Hierachy中的按钮,在右侧可以看到这个按钮的相关脚本以及其他信息,在脚本那一项中我们可以看到脚本中定义的skill Effect变量,然后把prefab文件拉到skill effect中建立关联即可:

这样点击运行程序,每次点击按钮它就会出发技能特效:

参考链接:http://blog.csdn.net/lzhq1982/article/details/12999381
上诉中的(3)步骤为什么会失败,至今仍是不懂,有哪位大神了解的请留言告知或者邮件(linw1225@163.com),万分感谢。本人水平有限,博文纯粹是用于记录自己学过的内容以便复习,部分内容可能表述不当或者错误,请指出,谢谢。
分享一个特效使用例子,个人觉得非常好,包括很多技能特效,不给出链接,可以百度搜索:Dynamic Elements FX Pack 1.2
Unity 技能按钮触发特效的更多相关文章
- Unity——技能系统(二)
Unity技能系统(二) Unity技能系统(一) Demo展示: 五.技能管理和释放 1.CharacterSkillSystem 技能系统类,给外部(技能按钮,按键)提供技能释放方法: 技能释放逻 ...
- [Windows Phone]模仿魔兽3技能按钮SkillButton
简介: 模仿魔兽3技能按钮,带CD效果.使用的时候可以当做普通按钮使用,同时也支持Binding. 音效紧耦合在控件内部,因为控件本身目的就是模拟魔兽3的技能按钮,所以不考虑音效的扩展. Demo结构 ...
- 在UNITY中按钮的高亮用POINT灯实现,效果别具一番风味
在UNITY中按钮的高亮用POINT灯实现,效果别具一番风味
- CocosCreator游戏开发(五)实现技能按钮
在上一篇中,已经顺利的实现了通过摇杆控件来控制角色移动的例子 这一篇内容中,主要来实现通过摇杆来操作技能施法位置的功能 代码效果如下: 在最初的想法中,我是想将摇杆与技能施法范围以及施法位置做成一个组 ...
- Unity——技能系统(三)
Unity技能系统(三) Unity技能系统(一) Unity技能系统(二) Demo展示 六.Buff系统 buff分为增益和减益buff,应该区分开来: /// <summary> / ...
- Unity UGUI按钮添加点击事件
1. 可视化创建及事件绑定 # 1 : 通过 Hierarchy 面板创建 UI > Button. 2 : 创建一个脚本 TestClick.cs, 定义了一个 Click 的 public ...
- unity不规则按钮解决方案
一种是alpha检测 一种是设置collider 参考: https://zhuanlan.zhihu.com/p/34204396 下面给出第二种方案代码 ///按钮多边形点击方案,注意Canvas ...
- Unity动态绑定按钮触发方法
在使用unity制作UI的过程中,基本都需要接触到按钮,然后按钮要起作用的话,那么就需要为按钮绑定响应方法. 为按钮绑定触发的方法,我知道的有两种方法,第一种:手动使用unityEditor 绑定,另 ...
- Unity不规则按钮点击区域(UGUI)
文章目录 一. 前言 二. 最终效果 三. 实现 1.创建UICamera 2. UIPolygon节点 3. 编辑碰撞区域 5. 运行测试 6. UIPolygon代码 一. 前言 游戏开发中,可能 ...
随机推荐
- hadoop自带的writable类型
Hadoop 中,并没有使用Java自带的基本类型类(Integer.Float等),而是使用自己开发的类.Hadoop 自带有很多序列化类型,大致分为以下两种: 实现了WritableCompara ...
- Visual Studio 调试技巧 -- 为 Lambda 表达式设置中断
如果我说 .NET 世界上最厉害的开发平台(语言),资深的同仁肯定不会往下看了,因为这将是一个无休止的争论,到头来搞不好还是人身攻击.然而,如果我说 Visual Studio 是世界上最友好最强大的 ...
- 解决error:could not open ...jvm.cfg
出现error:could not open '...jvm.cfg'大多是以前安装jdk或者jre的时候在注册表里注册过,现在安装的文件夹不在或者换了名字,有很多解决方法,最简单的一招是删除java ...
- Java中泛型 问号的作用
这是jdk1.5泛型的典型应用: 第一种写法,叫做使用泛型方法: public <T extends Object> void thisIsT(List <T> list ...
- Java基础知识强化之集合框架笔记40:Set集合之HashSet存储自定义对象并遍历
1. HashSet存储自定义对象并遍历 2. 代码示例: (1)Student类,如下: package cn.itcast_02; /** * @author Administrator * */ ...
- 万能的everything彻底解决mysql问题
万能的everthing D:\RECYCLER\S-1-5-21-1214440339-1123561945-1801674531-500\Dd16.0\my.ini可能之前的电脑的隐藏文件没有删除 ...
- List<T>取交集、差集、并集
1. 取交集 (A和B都有) List A : { 1 , 2 , 3 , 5 , 9 }List B : { 4 , 3 , 9 }var intersectedList = list1.Inte ...
- 内容替换Filter
有时候需要对网站进行控制,防止输出非法内容或者敏感信息.这时我们可以使用filter来进行内容替换,其工作原理为,在Servlet将内容输出到response时,response将内容缓存起来,在Fi ...
- VS 编程常见错误及解决方法
1. VS2013 无法打开包括文件:“cv.h"等一些头文件 解决方法: cv.h是build\include文件夹下的头文件,所在文件夹位置是D:\Program Files (x86) ...
- POJ刷题记录 (。・`ω´・)(Progress:6/50)
1743:前后作差可以转化成不可重叠最长公共字串问题,运用后缀数组解决(参考罗穗骞神犇的论文) #include <cstdio> #include <cstring> #in ...