DOTween中的Time.Scale

由於在作遊戲暫停的時候一般會使用Time.Scale = 0 ,但是暫停的時候UI若是須要繼續有動畫怎麼辦呢?在DoTween中只須要設置         tweener.SetUpdate(true); 便可。意思就是這個Tween是忽略TimeScale,若是不寫的話 tweener.SetUpdate 是 false。動畫

命名空間: using DG.Tweening;spa

 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的移動類型有不少種,好比勻速運動、加速運動、減速運動,等等。code

代碼中咱們設置了圖片的移動 和 褪色,由於移動的Tween設置了忽略Time.Scale,因此代碼中Time.Scale =0時,圖片的Tween響應了位移操做,而後褪色的Tween卻沒有。orm

相關文章
相關標籤/搜索