功能注解: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