Unity中關於作用力方式ForceMode的功能注解


功能注解:ForceMode為枚舉類型,用來控制力的作用方式,有4個枚舉成員,在以下舉例中均設剛體質量為m=2.0f,力向量為f=(10.0f,0.0f,0.0f)。

(1)ForceMode.Force:默認方式,使用剛體的質量計算,以每幀間隔時間為單位計算動量。設FixedUpdate()的執行頻率采用系統默認值(即0.02s),,則由動量定理

f•t=m•v

可得:10*0.02=2*v1,從而可得v1=0.1,即每幀剛體在X軸上值增加0.1米,從而可計算得剛體的每秒移動速度為v2=(1/0.02)*v1=5m/s。

(2)ForceMode.Acceleration:在此種作用方式下會忽略剛體的實際質量而采用默認值1.0f,時間間隔以系統幀頻間隔計算(默認值為0.02s),即

f•t=1.0•v

即可得v1= f•t=10*0.02=0.2,即剛體每幀增加0.2米,從而可得剛體的每秒移動速度為v2=(1/0.02)*v1=10m/s。

(3)ForceMode.Impulse:此種方式采用瞬間力作用方式,即把t的值默認為1,不再采用系統的幀頻間隔,即

f•1.0=m•v

即可得v1=f/m=10.0/2.0=5.0,即剛體每幀增加5.0米,從而可得剛體每秒的速度為v2=(1/0.02)*5.0=250m/s。

(4)ForceMode.VelocityChange:此種作用方式下將忽略剛體的實際質量,采用默認質量1.0,同時也忽略系統的實際幀頻間隔,采用默認間隔1.0,即

f•1.0=1.0•v

即可得v1=f=10.0,即剛體每幀沿X軸移動距離為10米,從而可得剛體每秒的速度為v2=(1/0.02)*v1=500m/s。

 

http://blog.csdn.net/quan2008happy/article/details/39299991


免責聲明!

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



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