【Unity】Unity插件DOTween----基本用法介绍

1.命名前缀

DO: 动作操作前缀。例如:DoMove(),DoKill()等等。
Set:动画设置操作前缀。例如:SetLoop(),SetEase()等等。
On: 响应回调事件前缀。例如: OnStart(),OnComplete()等等。

2.给变量添加动画

给类型变量var添加一个动画,参数 {时间:t(float), 目标值: target()}
Dotween.To(()=>var,x=>var=x,target,t);
此表达式中前两个参数是lambda表达式(见往期文章:c#中 =>的使用(Lambda表达式))

public class Nums : MonoBehaviour {  
    public float num = 3;  
    void Start () {  
        DOTween.To(() => num, x => num = x, 5, 1); // 给变量num添加动画,动画效果为1秒后num数字渐变到5  
    }  
}  

变量类型可以为int、Vector3、Color等等.但是注意变量 var 类型必须跟目标值 target 的类型一致。

3.给GameObject添加动画

Dotween 在transform等许多组件新添了一些动画函数,用于该组件动画控制。
位置动画:

public class Move : MonoBehaviour {  
    void Start () {  
        transform.DOMove(new Vector3(10, 10, 10), 5,true);//给物体添加动画,5秒移动到(10,10,10).第三个参数为true时,数值渐变过程皆为整数  
    }  
}  

旋转动画:

public class Rota : MonoBehaviour {  
    void Start () {  
        transform.DORotate(new Vector3(0, 0, 360), 5);//旋转动画  
    }  
}  

大小动画:

public class Scale : MonoBehaviour {  
    void Start () {  
        transform.DOScale(4,5);  //大小动画  
    }  
}  

4.动画的基本设置

DOTween.defaultAutoKill:(全局操作) 当该值为真时,之后创建的动画当其播放完毕之后会自动被销毁。
DOTween.defaultAutoPlay:(全局操作) 当该值为真时,之后创建的动画会自动播放。
DOTween.defaultEaseType:(全局操作) 该值为创建动画时候默认的动画曲线。
DOTween.defaultLoopType:(全局操作) 该值为创建动画时候默认的循环模式。
tweener.SetAs():(局部操作) 参数为Tween或者TweenParams.用于设置该动画相关属性。
tweener.SetAutoKill():(局部操作) 参数为true或者false.用于设置该动画是否自动销毁。
tweener.SetId():(局部操作) 参数为obj.用于设置该动画id。
tweener.SetLoop():(局部操作)参数为float&LoopType.用于设置该动画循环次数和循环类型,次数为-1表示无限循环。

5.动画的播放操作

tweener.From():参数为true或者false。表示运动为相对运动还是绝对运动。并且动画效果为tweener的逆动画
tweener.Pause():动画播放暂停。
tweener.Play():动画继续播放。
tweener.Flip():动画播放中执行,动画原轨迹运动到起始点,当动画回到起始状态时动画结束。
tweener.Complete():动画播放中执行,物体立即运动到动画末尾状态,动画结束。
tweener.Goto():参数为float,表示动画立即进入到时间为t时候的状态。
tweener.PlayForward():动画顺序播放。
tweener.PlayBackwards():动画倒序播放。
tweener.TogglePause():顺序/倒序播放。该方法会自动识别物体当前状态,如果在起始点就顺序,否则就逆序
tweener.ReStart():动画重新开始播放。
tweener.Kill():立即销毁该动画。

6.动画的回调函数

tweener.OnComplete():动画结束时触发。
tweener.OnPlay():动画开始播放时触发。
tweener.OnStart():动画被创建时触发。
tweener.OnKill():动画被销毁时触发。
选取了几个常用的,至于其余的可以查看DOTween的官网介绍。

7.动画的可视化创建

给要添加动画的物体上添加DOTweenAnimation组件。在组件面板上即可选择动画类型、设置动画属性。

  • 6
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以回答你关于UnityDOTween插件的问题。 首先,DOTween插件是用于制作Tween动画的工具,可以轻松地创建动画效果。下面是回答你的问题: 1. 设置参数 在使用DOTween插件创建Tween动画时,可以设置很多不同的参数,如持续时间、延迟时间、循环次数等。这些参数可以通过Tween对象的方法进行设置,例如: ```csharp //创建一个Tween对象 var tween = transform.DOMove(Vector3.zero, 1f); //设置Tween对象的参数 tween.SetDelay(0.5f); //设置延迟时间为0.5秒 tween.SetLoops(-1, LoopType.Yoyo); //设置无限循环,并且在每次循环结束时反转Tween对象的运动方向 ``` 2. Ease曲线 Ease曲线是用于控制Tween动画的运动方式,可以使Tween对象的运动变得更加平滑或者更加突然。DOTween插件提供了很多内置的Ease曲线,也可以自定义Ease曲线。在创建Tween对象时,可以通过传递Ease曲线的枚举值或者自定义的Ease曲线函数来设置Tween对象的Ease曲线,例如: ```csharp //使用Ease枚举值设置Tween对象的Ease曲线 var tween = transform.DOMoveX(5f, 1f).SetEase(Ease.InOutQuad); //设置Tween对象的Ease曲线为InOutQuad //使用自定义Ease曲线函数设置Tween对象的Ease曲线 var tween = transform.DOMoveX(5f, 1f).SetEase((t) => Mathf.Lerp(0f, 1f, t)); //设置Tween对象的Ease曲线为自定义的线性插值函数 ``` 3. 回调函数 回调函数是在Tween动画运动到指定位置或者完成一次循环时调用的函数。可以通过Tween对象的OnComplete、OnStepComplete、OnKill等方法设置Tween对象完成时需要调用的回调函数,例如: ```csharp //设置Tween对象完成时需要调用的回调函数 var tween = transform.DOMoveX(5f, 1f).OnComplete(() => Debug.Log("Tween completed!")); //设置Tween对象完成时需要输出日志信息 //设置Tween对象每次循环完成时需要调用的回调函数 var tween = transform.DOMoveX(5f, 1f).SetLoops(2).OnStepComplete(() => Debug.Log("Tween loop completed!")); //设置Tween对象每次循环完成时需要输出日志信息 ``` 4. 动画控制函数 动画控制函数是用于控制Tween动画的播放、暂停、重置等操作的函数。可以通过Tween对象的Play、Pause、Rewind等方法进行动画控制,例如: ```csharp //播放Tween动画 var tween = transform.DOMoveX(5f, 1f); tween.Play(); //播放Tween动画 //暂停Tween动画 var tween = transform.DOMoveX(5f, 1f); tween.Pause(); //暂停Tween动画 //重置Tween动画 var tween = transform.DOMoveX(5f, 1f); tween.Rewind(); //重置Tween动画 ``` 以上就是关于DOTween插件设置参数、Ease曲线、回调函数、动画控制函数的介绍,希望能够对你有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值