它看起來像我想要通過逐漸減慢時間而不是暫時停止執行來暫停執行,而您想要使用緩動方法。
要設置易於在DOTween通過鏈接這樣就放心了方法調用只需添加:
DG.Tweening.DOTween.To(value => Time.timeScale = value, 1, 0, 0.4f).SetEase(Ease.InCubic));
鏈多個方法這樣在一起,這在運行上的debug.log每天更新電話:
DG.Tweening.DOTween.To(value => Time.timeScale = value, 1, 0, 0.4f).OnUpdate(()=>{ Debug.Log(Time.timeScale); }).SetEase(Ease.InCubic);
運行此代碼顯示Time.timeScale實際上不會爲零,可能是由於浮點精度錯誤;然而,使用的OnUpdate鏈方法Time.timeScale可以分配零一旦得到足夠接近:
DG.Tweening.DOTween.To(value => Time.timeScale = value, 1, 0, 0.4f).OnUpdate(()=>{ if (Time.timeScale < 0.001f) Time.timeScale = 0; }).SetEase(Ease.InCubic);
我希望這有助於!
它似乎工作沒有你的SetEase鏈方法,我的DOTween。 : DG.Tweening.DOTween.To(()=> Time.timeScale,x => Time.timeScale = x,2,0.4f).SetEase(DG.Tweening.Ease.InQuad).SetUpdate(true); –
對不起,在我的例子(糾正)是一個小錯誤。事實仍然是,你必須使用'使用DG.Tweening'來使SetEase()和SetUpdate()方法成爲有效的調用。這是因爲它們是作爲擴展方法實現的。 –
我知道了,這很好。感謝您指出。 –