unity3d android 路径动画制作,unity3d动画插件iTween-路径动画的制作

上一节我们讲了iTween路径动画的制作过程。这一节我们看下怎么动态调用它,和创建多个路径的方法,动态切换的方法。   首先打开上次做的项目,选择player物体,在Inspector视图中讲iTween Event下的play Automatically的选框勾掉。因为我们要动态控制动画的播放,不需要它运行时就播放了。这些做完之后就开始写代码了,创建一个C#脚本,命名为Animation control,并写入一下代码:public class Animationcontrol : MonoBehaviour {         public GameObject player;//带路径动画的物体         void OnGUI()         {                   if (GUI.Button(new Rect(10, 70, 50, 30), "play"))                   {             //播放路径动画                            iTweenEvent.GetEvent(player,"firstevent").Play();                   }                   if (GUI.Button(new Rect(100, 70, 50, 30), "stop"))                   {               //停止路径动画                            iTweenEvent.GetEvent(player,"firstevent").Stop();                   }         }}分析上面的脚本。我们用iTweenEvent.GetEvent(player,"firstevent").Play();和iTweenEvent.GetEvent(player,"firstevent").Stop();来控制动画的停止和播放,其中player为带有路径动画的物体,"firstevent"需要与路径动画的名称保持一致。就是Inspector视图中讲iTween Event下的Name的值

0818b9ca8b590ca3270a3433284dd417.png脚本完成后,讲脚本添加到我们的摄像机上。将player拖放到变量player

0818b9ca8b590ca3270a3433284dd417.png运行游戏,点击play按钮动画开始运行,点击stop按钮,动画停止运行。下面我们来看下怎么给一个物体添加多段路径,及切换。选中我们path物体,在给他添加一个ITweenPath。如图:

0818b9ca8b590ca3270a3433284dd417.png给path name命名为second pathParhColor最好与第一个颜色分开的颜色分开Node Count改为5。然后设置关键点。

0818b9ca8b590ca3270a3433284dd417.png制作完成后。在Scene中就出现了两条路径

0818b9ca8b590ca3270a3433284dd417.png选择player物体。在给他添加一个。ITween Event设置如下:勾选path并选择secnd path,勾选time设置时间为20.勾选easetype选择linear设置匀速运动。如图:

0818b9ca8b590ca3270a3433284dd417.png这样我们就给物体player添加了两段路径动画,下面我们就用代码来控制这两段动画代码如下: public class Animationcontrol : MonoBehaviour {         public GameObject player;//带有动画的物体         void OnGUI()         {                   if (GUI.Button(new Rect(10, 70, 50, 30), "firstAN"))                   {            //路径1的起始位置                            player.transform.position =new Vector3(-94.50654f, 17.2556f, 15.62861f);            //播放动画1                            iTweenEvent.GetEvent(player,"firstevent").Play();            //停止动画2                            iTweenEvent.GetEvent(player,"secondevent").Stop();                   }                   if (GUI.Button(new Rect(100, 70, 50, 30), "secondAN"))                   {            //路径2的起始位置                            player.transform.position =new Vector3(-95.15093f, 10f, 1.327053f);            //播放动画2                            iTweenEvent.GetEvent(player,"secondevent").Play();            //停止动画1                            iTweenEvent.GetEvent(player,"firstevent").Stop();                   }         }}添加到游戏物体,运行游戏。这样就算OK了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值