rb = GetComponent(); //какой?
rb = GetComponent<Rigidbody2D>(); // надо
moveInput = Input.GetAxis("Horizontal");
считываем инпут в update
https://docs.unity3d.com/6000.1/Documentation/Scri...
ну да ещё и старт с маленькой буквы) переписал
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private Rigidbody2D _rb2d;
[SerializeField] private float _speed=2f;
private float _inputX;
private Vector2 _moveDir;
private void Start()
{
_rb2d = GetComponent<Rigidbody2D>();
}
private void Update()
{
_inputX = Input.GetAxis("Horizontal");
}
private void FixedUpdate()
{
_moveDir = transform.right * _inputX;
//_moveDir.y = _rb2d. linearVelocity.y // падение и прыжек пока выкл
_rb2d.linearVelocity= _moveDir*_speed;
}
}