如何在Unity 5.1.2中使用刚体方法?

时间:2015-08-11 14:01:03

标签: c# unity3d unityscript

using UnityEngine;
using System.Collections;
public class RigidBodyScript : MonoBehaviour {
    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {
        if (Input.GetKey (KeyCode.UpArrow)) {
            this.transform.rigidbody.AddForce() (
                Vector3.forward * 300 * Time.deltaTime);
        }
    }
}

我读了一本书并尝试使用transform.rigidbody.AddForce()方法 但是书的统一版本是先前的,所以在我的统一程序中,这种方法在僵硬的身体上犯了错误 在Unity 5.1.2中,如何使用这种方法?

1 个答案:

答案 0 :(得分:1)

rigidbody属性为deprecated in recent versions of Unity。因此,使用transform.rigibody访问它们将不再有效。

您现在必须使用GetComponent<Rigidbody>()调用来获取Rigidbody组件(或其他GetComponent变种之一)。

Unity正在努力为您解决这个问题。但是,鉴于您编写的代码不会首先编译,因此无法进行编译。例如

this.transform.rigidbody.AddForce() (Vector3.forward * 300 * Time.deltaTime);

包含太多大括号。

这就是它告诉你的:“我正在尝试升级你的代码,但我不能”。