unity---為什么用Time.deltaTime * speed 表示每秒移動的距離的理解


Time.deltaTime:代表時間增量,即從上一幀到當前幀消耗的時間, 這個值是動態變化的。

 

 

dt 表示 deltaTime.

假如 1s渲染10幀,沿X軸方向的移動速度 speed = 10m/s,

那么1s移動的距離為 distance = dt1 * speed + dt2 * speed + dt3 * speed + dt4 * speed + dt5 * speed + dt6 * speed + dt7 * speed + dt8 * speed + dt9  * speed + dt10 * speed

因為: dt1 + dt2 + dt3 + dt4 + dt5 + dt6 + dt7 + dt8 + dt9 + dt10 = 1s;

distance = (dt1 + dt2 + dt3 + dt4 + dt5 + dt6 + dt7 + dt8 + dt9 + dt10) * speed ;

所以:

void update(){

  transform.Translate(Time.deltaTime * speed , 0 , 0);

}

表示每秒移動10m;

 


免責聲明!

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



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