iTween插件 简单代码应用

本文介绍了一款名为iTween的Unity3D动画库,它提供了丰富的补间动画功能,如移动、旋转、缩放、颜色变化等,并支持多种缓动效果。通过几个简单的例子展示了如何在Unity3D项目中应用iTween进行动画制作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >




tween缓动类会flash的朋友想必都用过,主要是用来做一些动效,很是方便,在google code上可以下载到不同的版本。目前已出现针对unity3d的tween类代码,不知实用性如何,下面是相关的简单介绍:
iTween for Unity3D类似于flash中的tween,补间动画
iTween for Unity3D可以下载到最新的JavaScript版本和C#版本。
安装
打开一个项目,然后直接把解压后的脚本文件拖动或者复制到图中位置
install.png 
例子1
//在两秒钟内,gameObject从当前位置移动到x为1.7的位置
iTween.moveTo(gameObject, {“x”:1.7, “time”:2});

  1. iTween.moveTo(gameObject,{"x":1.7, "time":2});
复制代码
例子2
private var go : GameObject;
private var cam : GameObject;
function Awake(){
go = gameObject;
cam = camera.main.gameObject;
}
function Start(){
// 0 ~ 1.5秒,go绕y轴从90度旋转0度,并从y=3.5移动到y=0的位置
iTween.rotateFrom(go,{“y”:90, “time”:1.5, “transition”:”easeInExpo”});
iTween.moveFrom(go,{“y”:3.5, “time”:1.5, “transition”:”easeInExpo”});
// 1.5 ~ 1.5 + 0.3秒,当前(r, g, b) -> (3, 0.5, 1.2)
iTween.colorTo(go,{“r”:3, “g”:.5, “b”:1.2, “time”:.3, “delay”:1.5});
// 1.5 ~ 1.5 + 0.8秒
iTween.shake(cam,{“y”:.3, “time”:.8, “delay”:1.5});
// 2.3 ~ 2.3 + 2秒,scaleY: 1 -> 2
iTween.scaleTo(go,{“y”:2, “time”:2, “delay”:2.3});
// 4.3 ~ 4.3 + 1秒,绕x轴旋转0.5 * 360度
iTween.rotateBy(go,{“x”:.5, “delay”:4.3});
// 4.6 ~ 4.6 + 1秒,从当前位置移动到y=1.2
iTween.moveTo(go,{“y”:1.2, “delay”:4.6});
// 5.8 ~ 5.8 + 1秒,从当前位置移动到y=0
iTween.moveTo(go,{“y”:0, “delay”:5.8, “transition”:”easeInExpo”});
// 6.8 ~ 6.8 + 0.8秒
iTween.shake(cam,{“y”:.3, “time”:.8, “delay”:6.8});
// 7.6 ~ 7.6 + 0.5秒,当前(r, g, b) -> (0.165, 0.498, 0.729)
iTween.colorTo(go,{“r”:.165, “g”:.498, “b”:.729, “time”:.5, “delay”:7.6});
// 7.6 ~ 7.6 + 1秒,scaleY: 当前比例 -> 1
iTween.scaleTo(go,{“y”:1, “delay”:7.6});
}
  1. private var go : GameObject;
  2. private var cam : GameObject;
  3. function Awake(){
  4. go = gameObject;
  5. cam = camera.main.gameObject;
  6. }
  7. function Start(){
  8. iTween.rotateFrom(go,{"y":90, "time":1.5, "transition":"easeInExpo"});
  9. iTween.moveFrom(go,{"y":3.5, "time":1.5, "transition":"easeInExpo"});
  10. iTween.colorTo(go,{"r":3, "g":.5, "b":1.2, "time":.3, "delay":1.5});
  11. iTween.shake(cam,{"y":.3, "time":.8, "delay":1.5});
  12. iTween.scaleTo(go,{"y":2, "time":2, "delay":2.3});
  13. iTween.rotateBy(go,{"x":.5, "delay":4.3});
  14. iTween.moveTo(go,{"y":1.2, "delay":4.6});
  15. iTween.moveTo(go,{"y":0, "delay":5.8, "transition":"easeInExpo"});
  16. iTween.shake(cam,{"y":.3, "time":.8, "delay":6.8});
  17. iTween.colorTo(go,{"r":.165, "g":.498, "b":.729, "time":.5, "delay":7.6});
  18. iTween.scaleTo(go,{"y":1, "delay":7.6});
  19. }
复制代码
缓动
easeIn方法控制补间如何从开始到最高速度
easeOut方法控制补间减速并停在目标位置
easeInOut同时控制上述两者
参数意义可参考Flex中的缓动类
Back 类可以定义三个缓动函数,以使用 Flex 效果类实现运动。
Bounce 类可以定义三个缓动函数,以便使用 Flex 效果类实现回弹运动。
Circular 类可以定义三个缓动函数,以使用 Flex 效果类实现 circular 运动。
Cubic Cubic 类可以定义三个缓动函数,以便使用 Flex 效果类实现运动。
Elastic Elastc 类可以定义三个缓动函数,以便使用 Flex 效果类实现运动,其中的运动由按指数方式衰减的正弦波来定义。
Exponential Exponential 类可以定义三个缓动函数,以便使用 Flex 效果类实现运动,其中的运动由按指数方式衰减的正弦波来定义。
Linear Linear 类可以定义缓动函数,以便使用 Flex 效果类实现线性运动。
Quadratic Quadratic 类可以定义三个缓动函数,以使用 Flex 效果类实现 quadratic 运动。
Quartic Quartic 类可以定义三个缓动函数,以使用 Flex 效果类实现运动。
Quintic Quintic 类可以定义三个缓动函数,以便使用 Flex 效果类实现运动。
Sine Sine 类可以定义三个缓动函数,以便使用 Flex 效果类实现运动,其中的运动由正弦波定义。
var addthis_language = ‘en’;

开发者网站:http://itween.pixelplacement.com/



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值