由於在作遊戲暫停的時候一般會使用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