【Unity3D】【NGUI】Tweens

原文:http://www.tasharen.com/forum/index.php?topic=6760.0

NGUI讨论群:333417608

概述


NGUI自带小而精的Tween库。



可以右键widget之后在Tween菜单选择合适的选项来给它增加tween功能。或者通过NGUI菜单增加。或者直接通过名字来挂tween脚本。

新增的tween默认是active的,所以你点击Play后tween会运行。如果不想运行,勾选掉脚本名字那里的复选框。

所有的tween都继承自同样的基类(UITweener)并且有同样的基本功能。FromTo来表示开始和结束的值。Animation Curve用来与微调这两个值的变化过程。

Duration指定一次动画的时长。Start Delay进行延迟play。秒为单位。

Tween Group可以控制在同一个object上的多个tween触发哪个。播放时指定group ID。

你可以通过指定button上的OnClick部分调用tween的Play()函数。



挂一个UIPlayTween脚本(Attach -> Play Tween Script)实现高级的功能。提供更多的play时选项。 



首先指定Tween Target。这个game object需要至少一个tween,这样才可以触发。Include Child来激活这个object的所有子节点tween。

与上面的tween类似,Tween Group让你选择性的激活tween。

Trigger condition指定什么行为触发tween。Play direction决定play方式。如果target时disabled,你可以选择激活它或者保持原状(这样你故意设置为disabled的object所包含的tween就不会立即播放)。

如果tween正在play,可以选择restart让它立即从头play、继续播放,或者之后之前的play结束的话才play。可以设置tween后disable掉target——用来切换菜单的时候很管用。

最后,如果想在tween结束的时候调用其他功能函数,拖拽一个game object到Notify属性里面,选择想要的函数。和所有的NGUI通知一样,函数需要声明为“public void FuncName (void)”类型。如下:

public void MyNotification ()
{
    Debug.Log(UITweener.current.name + " has finished playing!");
}

小贴士
  • 通过调整Animation Curve成“U”的形状,可以做出一个值的变化是从from到to之后又回到from。
  • 可以在OnFinished里面做Tween的链式触发,直接调用Play()函数。
  • 直接用tween的Begin()函数来创建tween:
    TweenPosition.Begin(tweenGameObject, duration, targetPosition);
类文档

http://tasharen.com/ngui/docs/class_u_i_tweener.html
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值