Unity物體抖動的原因以及解決方法


我們在play時,操作不當會導致物體產生抖動的效果,這會嚴重影響玩家的體驗。

這是因為物體在加上剛體之后有受力,我們希望每一幀受力均勻,也就是希望每秒的受力大小是均勻的,就要在固定物理幀的生命周期中執行。

我們以為update中的Time.deltaTime例,進一步解釋為何要在固定物理幀(FixedUpdate)的生命周期中執行。

這里的Update函數中,首先是用的Time.deltaTime,這個Time.deltaTime會由於電腦性能等差異導致每一幀的時間不同,所以我們要設固定物理幀,使得在Update中執行每一幀所占用的時間固定。

這也告訴我們,以后在用到剛體進行移動且有力的交互時,要把東西放在固定物理幀(FixedUpdate)的生命周期中運行,這樣就不會產生抖動的效果了。

具體的改動只要把Time.deltaTime用Time.fixedDeltaTime替換,並設private void FixedUpdate()函數就OK啦!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM