Adding force to a rigidbody not working. Error: UnityEngine.Component does not contain a definition for AddForce and no extension method for AddForce

Adding force to a rigidbody not working. Error: UnityEngine.Component does not contain a definition for AddForce and no extension method for AddForce

这是我的代码:

using UnityEngine;
using System.Collections;

public class PlayerMovement : MonoBehaviour {
    public float moveSpeed;
    public Vector3 input;


    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {
        input = new Vector3(Input.GetAxis ("Horizontal"), 0, Input.GetAxis("Vertical"));
        Rigidbody2D myRigidBody = rigidbody.AddForce (input * moveSpeed);

    }
}

我正在按照 [此处](https://www.youtube.com/watch?v=qwuPiaFU37w&list=PL0MyxI8F9YPGu6Nxjyv0smaaquNIPp4I-&index=1] 和 27:00 左右显示的教程进行操作,他说我不需要引用它,因为它内置于 Unity 中。我尝试添加一个引用而且似乎也无法正常工作。我试过看看我是否在视频中弄乱了名称或复选框等的任何内容,但似乎没有任何问题,我可能在哪里搞砸了,我该如何解决?

我正在使用 Windows 7 和 64 位 Unity。

您使用的是 Unity5 吗?

Unity5 中的 API 发生了变化...例如,现在您必须使用 GetComponent<Rigidbody>()

来访问刚体组件

http://blogs.unity3d.com/2014/06/23/unity5-api-changes-automatic-script-updating/