Unity的NGUI插件篇——入场效果
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秒的时间内,游戏主菜单会匀速自上而下移动的游戏视图的中间。
图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种效果。
图4- 活用“代码自己主动补全”功能。发掘其他的动画效果
本文选自 大学霸 《NGUI使用手冊》 一书