Unity Animation

Только второй день осваиваю Unity и возникла такая проблема, что когда просто через скрипт добавляю движения кнопками, то все ок, но когда добавляю именно этому обЪекту, который двигаю, анимацию, то он перестает двигаться, как это можно исправить?

private Rigidbody2D rb;
    private float imput;
    public float speed;
    void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }


    void FixedUpdate()
    {
        imput = Input.GetAxis("Horizontal");
        rb.velocity = new Vector2(imput * speed, rb.velocity.y);
    }

Ответы (1 шт):

Автор решения: Annett

Попробуйте

imput = Input.GetAxis("Horizontal");

перенести в void Update() {} и для перемещения использовать функцию MovePosition. Для общего понимания как работать с 2D в Unity могу порекомендовать пройти этот курс

Там пройдете основы работы с перемещением и анимацией и возможно поймете, почему текущий код не работает в связке с анимацией. Этот курс от самой Unity на их обучающей площадке Unity Learn Premium (недавно доступ стал абсолютно бесплатным).

→ Ссылка