Unity: переменная rb of Movement не была назначена - PullRequest
0 голосов
/ 28 января 2019

Я новичок в Unity и следую этому учебнику .Ошибка, с которой я сталкиваюсь, когда пытаюсь выполнить код, который должен перемещать игрока влево и вправо:

UnassignedReferenceException: The variable rb of Movement has not been assigned.
You probably need to assign the rb variable of the Movement script in the inspector.
UnityEngine.Rigidbody.AddForce (UnityEngine.Vector3 force, UnityEngine.ForceMode mode) <0x3cc39790 + 0x00062> in <31353b3f2d2e434595cbfe07fbec4072>:0
UnityEngine.Rigidbody.AddForce (System.Single x, System.Single y, System.Single z) (at C:/buildslave/unity/build/Runtime/Dynamics/ScriptBindings/Dynamics.bindings.cs:176)
Movement.FixedUpdate () (at Assets/Movement.cs:17)

Как это исправить, потому что игрок не двигается?

Сценарий движения:

   using UnityEngine;

public class Movement : MonoBehaviour
{

    // This is a reference to the Rigidbody component called "rb"
    public Rigidbody rb;
    public float forwardForce = 2000f;  // Variable that determines the forward force
    public float sidewaysForce = 500f;  // Variable that determines the sideways force

    // We marked this as "Fixed"Update because we
    // are using it to mess with physics.
    void FixedUpdate()
    {
        // Add a forward force
        rb.AddForce(0, 0, forwardForce * Time.deltaTime);

        if (Input.GetKey("d"))  // If the player is pressing the "d" key
        {
            // Add a force to the right
            rb.AddForce(sidewaysForce * Time.deltaTime, 0, 0);
        }

        if (Input.GetKey("a"))  // If the player is pressing the "a" key
        {
            // Add a force to the left
            rb.AddForce(-sidewaysForce * Time.deltaTime, 0, 0);
        }
    }
}

1 Ответ

0 голосов
/ 28 января 2019

Вы ничего не установили на rb.В инспекторе вы можете выбрать твердое тело для работы, нажав «это» (проверьте изображение)

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...