DOTween中的Time.Scale

Posted AaronBlog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DOTween中的Time.Scale相关的知识,希望对你有一定的参考价值。

因为在做游戏暂停的时候通常会使用Time.Scale = 0 ,可是暂停的时候UI如果需要继续有动画怎么办呢?在DoTween中只需要设置         tweener.SetUpdate(true); 即可。意思就是这个Tween是忽略TimeScale,如果不写的话 tweener.SetUpdate 是 false。

命名空间: using DG.Tweening;

 1 void Start () 
 2     {
 3         //让TimeScale = 0
 4         Time.timeScale = 0;
 5  
 6         Image image = transform.Find("Image").GetComponent<Image>();
 7         //调用DOmove方法来让图片移动
 8         Tweener tweener = image.rectTransform.DOMove(Vector3.zero,1f);
 9         //设置这个Tween不受Time.scale影响
10         tweener.SetUpdate(true);
11         //设置移动类型
12         tweener.SetEase(Ease.Linear);
13         tweener.onComplete = delegate() {
14             Debug.Log("移动完毕事件");
15         };
16         image.material.DOFade(0,1f).onComplete = delegate() {
17             Debug.Log("褪色完毕事件");
18         };
19     }

Tween的移动类型有很多种,比如匀速运动、加速运动、减速运动,等等。

代码中我们设置了图片的移动 和 褪色,因为移动的Tween设置了忽略Time.Scale,所以代码中Time.Scale =0时,图片的Tween响应了位移操作,然后褪色的Tween却没有。

以上是关于DOTween中的Time.Scale的主要内容,如果未能解决你的问题,请参考以下文章

DoTween插件的基本操作总结

DoTween动画中的几种函数。

Unity延迟的4种写法含DoTween的一些代码

Unity 动画插件 DOTween 的简单使用

unity DOtween制作连续动画和部分小坑

关于Unity中DOTween插件的使用(专题一)