Unity的NGUI插件篇——入场效果

入场效果

入场效果须要借助于NGUI提供的TweenPosition类来完毕。为了说明此类的用法。本节将使会解说两个演示样例。本文选自  大学霸 《NGUI使用手冊》  一书

匀速入场

将游戏主菜单看作一个总体,本小节会令其自上而下匀速入场。详细的实现步骤例如以下:

(1)在Project视图里,新建一个C#脚本。命名为AppearFromAbove。为其加入以下的代码:

  • 01     using UnityEngine;
  • 02     using System.Collections;
  • 03
  • 04     public class AppearFromAbove : MonoBehaviour
  • 05     {
  • 06              // Use this for initialization
  • 07              void Start ()
  • 08              {
  • 09                       this.transform.localPosition = new Vector3(0,1080,0);
  • 10                       TweenPosition.Begin (this.gameObject,2,Vector3.zero);
  • 11              }
  • 12     }

q  脚本09行。改动了游戏主菜单的初始位置,使其位于游戏视图之外的正上方;

脚本10行,TweenPosition.Begin()方法会将游戏主菜单,移动到坐标点为(0,0,0)的位置上,耗时2秒;本文选自  大学霸 《NGUI使用手冊》  一书

(2)将此脚本赋予Container对象,然后执行游戏。效果如图4-所看到的。起初游戏视图上什么也没有,可是在2秒的时间内,游戏主菜单会匀速自上而下移动的游戏视图的中间。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

图4-  游戏主菜单匀速入场效果展示

提示:只使用了两行代码。此种效果就完毕了。当然,上面说的是使用自己定义脚本的方法,事实上要实现同样的效果,读者还能够使用NGUI提供的组件。此方法也相较自己定义脚本更简单些。详细的做法是,为Container对象加入Tween Position(Script)组件,方法是单击Component|NGUI|Tween|Tween Position命令,然后设置此组件的下列属性就可以。如图4-所看到的。

q  From:(0,1080,0);

q  To:(0,0,0);

q  Duration:2。

q  Transform组件P:(0,1080,0);

图4-  Tween Position(Script)组件属性设置

平滑入场

游戏一開始。游戏主菜单就由上而下入场,显得有些突兀。最好令其延迟1秒再入场,并且如此以后何不加入些其他效果,比如弹跳!本小节就来说明此种效果的实现方法。本文选自  大学霸 《NGUI使用手冊》  一书

(1)改动脚本AppearFromAbove中的代码,改动后的代码例如以下:

  • 01     using UnityEngine;
  • 02     using System.Collections;
  • 03
  • 04     public class AppearFromAbove : MonoBehaviour
  • 05     {
  • 06              // Use this for initialization
  • 07              void Start ()
  • 08              {
  • 09                       this.transform.localPosition = new Vector3(0,1080,0);
  • 10                       TweenPosition tween = TweenPosition.Begin (this.gameObject,2,Vector3.zero);
  • 11                       tween.delay = 1f;
  • 12                       tween.method = UITweener.Method.BounceIn;
  • 13              }
  • 14     }

q  脚本09、10行的代码,上一小节已经介绍过了。

q  脚本11行。加入了延迟,即游戏主菜单1秒后開始入场;

q  脚本12行,加入了入场后的效果,这里使用的是弹跳效果。

(2)执行游戏。就可以看到游戏主菜单的平滑入场效果。

要说与上一小节的差别。主要表如今双方面。一是延迟了入场时间,二是加入了入场后的动画效果。本文选自  大学霸 《NGUI使用手冊》  一书

提示:NGUI提供的动画效果不仅仅是弹跳而已,要想知道还有哪些效果,能够灵活使用脚本编辑器的“代码自己主动补全”功能。比如在MonoDevelop中,书写到脚本12行时。自己主动补全效果如图4-所看到的,能够看出。NGUI一共提供了6种效果。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

图4-  活用“代码自己主动补全”功能。发掘其他的动画效果

本文选自  大学霸 《NGUI使用手冊》  一书

Unity的NGUI插件篇——入场效果的更多相关文章

  1. NGUI插件的一个扩展---NGUI_HUD_Text

    NGUI_HUD_Text扩展主要用于主角跟随和伤害/治疗的功能. 场景大概是这样的,我们希望有一个主角,在其头顶显示他的名字,在单击鼠标左键的时候显示红色的“-10”表示减少血量,单击鼠标右键的时候 ...

  2. 关于Unity中NGUI的3D角色血条的实现

    首先要到Unity的Assets Store里面去下载一个扩展的Package叫NGUI HUD Text v1.13(81),注意如果没有安装NGUI就必须先安装NGUI插件,否则会用不了,因为HU ...

  3. webpack进阶之插件篇

    一.插件篇 1. 自动补全css3前缀 autoprefixer 官方是这样说的:Parse CSS and add vendor prefixes to CSS rules using values ...

  4. 使用Unity创造动态的2D水体效果

    者:Alex Rose 在本篇教程中,我们将使用简单的物理机制模拟一个动态的2D水体.我们将使用一个线性渲染器.网格渲染器,触发器以及粒子的混合体来创造这一水体效果,最终得到可运用于你下款游戏的水纹和 ...

  5. 导入NGUI插件

    在Unity编辑器顶部菜单栏中的Assets菜单中选择Import Package,然后选择Custom Package(自定义资源包),弹出资源路径窗口,在其中找到NGUI资源包所在的位置,单击”打 ...

  6. [Unity]Unity开发NGUI代码实现ScrollView(放大视图)

    Unity开发NGUI代码实现ScrollView(放大视图) 下载NGUI包 导入NGUI3.9.1版本package 创建MainCameraScript.cs脚本 MainCameraScrip ...

  7. [Unity]Unity开发NGUI代码实现ScrollView(滚动视图)

    Unity开发NGUI代码实现ScrollView(滚动视图) 下载NGUI包 导入NGUI3.9.1版本package 链接: http://pan.baidu.com/s/1mgksPBU 密码: ...

  8. 记录一个Unity播放器插件的开发

    背景 公司最近在做VR直播平台,VR开发我们用到了Unity,而在Unity中播放视频就需要一款视频插件,我们调研了几个视频插件,记录两个,如下: Unity视频插件调研 网上搜了搜,最流行的有以下两 ...

  9. jQuery Wheel 环形菜单插件5种效果演示

    很酷的菜单-jQuery Wheel 环形菜单插件5种效果演示在线预览 下载地址 实例代码 <div class="container"> <!-- Top Na ...

随机推荐

  1. Struts学习之自定义拦截器

    * 所有的拦截器都需要实现Interceptor接口或者继承Interceptor接口的扩展实现类    * 要重写init().intercept().destroy()方法        * in ...

  2. 搭建Hadoop集群 (三)

    通过 搭建Hadoop集群 (二), 我们已经可以顺利运行自带的wordcount程序. 下面学习如何创建自己的Java应用, 放到Hadoop集群上运行, 并且可以通过debug来调试. 有多少种D ...

  3. python读取word表格内容(1)

    1.首页介绍下word表格内容,实例如下: 每两个表格后面是一个合并的单元格

  4. springmvc定时器

    用到的jar包: aopalliance-1.0.jar commons-logging-1.1.3.jar spring-aop-3.2.4.RELEASE.jar spring-beans-3.2 ...

  5. oracle plsql 64位 32位连接未打开 无法解析各种错终极解决方案

    首先取消登陆,进入pl/sql界面-工具-首选项 其次就需要你设置环境变量(加一个ORACLE_HOME和修改原先path里的路径这个不修改也行,主要是让大家知道为什么设置环境变量) 这些设置好,你在 ...

  6. Delphi 重启应用程序(创建Bat文件的Process)

    Delphi 重启应用程序在工程主文件中加入Delay(500); //启动程序时请延时一段时间,否则只能重启一次 procedure RestartApp; var BatchFile: TextF ...

  7. Android 三大图片缓存原理、特性对比

    这是我在 MDCC 上分享的内容(略微改动),也是源码解析第一期发布时介绍的源码解析后续会慢慢做的事. 从总体设计和原理上对几个图片缓存进行对比,没用到他们的朋友也可以了解他们在某些特性上的实现. 上 ...

  8. CSS换行1

    1.你定死表格的宽度,即给表格一个宽度值(是数值,不是百分比)   2.强制不换行 div{//white-space:不换行;normal 默认;nowrap强制在同一行内显示所有文本,直到文本结束 ...

  9. js获取智能机浏览器版本信息

    <!DOCTYPE html><html> <head>        <meta charset="UTF-8">         ...

  10. .NET 多语言支持解决方案 (转)

    asp.net 2.0中的App_GlobalResources可以用来解决本地化的问题,程序会根据浏览器的语言首选项自动判断显示出本地化的界面. 首先在App_GlobalResources新建re ...