[英]Move a 3d rigidbody to its facing direction in Unity3d
我有以下場景:
我希望機器人朝各個方向移動,所以我嘗試:
rigidbody.AddForce(rigidbody.transform.TransformDirection(Vector3.up* speed));
機器人像跳躍一樣向上移動。
我試過了:
rigidbody.AddForce(rigidbody.transform.TransformDirection(Vector3.forward* speed));
但是機器人摔倒了
知道我該如何解決嗎?
他最有可能摔倒,因為他因物理原因而摔倒。
您可以給他的剛體旋轉約束以凍結他在X軸和Z軸上的旋轉-這樣他仍然可以轉向面對一個方向,但是他不能跌倒。 使用您的“轉發”代碼移動他。
這些約束也可以從代碼中訪問,因此,例如,如果他被殺死,則可以將其關閉,因此他跌倒了:
rigidbody.constraints = RigidbodyConstraints.None;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.