К игровому объекту «Игрок» не прикреплено «Rigidbody», но скрипт пытается получить к нему доступ - PullRequest
0 голосов
/ 10 февраля 2019

Здравствуйте, я просто начал возиться с единством, и это одно из моих первых сообщений об ошибках, которые я получил.И я не могу понять это.

Вот полное сообщение

MissingComponentException: к игровому объекту «Игрок» не прикреплено «Rigidbody», но есть сценарийпытается получить к нему доступ.Возможно, вам нужно добавить Rigidbody к игровому объекту «Игрок».Или ваш сценарий должен проверить, подключен ли компонент, прежде чем использовать его.UnityEngine.Rigidbody.get_velocity () <0x602a2350 + 0x0006a> в: 0 Player.Update () (в активах / сценариях / Player.cs: 25)

https://imgur.com/a/OoYT5FH

А вот мой сценарий игрока в c #

[SerializeField]
private Rigidbody playerBody;
private Vector3 inputVector;
private bool jump;


// Start is called before the first frame update
void Start()
{
    playerBody = GetComponent<Rigidbody>();
}

// Update is called once per frame
void Update()
{
    float speed = 10f;

    inputVector = new Vector3(Input.GetAxis("Horizontal") * speed, playerBody.velocity.y, Input.GetAxis("Vertical") * speed);
    transform.LookAt(transform.position + new Vector3(inputVector.x, 0, inputVector.z));
    if (Input.GetButtonDown("Jump"))
    {
        jump = true;
    }
}


private void FixedUpdate()
{
    playerBody.velocity = inputVector;
    if (jump)
    {
        playerBody.AddForce(Vector3.up * 20f, ForceMode.Impulse);
        jump = false;
    }

}

Примечание:

У меня вчера не было этой проблемы, я закрыл Unity, а сегодня, когда я ее открыл, у меня была эта проблема.Не уверен, что это как-то связано с этим ... кажется странным.

1 Ответ

0 голосов
/ 10 февраля 2019

На скриншоте, который вы разместили, нет компонента Rigidbody.Нажмите на кнопку Add Component и выберите там Rigidbody.

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