unity中Rigidbody添加力的幾種方式


枚舉ForceMode 的值:

 

 

Force                  添加一個可持續力到剛體,使用它的質量。

Acceleration        添加一個可持續加速度到剛體,忽略它的質量。

Impulse               添加一個瞬間沖擊力到剛體,使用它的質量。

VelocityChange   添加一個瞬間速度變化給剛體,忽略它的質量。

 

Rigidbody.AddForce

添加一個力到剛體

Rigidbody.AddRelativeForce

添加一個力到剛體,相對於剛體自身的坐標系統。

Rigidbody.AddTorque

在剛體上增加一個力矩(扭矩)。

Rigidbody.AddRelativeTorque   //添加相對力矩

添加一個力矩到剛體,相對於剛體自身的坐標系統。

Rigidbody.AddForceAtPosition  在物體表面位置上(施加)添加力

在position位置應用force力。作為結果這個將在這個物體上應用一個力矩和力。為了效果的真實性,position的位置應在剛體的表面

Rigidbody. AddExplosionForce 

應用一個力到剛體來模擬爆炸效果。爆炸力將隨着到剛體的距離線形衰減。

explosionForce 爆破力

explosionPosition 爆炸位置

explosionRadius 爆破半徑,為0時表示無窮大

upwardsModifier 可以理解為爆炸產生的向上沖擊波的衰減值。值越大,威力越小。

 

獲取速度

Rigidbody.GetRelativePointVelocity

獲取剛體上的點相對本地坐標系的速度。獲取的速度有考慮剛體的角速度。

Rigidbody.GetPointVelocity 

獲取剛體上的點相對世界坐標系的速度。獲取的速度有考慮剛體的角速度。

 

休眠

Rigidbody.Sleep();

強制一個剛體休眠至少一幀。剛體休眠有利於性能優化

Rigidbody.IsSleeping();

判斷剛體是不是在休眠

Rigidbody.WakeUp();

強制喚醒一個剛體

Rigidbody.velocity=

給剛體賦值指定的速度,一般較適用於需要對使用剛體的物體進行細微的速度控制.

Rigidbody.MovePosition();

讓剛體移動至指定位置

 

(整理一下,方便記)

如果存在哪里不對的地方,多多指出,謝謝大家包涵  ! ! !

 


免責聲明!

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



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