Не работает движение персонажа по оси y

Не работает движение персонажа по оси y, через transform.position нормально все работает. По оси х все нормально работает.

 using UnityEngine;

public class PigMovement : MonoBehaviour
{
    private Rigidbody2D _rb;
    public Vector2 MoveVector;
    public float speed = 3f;

    void Start()
    {
        _rb = GetComponent<Rigidbody2D>();
    }

    void Update()
    {
        WalkHorizontal();
        WalkVertical();
    }

    private void WalkHorizontal() 
    {
        MoveVector.x = Input.GetAxis("Horizontal");
        _rb.velocity = new Vector2(MoveVector.x * speed, _rb.velocity.y);
    }

    private void WalkVertical()
    {
        MoveVector.y = Input.GetAxis("Vertical");
        _rb.velocity = new Vector2(MoveVector.x, _rb.velocity.y * speed);
    }
}

введите сюда описание изображения


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

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

Это надо в апдейт :

MoveVector.x = Input.GetAxis("Horizontal");
MoveVector.y = Input.GetAxis("Vertical");
_rb.velocity = new Vector2(MoveVector.x * speed, _rb.velocity.y * speed);

Можно сократить, но я не уверен что будет работать ровно также. _rb.velocity = new Vector2(speed, speed);

→ Ссылка