C# 如何使用Unity 5.1.2中的刚体方法?

C# 如何使用Unity 5.1.2中的刚体方法?,c#,unity3d,unityscript,C#,Unity3d,Unityscript,我读了一本书,并尝试使用transform.rigidbody.AddForce()方法。 但本书的统一版本是以前的,所以在我的统一程序中,该方法在刚体上会出错。 在Unity 5.1.2中,如何使用此方法?刚体属性为。因此,使用transform.rigibody访问它们将不再有效 您必须立即使用GetComponent()调用(或其他GetComponent变体之一)获取刚体组件 这就是Unity试图为你们纠正的。但是,它不能,因为您编写的代码一开始不会编译。比如说 using UnityE

我读了一本书,并尝试使用transform.rigidbody.AddForce()方法。
但本书的统一版本是以前的,所以在我的统一程序中,该方法在刚体上会出错。

在Unity 5.1.2中,如何使用此方法?

刚体属性为。因此,使用
transform.rigibody
访问它们将不再有效

您必须立即使用
GetComponent()
调用(或其他GetComponent变体之一)获取刚体组件

这就是Unity试图为你们纠正的。但是,它不能,因为您编写的代码一开始不会编译。比如说

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);
        }
    }
}
包含太多大括号


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

你放了太多的括号。。。这段代码永远不会编译。它应该是
this.transform.rigidbody.AddForce(Vector3.forward*300*Time.deltaTime)unity说“一些脚本有编译错误,这可能会阻止过时的API用法得到更新。在这些错误得到修复后,过时的API更新将自动继续。@T.Kiley哦,我错过了。但是这些代码会出错。@LokiSinclair unity说“API更新失败”。检查以前的控制台消息。“。因此我检查控制台消息,内部错误:更新脚本时检测到递归(程序集索引:4)我使用那个方法,所以Unity不会出错。但是方法不起作用…按向上箭头,但什么都没有。你不能使用它,因为它不编译。否则你不会得到错误。所以,如果你正在使用某个东西,给我们看正在运行的实际代码。我的代码是this.transform.GetComponent().AddForce(Vector3.forward*13000*Time.deltaTime);剩下的刚体组件设置看起来像…?什么是刚体组件设置??
this.transform.rigidbody.AddForce() (Vector3.forward * 300 * Time.deltaTime);