1. 程式人生 > 其它 >Unity如何在Time.timeScale=0暫停遊戲後繼續計時

Unity如何在Time.timeScale=0暫停遊戲後繼續計時

技術標籤:unitytime

Unity如何在Time.timeScale=0暫停遊戲後繼續計時

最近,做一款關於跑酷的小遊戲,在角色死亡後,將遊戲暫停。

Time.timeScale = 0;

然後,想在遊戲暫停後,有5秒的倒計時,讓玩家判斷是否復活,於是我當時想都沒想就直接

ReDieTime -= Time.deltaTime;

當然最後結果是不行的,於是網上查了資料,根據https://zhuanlan.zhihu.com/p/92373997
這篇文章提到的,於是我將我的程式碼改成了

ReDieTime -= Time.fixedUnscaledDeltaTime;

最後成功實現在Time.timeScale=0後,成功倒計時了。

當然也有人說自己寫個函式,把動畫等所有可移動的物體用函式改成不移動、動畫的速度Speed改成0,使得畫面看起來禁止就可以了,而且用Time.timeScale會導致時間混亂等問題,因為我做的是小型專案,對時間的運用也不多,所以其實直接這麼用也沒問題.